BoardGameGeek Scraper
Pricing
from $3.00 / 1,000 results
BoardGameGeek Scraper
Scrape BoardGameGeek, ratings, mechanics, categories, designers, publishers, weights, ranks. Search games, fetch by ID, browse the hot list, look up user profiles. No login required.
Pricing
from $3.00 / 1,000 results
Rating
5.0
(8)
Developer
Crawler Bros
Maintained by CommunityActor stats
8
Bookmarked
2
Total users
1
Monthly active users
8 days ago
Last modified
Categories
Share
Scrape BoardGameGeek — the world's largest tabletop-gaming database — for board game ratings, ranks, mechanics, categories, designers, publishers, weights (complexity), expansions, ownership counts, and user profiles. No login, cookies, proxy, or API key required. Free-plan ready.
What you get
- Game ratings & ranks — average rating, Bayesian (geek) rating, overall BGG rank, plus sub-category ranks (Strategy, Family, Thematic, etc.)
- Mechanics & categories — every BGG-tagged mechanic and theme category per game
- Credits — designers, artists, publishers, families, honors / awards
- Game flow — player counts, playing time, recommended age, language dependence, community-voted best player counts
- Community signal — owned / wanting / wishing / commentsCount / number of plays
- Complexity — average game weight (1–5) and vote count
- Expansions, integrations, reimplementations, accessories — with full BGG IDs and URLs
- Images — high-res cover image + thumbnail, both hosted on cf.geekdo-images.com (no Referer required)
- User profiles — username, real name (when public), location, registration date, supporter years, avatar
Modes
| Mode | What it does |
|---|---|
hot | Pull the current BGG Hot List (top ~50 games) with full game details |
search | Free-text keyword search → enriched game records |
byIds | Look up specific games by BGG ID (or full URL) |
userProfile | Fetch a BGG user's public profile |
Input
| Input | Type | Required | Default | Description |
|---|---|---|---|---|
mode | enum | yes | hot | One of hot, search, byIds, userProfile |
searchQuery | string | mode=search | catan | Free-text keyword |
gameIds | string[] | mode=byIds | ["174430", "161936"] | Numeric IDs or BGG URLs |
username | string | mode=userProfile | Aldie | BGG username |
enrichHot | bool | no | true | When mode=hot, fetch full detail per game (slower; complete records) |
gameType | enum | no | – | boardgame, boardgameexpansion, boardgameaccessory, videogame, rpgitem, rpgissue |
minYear / maxYear | int | no | – | Year-published bounds |
minRating / maxRating | int | no | – | Average rating bounds (0–10) |
minPlayers / maxPlayers | int | no | – | Player-count overlap filter |
minPlaytime / maxPlaytime | int | no | – | Playing-time bounds (minutes) |
minAge | int | no | – | Minimum recommended age |
categories | string[] | no | – | Curated BGG Categories — genre tags like Wargame, Fantasy, Abstract Strategy. Note: BGG Families (e.g. Strategy Games, Cooperative Games) are not Categories; use searchQuery for Family-style filtering |
mechanics | string[] | no | – | Curated BGG mechanics (e.g. Worker Placement, Deck, Bag, and Pool Building) |
containsKeyword | string | no | – | Substring filter against name, alternate names, description |
maxItems | int | no | 20 | Hard cap on emitted records (1–1000) |
Output
Each emitted game record contains (omit-empty — only populated fields are present):
{"id": 174430,"name": "Gloomhaven","alternateNames": ["クルームヘヴン", "Gloomhaven (Korean)", "..."],"yearPublished": 2017,"gameType": "boardgame","description": "Gloomhaven is a game of Euro-inspired tactical combat in a persistent world...","shortDescription": "Vanquish monsters with strategic cardplay. Fame and fortune await...","image": "https://cf.geekdo-images.com/.../pic2437871.jpg","thumbnail": "https://cf.geekdo-images.com/.../pic2437871.jpg","minPlayers": 1,"maxPlayers": 4,"playingTime": 120,"minPlayTime": 60,"maxPlayTime": 120,"minAge": 14,"communityMinAge": "12+","languageDependence": "Extensive use of text - massive conversion needed to be playable","bestPlayerCounts": [2],"recommendedPlayerCounts": [1, 2, 3, 4],"categories": ["Adventure", "Exploration", "Fantasy", "Fighting", "Miniatures"],"mechanics": ["Action Queue", "Action Retrieval", "Campaign / Battle Card Driven", "..."],"designers": ["Isaac Childres"],"artists": ["Alexandr Elichev", "..."],"publishers": ["Cephalofair Games", "Albi", "..."],"families": ["Components: Miniatures", "Crowdfunding: Kickstarter", "..."],"subdomains": ["Thematic Games", "Strategy Games"],"expansions": [{"id": 230985, "name": "Gloomhaven: Forgotten Circles", "url": "https://boardgamegeek.com/boardgameexpansion/230985/..."}],"rating": 8.55,"bayesRating": 8.39,"ratingsCount": 53000,"ratingStdDev": 1.45,"weight": 3.88,"weightCount": 11000,"rank": 1,"ranks": [{"category": "Board Game Rank", "rank": 1, "bayesRating": 8.39},{"category": "Strategy Game Rank", "rank": 1, "bayesRating": 8.35},{"category": "Thematic Rank", "rank": 1, "bayesRating": 8.46}],"ownedCount": 92000,"tradingCount": 1100,"wantingCount": 500,"wishingCount": 12500,"commentsCount": 8200,"playsCount": 250000,"fansCount": 4200,"geekListsCount": 8900,"honors": ["2017 Golden Geek Best Thematic Board Game Winner", "..."],"gameUrl": "https://boardgamegeek.com/boardgame/174430","officialWebsite": "https://www.cephalofair.com/","recordType": "game","scrapedAt": "2026-05-21T07:30:00+00:00"}
User-profile records (mode=userProfile) include:
{"userId": 688,"username": "Aldie","firstName": "Scott","lastName": "Alden","city": "Dallas","state": "TX","country": "United States","countryCode": "US","registrationDate": "1999-12-01","avatar": "https://cf.geekdo-images.com/avatars/.../avatar_id216013.gif","supporterYears": [2004, 2005, 2006, ..., 2026],"adminBadges": ["boardgame", "puzzle", "rpg", "videogame"],"profileUrl": "https://boardgamegeek.com/user/Aldie","recordType": "user","scrapedAt": "2026-05-21T07:30:00+00:00"}
FAQ
Does this require an API key, cookies, or login?
No. BGG's public JSON API is open and free.
Does it work on the Apify free plan?
Yes. No paid proxies or add-ons required.
How fast is it?
About 1–2 games per second (BGG asks consumers to be polite). 20 hot games with full detail finish in ~30 seconds.
Can I scrape a user's game collection?
Not in this version. BGG's classic XML collection endpoint currently returns 401 from non-residential IPs (Cloudflare gating). User profile metadata (mode=userProfile) works fine.
How are ranks structured?
The rank field is the overall Board Game Rank. The ranks array also includes sub-category ranks (Strategy, Family, Thematic, Customizable, Party, Children's, Abstract, Wargame, etc.) when available.
Are images permanent?
BGG hosts images on cf.geekdo-images.com, an open CDN with no Referer/cookie requirements. The URLs are stable and customer-safe.
Will alternate-language names be included?
Yes — up to 50 are emitted in alternateNames.
How are filters combined?
All filters are AND-ed. categories and mechanics use match-any semantics — at least one option must match. A game missing a filter-relevant field is treated as pass-through (not excluded) for the missing field.
Why does "Strategy Games" get rejected from categories?
BGG distinguishes Categories (genre tags like Wargame, Abstract Strategy, Card Game) from Families (such as Strategy Games, Card Drafting, Cooperative Games). The categories input only accepts canonical Categories from the dropdown. To filter by Family-style genres, leave categories empty and use searchQuery instead.
Data Source
This actor reads from the public boardgamegeek.com/api/geekitems and api.geekdo.com/api/{dynamicinfo,hotness,users,geekitems} JSON endpoints — the same endpoints powering the BGG website. We deliberately do not use the older xmlapi2/* endpoints, which were restricted to authenticated/residential traffic in 2025.
Pricing
Pricing is configured in the Apify UI (not in code). Typical runs are inexpensive — the JSON API is fast and the actor uses ~1024 MB memory.