Steam Scraper — Games, Reviews & Player Counts
Pricing
$10.00 / 1,000 result scrapeds
Steam Scraper — Games, Reviews & Player Counts
Scrape Steam game listings, reviews, and player data. Returns: game title, price, rating, review count, player stats, genres, and release date. Ideal for game market analysis and competitive research.
Pricing
$10.00 / 1,000 result scrapeds
Rating
0.0
(0)
Developer
Web Data Labs
Actor stats
0
Bookmarked
4
Total users
2
Monthly active users
16 days ago
Last modified
Categories
Share
Steam Game Data Scraper
Extract comprehensive game data from the Steam Store — the largest PC gaming platform with 120M+ monthly active users and 70,000+ games. Search games, get detailed info, read user reviews, and check live player counts.
No API key required. Uses Steam's public store API endpoints directly — fast, lightweight, pure HTTP (no browser needed).
What Data You Get
| Action | Data Returned |
|---|---|
| Search | App ID, name, price, currency, free-to-play flag, platforms (Win/Mac/Linux), thumbnail |
| Game Details | Full metadata: descriptions, developers, publishers, pricing, discounts, genres, categories, release date, platforms, Metacritic score, review counts, age ratings, screenshots, movies, DLC list |
| Reviews | Review text, positive/negative sentiment, helpfulness votes, playtime at review, total playtime, author info, language, Steam purchase flag |
| Player Count | Current number of players online in real-time |
Input Parameters
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
action | String | Yes | "search" | What to extract: search, game-details, reviews, or player-count |
query | String | For search | "portal" | Search term for finding games |
appids | Array | For details | — | List of Steam App IDs (e.g. ["570", "730"]) |
appid | String | For reviews/player-count | — | Single Steam App ID |
maxItems | Integer | No | 20 | Max results to return (1–500) |
filter | String | No | "recent" | Review filter: recent, all, positive, or negative |
language | String | No | "english" | Language for reviews |
Input Examples
Search for games
{"action": "search","query": "civilization","maxItems": 10}
Get details for multiple games
{"action": "game-details","appids": ["570", "730", "1174180"]}
Common App IDs: Dota 2 (570), CS2 (730), Red Dead Redemption 2 (1174180), GTA V (271590), Elden Ring (1245620), Baldur's Gate 3 (1086940).
Get negative reviews only
{"action": "reviews","appid": "1091500","maxItems": 100,"filter": "negative","language": "english"}
Check live player count
{"action": "player-count","appid": "570"}
Output Examples
Search Result
{"appid": 289070,"name": "Sid Meier's Civilization VI","price": 59.99,"price_currency": "USD","is_free": false,"platforms": { "windows": true, "mac": true, "linux": true },"type": "app","tiny_image": "https://shared.akamai.steamstatic.com/store_item_assets/steam/apps/289070/capsule_sm_120.jpg"}
Game Details
{"appid": 570,"name": "Dota 2","description": "Every day, millions of players worldwide enter battle as one of over a hundred Dota heroes.","developers": ["Valve"],"publishers": ["Valve"],"price": 0,"price_formatted": "Free","discount_percent": 0,"is_free": true,"genres": ["Action", "Free to Play", "Strategy"],"categories": ["Multi-player", "Online Multi-Player", "Steam Trading Cards"],"release_date": "2013-07-09","platforms": { "windows": true, "mac": true, "linux": true },"metacritic_score": 90,"metacritic_url": "https://www.metacritic.com/game/pc/dota-2","recommendations": 2102329,"header_image": "https://shared.akamai.steamstatic.com/store_item_assets/steam/apps/570/header.jpg"}
Review
{"recommendationid": "163842756","author_steamid": "76561198012345678","author_playtime_forever": 4523,"author_playtime_at_review": 3200,"language": "english","review": "After 4500 hours I can say this game is okay I guess.","voted_up": true,"votes_up": 342,"votes_funny": 128,"steam_purchase": true,"written_during_early_access": false,"timestamp_created": 1711900800}
Player Count
{"appid": 570,"name": "Dota 2","player_count": 682431,"checked_at": "2026-03-28T14:30:00Z"}
Use with Python (apify-client)
from apify_client import ApifyClientclient = ApifyClient("YOUR_API_TOKEN")# Search for gamesrun = client.actor("cryptosignals/steam-scraper").call(run_input={"action": "search","query": "survival crafting","maxItems": 20,})for game in client.dataset(run["defaultDatasetId"]).iterate_items():price = "Free" if game["is_free"] else f"${game['price']}"print(f"{game['name']} — {price}")
# Get reviews for a gamerun = client.actor("cryptosignals/steam-scraper").call(run_input={"action": "reviews","appid": "1245620","maxItems": 50,"filter": "recent",})for review in client.dataset(run["defaultDatasetId"]).iterate_items():sentiment = "👍" if review["voted_up"] else "👎"hours = review.get("author_playtime_forever", 0) / 60print(f"{sentiment} ({hours:.0f}h played): {review['review'][:100]}...")
Handling Bot Detection & Rate Limits
Steam's public API is generally permissive, but high-volume scraping can trigger temporary blocks:
- Built-in rate limiting — the actor includes delays between requests to stay under Steam's thresholds
- Use proxies for high volume — if scraping thousands of games or reviews, proxies help distribute load
- Residential proxies recommended — for large-scale data collection, rotating residential IPs avoid IP-based throttling
For reliable residential proxies, I recommend ThorData — rotating residential IPs that work well for high-volume Steam data extraction.
Limitations
- Steam API may return partial data for removed/delisted games
- Review pagination is limited by Steam's cursor-based API (max ~500 reviews per run for best results)
- Player count is a point-in-time snapshot — for historical data, schedule recurring runs
- Some regional pricing may vary based on the proxy/IP location used
- Rate limiting may occur on very high-volume runs without proxies
Support
Found a bug or have a feature request? Open an issue on the actor's page or reach out through Apify's messaging system.