GOG Game Reviews Scraper
Pricing
Pay per event
GOG Game Reviews Scraper
🎮 Extract public GOG reviews with ratings, text, language, reviewer details, helpful votes, verified-owner labels, dates, and game-level rating context.
Pricing
Pay per event
Rating
0.0
(0)
Developer
Stas Persiianenko
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
2 days ago
Last modified
Categories
Share
Collect public GOG game reviews as clean, structured records for sentiment research, reputation monitoring, localization, and market analysis.
The actor accepts GOG product IDs and public game URLs. It resolves each game, paginates its public review feed, applies your filters, and exports one row per review.
No GOG login, cookie, browser, proxy, or external API key is required.
What does GOG Game Reviews Scraper do?
GOG Game Reviews Scraper extracts individual reviews from public GOG review services.
Each record can include:
- 🎮 game title, product ID, slug, and URL
- ⭐ numeric rating and game-level rating averages
- 💬 review title, review text, and language
- 👤 reviewer username, avatar, and public profile counters
- 👍 upvotes, downvotes, and net helpful votes
- ✅ GOG verified-owner labels
- 📅 creation and update dates
- 📊 total review and rating counts
Use one game for a focused export or process several games in a single run.
Who is it for?
Game studios and publishers
Track feedback on your catalog, identify recurring complaints, and compare reception across releases.
Market researchers
Build review corpora for competitive analysis, category research, and rating benchmarks.
Localization teams
Filter by language to find translation issues, cultural feedback, and market-specific themes.
Reputation and support teams
Monitor low ratings and recent verified-owner comments so urgent feedback reaches the right team.
Data and AI teams
Export consistent review rows for dashboards, classifiers, embeddings, topic models, or retrieval systems.
Why use this GOG reviews extractor?
- Structured output: skip fragile copy-and-paste workflows.
- Flexible targeting: use product IDs, game URLs, or both.
- Useful filters: select language, rating, date range, and verified ownership.
- Batch support: collect reviews from multiple GOG games together.
- Safe pagination: per-game and global limits keep runs predictable.
- API-first reliability: direct public JSON avoids browser overhead.
- Scheduled monitoring: rerun the same input daily or weekly.
- Export anywhere: download JSON, CSV, Excel, XML, or RSS from Apify.
What GOG review data can I extract?
| Field | Type | Description |
|---|---|---|
productId | string | Numeric GOG product identifier |
productTitle | string | Public game title |
productSlug | string | GOG product slug |
productUrl | URL | Public GOG game page |
reviewId | string | Stable review identifier |
reviewTitle | string | Review headline |
reviewText | string | Full public review text |
language | string | Review locale such as en-US |
rating | number | Rating from 1 to 5 |
reviewerUsername | string | Public GOG username |
reviewerGamesOwned | number | Public game counter |
reviewerReviewCount | number | Public review counter |
upvotes | number | Helpful upvotes |
downvotes | number | Downvotes |
verifiedOwner | boolean | Whether GOG labels the reviewer as an owner |
createdAt | date | Review creation timestamp |
overallAverageRating | number | Current game average |
totalReviewCount | number | Current public review count |
The complete dataset also contains labels, status, avatar URL, update time, source URL, filtered average, and scrape timestamp.
How much does it cost to scrape GOG game reviews?
This actor uses pay-per-event pricing.
A small one-time start event covers run initialization. A result event is charged only for each review saved to your dataset.
The current pricing is:
| Event | Free | Starter / Bronze | Scale / Silver | Business / Gold | Platinum | Diamond |
|---|---|---|---|---|---|---|
| Run start | $0.005 | $0.005 | $0.005 | $0.005 | $0.005 | $0.005 |
| Review saved | $0.00003293 | $0.000028634 | $0.000022335 | $0.000017181 | $0.000011454 | $0.00001 |
Higher Apify plans receive lower per-review prices. The Console shows the exact estimate before you start a run.
At the Free-tier event price, a 100-review extraction costs about $0.0083: the $0.005 start plus 100 × $0.00003293. This excludes any separate Apify plan charges that apply to your account.
Filters do not create paid rows for discarded reviews.
How to scrape GOG reviews in 5 steps
- Open the actor in Apify Console.
- Add one or more numeric product IDs or GOG game URLs.
- Choose review limits and optional filters.
- Click Start and wait for the dataset link.
- Export results or connect the dataset to your workflow.
For a first run, keep the prefilled Witcher 3 product ID and the 10-review limit.
Input parameters
| Parameter | Type | Default | Purpose |
|---|---|---|---|
productIds | array | sample ID | Numeric GOG product IDs |
productUrls | array | empty | Public GOG /game/ URLs |
maxReviewsPerGame | integer | 100 | Maximum matching rows per game |
maxReviewsTotal | integer | 1000 | Global maximum across games |
languages | array | all | Locale codes such as en or de-DE |
ratings | array | all | Whole-number ratings from 1 to 5 |
verifiedOwnersOnly | boolean | false | Require GOG's verified-owner label |
startDate | string | empty | Inclusive YYYY-MM-DD start date |
endDate | string | empty | Inclusive YYYY-MM-DD end date |
concurrency | integer | 3 | Games processed in parallel |
Duplicate product IDs are processed once.
A base language such as en matches locales such as en-US.
Input examples
Collect recent review records for one game
{"productIds": ["1207664663"],"maxReviewsPerGame": 25,"maxReviewsTotal": 25}
Collect low-rating English reviews
{"productUrls": ["https://www.gog.com/en/game/the_witcher_3_wild_hunt"],"languages": ["en"],"ratings": [1, 2],"verifiedOwnersOnly": true,"maxReviewsPerGame": 100,"maxReviewsTotal": 100}
Monitor a date range across games
{"productIds": ["1207664663", "1207664643"],"startDate": "2026-07-01","endDate": "2026-07-31","maxReviewsPerGame": 250,"maxReviewsTotal": 500,"concurrency": 2}
Output example
{"productId": "1207664663","productTitle": "The Witcher 3: Wild Hunt","reviewId": "dd8fe86c-8335-11f1-9a01-8239e0b1b96a","reviewTitle": "Bien!!!! mais","reviewText": "Il manque un petit quelque chose...","language": "fr-FR","rating": 4,"reviewerUsername": "Shademaster","reviewerGamesOwned": 3,"reviewerReviewCount": 1,"upvotes": 0,"downvotes": 0,"verifiedOwner": true,"createdAt": "2026-07-19T05:51:19.000Z","overallAverageRating": 4.8,"totalReviewCount": 1645}
Actual counts and reviews change as GOG users add feedback.
Filtering behavior
Language matching is case-insensitive.
Supplying en matches en, en-US, and other English locale variants.
Ratings must be whole numbers from 1 through 5.
Date boundaries are inclusive and interpreted as UTC calendar days.
When a review date cannot be parsed, that review is excluded from date-filtered runs rather than leaking through the filter.
verifiedOwnersOnly checks GOG's public verified_owner label.
The actor keeps paging until it saves the requested number of matching reviews or reaches the end of the source.
Tips for reliable review collection
- 🎯 Prefer product IDs when you already know them.
- 🔗 Use full public GOG game URLs, not checkout or account URLs.
- 📉 Start with 10–100 reviews when designing a workflow.
- 🌍 Use base language codes for broad locale coverage.
- 📅 Set
startDateon scheduled runs to reduce irrelevant history. - 🧪 Review a sample before feeding text into automated sentiment models.
- ⚙️ Keep concurrency at 3 or lower unless processing a large catalog.
- 🧾 Store the stable
reviewIdwhen deduplicating scheduled exports.
Scheduling and monitoring workflows
Use an Apify schedule to run the same input daily, weekly, or monthly.
A practical reputation workflow is:
- Select the games to monitor.
- Filter for ratings 1 and 2.
- Set a recent start date.
- Run on a daily schedule.
- Send the dataset to Slack, email, a webhook, or your warehouse.
- Deduplicate downstream records by
reviewId.
For localization monitoring, create separate tasks for each language group.
Integrations
Google Sheets
Send each finished dataset to a spreadsheet for triage, tagging, and stakeholder comments.
Slack or Microsoft Teams
Trigger a webhook when new low-rating verified-owner reviews appear.
Make and Zapier
Start the actor from an automation, wait for completion, and route reviews by game, rating, or language.
Snowflake, BigQuery, and PostgreSQL
Export structured records into a warehouse for longitudinal game and sentiment reporting.
LLM and NLP pipelines
Use reviewText, rating, and language for classification, summarization, topic extraction, or embeddings.
Use the Apify API with JavaScript
import { ApifyClient } from 'apify-client';const client = new ApifyClient({ token: process.env.APIFY_TOKEN });const run = await client.actor('automation-lab/gog-game-reviews-scraper').call({productIds: ['1207664663'],maxReviewsPerGame: 50,maxReviewsTotal: 50,});const { items } = await client.dataset(run.defaultDatasetId).listItems();console.log(items);
Use the Apify API with Python
from apify_client import ApifyClientclient = ApifyClient(token='YOUR_APIFY_TOKEN')run = client.actor('automation-lab/gog-game-reviews-scraper').call(run_input={'productIds': ['1207664663'],'ratings': [1, 2],'maxReviewsPerGame': 50,'maxReviewsTotal': 50,})items = client.dataset(run['defaultDatasetId']).list_items().itemsprint(items)
Use the Apify API with cURL
curl -X POST \"https://api.apify.com/v2/acts/automation-lab~gog-game-reviews-scraper/runs?token=$APIFY_TOKEN" \-H "Content-Type: application/json" \-d '{"productIds":["1207664663"],"maxReviewsPerGame":25,"maxReviewsTotal":25}'
Use the returned run and dataset IDs to fetch status and output.
Use GOG reviews through MCP
Connect the actor to AI assistants through Apify's MCP server.
Claude Code
$claude mcp add --transport http apify "https://mcp.apify.com?tools=automation-lab/gog-game-reviews-scraper"
Claude Desktop, Cursor, or VS Code
{"mcpServers": {"apify": {"url": "https://mcp.apify.com?tools=automation-lab/gog-game-reviews-scraper"}}}
Example prompts:
- “Collect 50 English reviews for GOG product 1207664663.”
- “Find verified-owner one-star and two-star reviews for this GOG game URL.”
- “Summarize repeated complaints in the resulting GOG reviews dataset.”
Data quality and limitations
This actor reads public data supplied by GOG services.
Review availability, aggregate values, and labels can change over time.
A GOG game URL may point to a specific edition whose product ID differs from another edition with a similar title.
The actor reports the resolved product ID so you can reproduce the same scope.
Product metadata is best-effort; review extraction can continue by ID if optional metadata is temporarily unavailable.
The public GOG endpoints are undocumented, so upstream response changes may require an actor update.
Is scraping GOG reviews legal?
Public review data can still contain personal data such as usernames and user-written text.
Use the actor only for lawful purposes and follow applicable privacy, copyright, database, and platform rules.
Do not use output for harassment, identity profiling, spam, or decisions that unfairly affect individuals.
Respect deletion requests and retention requirements that apply to your organization.
You are responsible for your inputs, processing purpose, and downstream use.
Troubleshooting
Why did my GOG URL not resolve?
Use a public URL containing /game/, such as https://www.gog.com/en/game/the_witcher_3_wild_hunt.
Checkout, account, support, and forum URLs are intentionally outside the accepted scope.
If resolution still fails, provide the numeric product ID shown in prior output or GOG's public product data.
Why are there fewer rows than my limit?
Your filters may match fewer public reviews, the game may have fewer reviews, or the global limit may have been reached first.
The actor does not duplicate rows merely to fill a requested limit.
Why did the run fail instead of returning an empty dataset?
Invalid inputs and total upstream extraction failures fail closed. This prevents scheduled workflows from treating broken extraction as a valid “no reviews” signal.
Can I scrape private account data?
No. The actor intentionally supports only anonymous public game and review surfaces.
Frequently asked questions
Can I process several games?
Yes. Add multiple IDs or URLs. Duplicate resolved IDs are removed.
Can I get only English reviews?
Yes. Set languages to ["en"].
Can I get only verified purchases?
Use verifiedOwnersOnly: true. The output reflects GOG's public verified_owner label.
Can I scrape all reviews?
Raise both limits according to the expected source size. For large backfills, split catalogs into manageable tasks.
Does this actor use a proxy?
No. Version 0.1 uses anonymous public HTTP and JSON routes directly.
Can I export CSV or Excel?
Yes. Open the dataset and select the export format in Apify Console.
Related scrapers
- Steam Game Reviews Scraper — collect individual Steam reviews and author context.
- Steam Curator Reviews Scraper — collect curator recommendations and review text.
- Steam Store Scraper — collect game catalog and product metadata.
These automation-lab actors can complement GOG reviews in cross-store game research.
Support
For reproducible support, include:
- the run URL or run ID
- a sanitized copy of the input
- the expected product or filter behavior
- the first relevant warning or error from the log
Do not include Apify tokens, GOG credentials, or other secrets.