Steam Store Game Reviews Full History Scraper
Pricing
from $0.50 / 1,000 record scrapeds
Steam Store Game Reviews Full History Scraper
Scrape the full review history for any Steam game. Extracts ratings, review text, playtime, and purchase context via Steam cursor-paginated JSON API. Supports language filters and exhausts all pages for titles with 100k+ reviews. Ideal for studios, sentiment analysis, and review-bomb detection.
Pricing
from $0.50 / 1,000 record scrapeds
Rating
0.0
(0)
Developer
BowTiedRaccoon
Maintained by CommunityActor stats
0
Bookmarked
1
Total users
0
Monthly active users
7 days ago
Last modified
Categories
Share
Scrape the complete review history for any Steam game using Steam's official cursor-paginated JSON API. Unlike competitors that return a single page, this actor exhausts the full cursor chain — retrieving every review for titles with hundreds of thousands of entries.
What you get
Each output record includes the full review body plus reviewer-quality signals ideal for brigade detection:
- Review content — full text, recommended/not, language, timestamps
- Reviewer signals — total games owned, prior review count, playtime at time of review (key for detecting low-effort reviews from new accounts)
- Engagement metrics — helpful votes, funny votes, comment count, Steam-weighted helpfulness score
- Purchase context — Steam purchase vs. external key, received for free, Early Access flag
- Per-game aggregate — review score, score description (e.g. "Overwhelmingly Positive"), total positive, negative, and total reviews (joined onto every row for easy analysis)
Input
| Field | Type | Default | Description |
|---|---|---|---|
appIds | string[] | ["440"] | Steam app IDs. Find the ID in the store URL: store.steampowered.com/app/440/ → 440 |
maxItems | integer | 10 | Max reviews per game. Set to 0 to exhaust all reviews (may be slow for popular titles with 1M+ reviews) |
language | string | all | Language filter: all, english, schinese, russian, etc. |
reviewType | string | all | all, positive, or negative |
purchaseType | string | all | all, steam, or non_steam_purchase |
dateRangeStart | string | — | Optional ISO date YYYY-MM-DD — only include reviews created on or after |
dateRangeEnd | string | — | Optional ISO date YYYY-MM-DD — only include reviews created on or before |
Output
{"steam_appid": 440,"recommendation_id": "226055761","author_steamid": "76561198775042737","author_num_games_owned": 42,"author_num_reviews": 4,"author_playtime_forever_min": 1240,"author_playtime_at_review_min": 92,"review_text": "Best game ever.","voted_up": true,"votes_up": 15,"votes_funny": 2,"weighted_vote_score": 0.812,"comment_count": 0,"steam_purchase": true,"received_for_free": false,"written_during_early_access": false,"language": "english","timestamp_created": "2026-05-21T10:05:11.000Z","timestamp_updated": "2026-05-21T10:05:11.000Z","game_review_score": 8,"game_review_score_desc": "Very Positive","game_total_positive": 1119661,"game_total_negative": 111784,"game_total_reviews": 1231445,"source_url": ""}
Use cases
- Review-bomb detection — filter by date range +
author_num_games_owned/author_playtime_at_review_minto identify coordinated low-quality reviews - Sentiment tracking over time — combine date range filters with full history to build time-series sentiment charts
- Competitive research — compare
game_review_score_descand positive/negative ratios across competing titles - QA & community signals — extract the most-voted reviews by
votes_upfor customer feedback analysis
Rate limits & performance
Steam's review API is unauthenticated and generous. The actor uses a 350ms inter-request delay and fetches 100 reviews per page. For a title with 100,000 reviews expect approximately 1,000 API calls; with maxItems set the run completes in seconds.
Multiple games
Pass multiple app IDs to process them in a single run:
{"appIds": ["440", "570", "730"],"maxItems": 500,"language": "english"}
Each app is processed sequentially; maxItems is applied per game.