Steam Store Scraper: Games, Charts & Reviews
Pricing
from $0.70 / 1,000 steam search results
Steam Store Scraper: Games, Charts & Reviews
Scrape Steam games with 84-field details, multi-country prices, reviews, charts, news, similar games, and community content. No login or API key.
Pricing
from $0.70 / 1,000 steam search results
Rating
0.0
(0)
Developer
ScrapingMonkey
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
a day ago
Last modified
Categories
Share
Steam Games Store Scraper
Collect Steam search results, complete game records, regional prices, reviews, charts, news, similar games, live player counts, SteamSpy metrics, and public Steam Community content. The Actor uses lightweight HTTP requests, processes independent targets concurrently, and routes every target request through the built-in Apify Proxy.
What can you do with this Actor?
- Discover games for multiple keywords and Steam price regions
- Compare localized prices and discounts across one or every supported country
- Extract complete product metadata, requirements, media, ratings, tags, packages, and release data
- Track Top Sellers, New Releases, Specials, Coming Soon, and Featured collections
- Analyze positive or negative reviews by date, language, purchase type, and keyword
- Add public reviewer profiles and review comments when required
- Collect announcements, similar games, screenshots, videos, artwork, guides, and broadcasts
- Detect new, changed, and unchanged records across scheduled runs
Modes
| Mode | Input | Dataset row | Typical use |
|---|---|---|---|
search | searchTerms | 38-field ranked search row | Discovery, keyword tracking, sales research |
details | appIds | 84-field full game row | Catalogs, pricing, product intelligence |
reviews | appIds | 42-field public review row | Sentiment, issue, and feedback analysis |
charts | chartCollections | 84-field ranked full game row | Rank and launch monitoring |
news | appIds | 22-field announcement row | Update and release monitoring |
similar | appIds | 28-field recommended-game row | Competitor and market mapping |
community | appIds, communityTypes | 26-field community row | UGC, media, guide, and broadcast research |
Across these schemas, the Actor documents 154 unique top-level output fields. Failed targets are reported in the run log and never mixed into business data as error rows.
Quick start
Search
{"mode": "search","searchTerms": ["fitness game", "workout simulator"],"maxResults": 20,"countries": ["US", "DE"],"language": "en","searchMinReviewScore": 70,"maxConcurrency": 8}
Details with regional prices
{"mode": "details","appIds": ["730", "https://store.steampowered.com/app/570/Dota_2/"],"countries": ["US", "GB", "DE", "JP"],"includeSteamSpy": true,"includeCurrentPlayers": true,"maxConcurrency": 8}
Filter reviews
{"mode": "reviews","appIds": ["730"],"maxResults": 100,"reviewSort": "newest","reviewType": "negative","reviewKeywords": ["crash", "performance"],"reviewKeywordMatch": "any","reviewsSince": "2026-01-01","resolveGameNames": true}
Charts and monitoring
{"mode": "charts","chartCollections": ["topSellers", "newReleases", "specials"],"maxResults": 20,"countries": ["US", "DE"],"monitoring": true,"monitoringOnlyChanges": true,"monitorStoreName": "weekly-steam-charts"}
Complete output examples
Every top-level field returned by every schema is shown below. Fields can be null or empty when Steam does not publish the value for that item.
Complete Search row — 38 top-level fields
{"recordType": "search","searchTerm": "car simulator","searchRank": 1,"searchPage": 1,"totalResults": 7273,"appId": "1190000","itemType": "app","itemKey": "App_1190000","title": "Car Mechanic Simulator 2021","url": "https://store.steampowered.com/app/1190000/","capsuleImage": "https://shared.fastly.steamstatic.com/store_item_assets/steam/apps/1190000/capsule_231x87.jpg","releaseDateText": "11 Aug, 2021","platforms": {"windows": true,"mac": false,"linux": false},"reviewSummary": "Overwhelmingly Positive","reviewSentiment": "positive","positiveReviewPercentage": 95,"reviewCount": 16804,"price": 3.74,"priceText": "$3.74","originalPrice": 24.99,"originalPriceText": "$24.99","discountPercent": 85,"currency": "USD","isFree": false,"isDiscounted": true,"tagIds": [599, 699],"creatorIds": [40373729],"descriptorIds": [5],"steamDeckCompatibilityHandled": true,"country": "US","language": "en","searchSort": "relevance","source": "steam-store","schemaVersion": 2,"scrapedAt": "2026-08-10T12:00:00Z","monitorStatus": null,"changedFields": [],"previousSnapshot": null}
Complete Details or Chart row — 84 top-level fields
Charts use the same complete shape with recordType: "chart", a non-null chartCollection, and a non-null chartRank.
{"recordType": "details","appId": "730","type": "game","name": "Counter-Strike 2","url": "https://store.steampowered.com/app/730/","requiredAge": 0,"isFree": true,"controllerSupport": null,"hasControllerSupport": false,"dlcAppIds": ["267860"],"hasDlc": true,"detailedDescription": "<p>Counter-Strike 2 is a competitive action game.</p>","aboutTheGame": "<p>Built on the Source 2 engine.</p>","shortDescription": "A competitive tactical action game.","supportedLanguages": ["English", "French", "German"],"supportedLanguagesText": "English, French, German","fullAudioLanguages": ["English"],"headerImage": "https://shared.fastly.steamstatic.com/store_item_assets/steam/apps/730/header.jpg","capsuleImage": "https://shared.fastly.steamstatic.com/store_item_assets/steam/apps/730/capsule_231x87.jpg","capsuleImageV5": "https://shared.fastly.steamstatic.com/store_item_assets/steam/apps/730/capsule_184x69.jpg","website": "https://www.counter-strike.net/","pcRequirements": {"minimumHtml": "<strong>OS:</strong> Windows 10","minimumText": "OS: Windows 10","recommendedHtml": null,"recommendedText": null},"macRequirements": {"minimumHtml": null,"minimumText": null,"recommendedHtml": null,"recommendedText": null},"linuxRequirements": {"minimumHtml": "64-bit Linux","minimumText": "64-bit Linux","recommendedHtml": null,"recommendedText": null},"legalNotice": "Valve and Steam are trademarks of Valve Corporation.","developers": ["Valve"],"publishers": ["Valve"],"demos": [{"appId": "123","description": "Public demo"}],"price": 0.0,"priceText": "Free","originalPrice": 0.0,"originalPriceText": "Free","discountPercent": 0,"currency": null,"packages": [298963],"packageGroups": [{"name": "default","title": "Play Counter-Strike 2","description": "","selectionText": "Select a purchase option","saveText": "","displayType": 0,"isRecurringSubscription": false,"packages": [{"packageId": 298963,"percentSavings": 0,"percentSavingsText": "","optionText": "Counter-Strike 2 - Free","optionDescription": "","canGetFreeLicense": true,"isFreeLicense": true,"priceInCentsWithDiscount": 0}]}],"platforms": {"windows": true,"mac": false,"linux": true},"metacritic": {"score": 83,"url": "https://www.metacritic.com/game/counter-strike-2/"},"categories": [{"id": 1,"description": "Multi-player"}],"genres": [{"id": 1,"description": "Action"}],"screenshots": [{"id": 0,"thumbnailUrl": "https://shared.fastly.steamstatic.com/store_item_assets/steam/apps/730/ss_thumb.jpg","fullUrl": "https://shared.fastly.steamstatic.com/store_item_assets/steam/apps/730/ss_full.jpg"}],"movies": [{"id": 256972299,"name": "Launch Trailer","thumbnailUrl": "https://shared.fastly.steamstatic.com/store_item_assets/steam/apps/730/movie.jpg","webm480Url": "https://video.fastly.steamstatic.com/store_trailers/730_480.webm","webmMaxUrl": "https://video.fastly.steamstatic.com/store_trailers/730_max.webm","mp4480Url": "https://video.fastly.steamstatic.com/store_trailers/730_480.mp4","mp4MaxUrl": "https://video.fastly.steamstatic.com/store_trailers/730_max.mp4","hlsUrl": "https://video.fastly.steamstatic.com/store_trailers/730.m3u8","dashUrl": "https://video.fastly.steamstatic.com/store_trailers/730.mpd","highlight": true}],"recommendationsTotal": 8695087,"achievements": {"total": 1,"highlighted": [{"name": "A New Beginning","imageUrl": "https://shared.fastly.steamstatic.com/steamcommunity/public/images/apps/730/achievement.jpg"}]},"hasAchievements": true,"releaseDateText": "21 Aug, 2012","released": true,"support": {"url": "https://help.steampowered.com/","email": "support@steampowered.com"},"background": "https://shared.fastly.steamstatic.com/store_item_assets/steam/apps/730/page_bg.jpg","backgroundRaw": "https://shared.fastly.steamstatic.com/store_item_assets/steam/apps/730/page_bg_raw.jpg","contentDescriptors": {"ids": [2, 5],"notes": "Includes intense violence and online interaction."},"ratings": [{"system": "esrb","rating": "M","descriptors": "Blood, Intense Violence","requiredAge": 17,"useAgeGateImage": true}],"tags": ["FPS", "Shooter", "Multiplayer"],"isEarlyAccess": false,"allReviews": {"label": "Very Positive","positivePercentage": 87,"count": 8695087},"recentReviews": {"label": "Mostly Positive","positivePercentage": 79,"count": 92543},"country": "US","language": "en","available": true,"htmlEnriched": true,"enrichmentError": null,"includedReviews": [],"includedReviewCount": 0,"reviewEnrichmentError": null,"chartCollection": null,"chartRank": null,"prices": [{"country": "US","currency": null,"price": 0.0,"priceText": "Free","originalPrice": 0.0,"originalPriceText": "Free","discountPercent": 0,"isFree": true,"available": true},{"country": "DE","currency": null,"price": 0.0,"priceText": "Free","originalPrice": 0.0,"originalPriceText": "Free","discountPercent": 0,"isFree": true,"available": true}],"priceByCountry": {"US": {"country": "US","currency": null,"price": 0.0,"priceText": "Free","originalPrice": 0.0,"originalPriceText": "Free","discountPercent": 0,"isFree": true,"available": true},"DE": {"country": "DE","currency": null,"price": 0.0,"priceText": "Free","originalPrice": 0.0,"originalPriceText": "Free","discountPercent": 0,"isFree": true,"available": true}},"countriesPriced": ["US", "DE"],"lowestPrice": 0.0,"lowestPriceCountry": "US","isOnSaleAnywhere": false,"currentPlayers": 1013936,"currentPlayersFetchedAt": "2026-08-10T12:00:00Z","steamSpy": {"appId": "730","name": "Counter-Strike: Global Offensive","developer": "Valve","publisher": "Valve","scoreRank": null,"positive": 7642084,"negative": 1173003,"userScore": 0,"owners": "100,000,000 to 200,000,000","averagePlaytimeForeverMinutes": 0,"averagePlaytimeTwoWeeksMinutes": 0,"medianPlaytimeForeverMinutes": 0,"medianPlaytimeTwoWeeksMinutes": 0,"price": 0.0,"originalPrice": 0.0,"discountPercent": 0,"concurrentUsers": 1013936,"languages": ["English", "French", "German"],"genres": ["Action", "Free To Play"],"tags": {"FPS": 92351,"Shooter": 68244}},"news": [],"similarGames": [],"communityMedia": [],"source": "steam-store","schemaVersion": 2,"scrapedAt": "2026-08-10T12:00:00Z","monitorStatus": "changed","changedFields": ["prices"],"previousSnapshot": {"name": "Counter-Strike 2","available": true,"prices": [],"chartRank": null,"releaseDateText": "21 Aug, 2012","recommendationsTotal": 8600000}}
Complete Review row — 42 top-level fields
{"recordType": "review","appId": "730","appUrl": "https://store.steampowered.com/app/730/","reviewId": "231351915","author": {"steamId": "76561197986365624","profileUrl": "https://steamcommunity.com/profiles/76561197986365624/","numGamesOwned": 150,"numReviews": 12,"playtimeForeverMinutes": 600,"playtimeForeverHours": 10.0,"playtimeLastTwoWeeksMinutes": 60,"playtimeLastTwoWeeksHours": 1.0,"playtimeAtReviewMinutes": 540,"playtimeAtReviewHours": 9.0,"deckPlaytimeAtReviewMinutes": 30,"deckPlaytimeAtReviewHours": 0.5,"lastPlayedAt": "2024-03-09T16:00:00Z"},"language": "english","reviewText": "Performance improved after the latest update.","createdAt": "2026-08-01T10:00:00Z","updatedAt": "2026-08-02T10:00:00Z","isPositive": true,"recommendation": "Recommended","votesUp": 42,"votesFunny": 3,"weightedVoteScore": 0.876,"commentCount": 2,"steamPurchase": true,"receivedForFree": false,"writtenDuringEarlyAccess": false,"primarilySteamDeck": true,"developerResponseText": "Thank you for the report.","developerResponseDate": "2026-08-03T10:00:00Z","reviewSort": "newest","reviewType": "all","purchaseType": "all","requestedReviewLanguage": "all","requestedCountry": "US","totalReviews": 100,"totalPositive": 90,"totalNegative": 10,"reviewScore": 8,"reviewScoreDescription": "Very Positive","gameName": "Counter-Strike 2","reviewUrl": "https://steamcommunity.com/profiles/76561197986365624/recommended/730/","matchedKeywords": ["performance", "update"],"authorProfile": {"steamId": "76561197986365624","name": "Example Player","customUrl": "example-player","profileUrl": "https://steamcommunity.com/profiles/76561197986365624/","avatarIcon": "https://avatars.fastly.steamstatic.com/example.jpg","avatarMedium": "https://avatars.fastly.steamstatic.com/example_medium.jpg","avatarFull": "https://avatars.fastly.steamstatic.com/example_full.jpg","onlineState": "offline","stateMessage": "Offline","privacyState": "public","visibilityState": 3,"vacBanned": false,"tradeBanState": "None","limitedAccount": false,"memberSince": "November 25, 2006","hoursPlayedLastTwoWeeks": 1.0,"headline": "Tactical games fan","location": "United States","realName": "","summary": "Public profile summary"},"comments": [{"commentId": "581679037480446648","authorSteamId": "76561198067720346","authorName": "Example Commenter","authorUrl": "https://steamcommunity.com/profiles/76561198067720346/","authorAvatarUrl": "https://avatars.fastly.steamstatic.com/commenter.jpg","text": "This fix worked for me too.","createdAt": "10 August, 2026 @ 12:00 pm"}],"source": "steam-store","schemaVersion": 2,"scrapedAt": "2026-08-10T12:00:00Z","monitorStatus": null,"changedFields": [],"previousSnapshot": null}
Complete News row — 22 top-level fields
{"recordType": "news","appId": "730","gameName": "Counter-Strike 2","newsId": "692016318956701713","title": "Counter-Strike 2 Update","url": "https://store.steampowered.com/news/app/730/view/692016318956701713","isExternalUrl": false,"author": "Valve","contents": "This update includes gameplay and map fixes.","feedLabel": "Community Announcements","publishedAt": "2026-08-03T18:00:00Z","feedName": "steam_community_announcements","feedType": 1,"tags": ["patchnotes"],"country": "US","language": "en","source": "steam-news","schemaVersion": 2,"scrapedAt": "2026-08-10T12:00:00Z","monitorStatus": "new","changedFields": ["title", "contents", "publishedAt", "url"],"previousSnapshot": null}
Complete Similar row — 28 top-level fields
{"recordType": "similar","sourceAppId": "730","appId": "359550","rank": 1,"title": "Tom Clancy's Rainbow Six Siege","url": "https://store.steampowered.com/app/359550/","capsuleImage": "https://shared.fastly.steamstatic.com/store_item_assets/steam/apps/359550/capsule_616x353.jpg","releaseDateText": "1 Dec, 2015","platforms": {"windows": true,"mac": false,"linux": false},"reviewSummary": null,"positiveReviewPercentage": null,"reviewCount": 1250000,"price": 19.99,"priceText": "$19.99","originalPrice": 19.99,"originalPriceText": "$19.99","discountPercent": 0,"currency": "USD","isFree": false,"isDiscounted": false,"country": "US","language": "en","source": "steam-store","schemaVersion": 2,"scrapedAt": "2026-08-10T12:00:00Z","monitorStatus": null,"changedFields": [],"previousSnapshot": null}
Complete Community row — 26 top-level fields
{"recordType": "community","appId": "730","communityType": "screenshots","itemId": "3777669442","rank": 1,"title": "Screenshot","url": "https://steamcommunity.com/sharedfiles/filedetails/?id=3777669442","imageUrl": "https://images.steamusercontent.com/ugc/example/screenshot.jpg","thumbnailUrl": "https://images.steamusercontent.com/ugc/example/screenshot.jpg","bodyText": "Screenshot","authorName": "Example Creator","authorUrl": "https://steamcommunity.com/profiles/76561197980846728/","authorAvatarUrl": "https://avatars.fastly.steamstatic.com/creator.jpg","publishedAt": "2026-08-09T12:00:00Z","views": 77,"votes": 28,"commentCount": 0,"awardCount": 4,"country": "US","language": "en","source": "steam-community","schemaVersion": 2,"scrapedAt": "2026-08-10T12:00:00Z","monitorStatus": null,"changedFields": [],"previousSnapshot": null}
Input parameters
Core
| Parameter | Type | Default | Description |
|---|---|---|---|
mode | string | search | search, details, reviews, charts, news, similar, or community |
searchTerms | string[] | ['car simulator'] | Keywords for Search mode |
appIds | string[] | empty | Numeric IDs or Steam Store/Community URLs |
maxResults | integer | 50 | Maximum rows per input; 0 follows public pagination until it ends |
maxConcurrency | integer | 8 | Simultaneous independent operations, from 1 to 20 |
country | string | US | Primary two-letter Steam price region |
countries | string[] | primary country | Search, Chart, and price-comparison regions |
allCountries | boolean | false | Use every supported Steam price region |
language | string | en | Store localization |
Search filters
| Parameter | Type | Default | Description |
|---|---|---|---|
searchSort | string | relevance | Relevance, release date, name, price, reviews, or Deck ordering |
searchSpecialsOnly | boolean | false | Keep discounted rows |
searchFreeOnly | boolean | false | Keep free rows |
searchMinPrice, searchMaxPrice | number | unset | Numeric range in each requested country's currency |
searchMinDiscountPercent | integer | 0 | Minimum current discount |
searchMinReviewScore | integer | 0 | Minimum positive-review percentage |
searchMinReviews | integer | 0 | Minimum displayed review count |
searchTagIds | string[] | empty | Numeric Steam tag IDs |
searchTagMatch | string | any | Match any or all requested tags |
searchPlatforms | string[] | empty | Required windows, mac, or linux support |
Details and Charts enrichment
| Parameter | Type | Default | Description |
|---|---|---|---|
includeSteamSpy | boolean | true | Public SteamSpy owner, playtime, tag, and concurrent-user metrics |
includeCurrentPlayers | boolean | true | Live player count from Steam |
includeReviews | boolean | false | Embed matching Review rows |
includeNews | boolean | false | Embed News rows |
includeSimilarGames | boolean | false | Embed Similar rows |
includeCommunityMedia | boolean | false | Embed selected Community rows |
chartCollections | string[] | ['topSellers'] | topSellers, newReleases, specials, comingSoon, featured |
Reviews
| Parameter | Type | Default | Description |
|---|---|---|---|
reviewSort | string | newest | newest, updated, or helpful |
reviewType | string | all | all, positive, or negative |
purchaseType | string | all | all, steam, or nonSteam |
reviewLanguage | string | all | Steam review language code or all |
reviewDayRange | integer | 365 | Helpful-sort lookback from 1 to 365 days |
includeOfftopicReviews | boolean | false | Include off-topic review activity |
reviewsSince, reviewsUntil | string | unset | Inclusive YYYY-MM-DD creation-date filters |
reviewKeywords | string[] | empty | Case-insensitive text terms or phrases |
reviewKeywordMatch | string | any | Require any or all terms |
resolveGameNames | boolean | true | Add gameName to Review rows |
includeAuthorProfiles | boolean | false | Add public Steam Community profile fields |
includeReviewComments | boolean | false | Add public comments embedded on the review page |
maxCommentsPerReview | integer | 10 | Maximum comments stored in each Review row |
Community and monitoring
| Parameter | Type | Default | Description |
|---|---|---|---|
communityTypes | string[] | ['screenshots'] | Screenshots, videos, artwork, announcements, guides, or broadcasts |
communitySort | string | popular | popular or recent |
monitoring | boolean | false | Persist fingerprints and classify rows |
monitoringOnlyChanges | boolean | false | Save and bill only new or changed rows |
monitorStoreName | string | steam-games-monitor | Named key-value store shared across scheduled runs |
Regional pricing
Steam selects currency and price from the store country. The Actor therefore lets you choose countries, not an arbitrary currency disconnected from a region. prices preserves each source-native amount and currency. Compare numeric amounts only after applying your own exchange rates.
Monitoring
Enable monitoring and reuse the same monitorStoreName across scheduled runs. Each emitted row gets:
monitorStatus:new,changed, orunchangedchangedFields: the monitored fields whose values changedpreviousSnapshot: the prior compact state used for comparison
Set monitoringOnlyChanges to true to omit unchanged rows before Dataset storage and event charging.
Performance and billing behavior
The Actor uses lightweight HTTP requests and processes independent work up to maxConcurrency. Pagination for one Search, Reviews, or Community target remains sequential because the next page depends on source state. Multi-country Details prices and independent enrichment calls run concurrently.
Pay-per-event integration uses these event names:
| Event | Emitted for |
|---|---|
search-result | One accepted Search row |
game-detail | One complete Details row |
review | One standalone or embedded Review row |
chart-result | One ranked complete Chart game row |
news-item | One standalone or embedded News row |
similar-game | One standalone or embedded Similar row |
community-item | One standalone or embedded Community row |
Before saving a row with nested billable arrays, the Actor trims those arrays to the run's remaining maximum charge budget. It stops cleanly when the event charge limit is reached. Operational failures appear only in logs and are not charged as custom events.
API usage
Run the Actor through the Apify API and download the complete default Results view:
GET https://api.apify.com/v2/datasets/DATASET_ID/items?view=overview&clean=true&format=json
The first and only Dataset view is Results. It exposes the full 154-field union used by all runtime row schemas, so descriptions, regional prices, nested metadata, review text, and enrichment fields are visible without switching to an All fields tab.
Limits and good to know
- Steam controls source availability, chart size, pagination, localization, and whether individual values are published.
- SteamSpy metrics are public third-party estimates and are clearly nested under
steamSpy. - Current player counts are point-in-time values and include
currentPlayersFetchedAt. - Setting
maxResultsto0can produce long runs and high event counts. - Community statistics vary by content type; unavailable counters remain
null. - Private reviewer profile data is never bypassed. Only publicly returned profile fields are stored.
- The Actor does not expose a proxy input. Every target request uses the built-in Apify Proxy, with no direct-traffic fallback.
Responsible use
Use public data responsibly and follow applicable laws, contracts, privacy requirements, and Steam platform terms. Do not use the Actor to identify, harass, or profile individuals in harmful ways.
Support
For reproducible support, include the Actor run ID, mode, sanitized input, affected App ID or term, and the relevant log message. Never send account credentials or private session cookies.