Steam Store Scraper: Games, Charts & Reviews avatar

Steam Store Scraper: Games, Charts & Reviews

Pricing

from $0.70 / 1,000 steam search results

Go to Apify Store
Steam Store Scraper: Games, Charts & Reviews

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

ScrapingMonkey

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

a day ago

Last modified

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

ModeInputDataset rowTypical use
searchsearchTerms38-field ranked search rowDiscovery, keyword tracking, sales research
detailsappIds84-field full game rowCatalogs, pricing, product intelligence
reviewsappIds42-field public review rowSentiment, issue, and feedback analysis
chartschartCollections84-field ranked full game rowRank and launch monitoring
newsappIds22-field announcement rowUpdate and release monitoring
similarappIds28-field recommended-game rowCompetitor and market mapping
communityappIds, communityTypes26-field community rowUGC, 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

{
"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

ParameterTypeDefaultDescription
modestringsearchsearch, details, reviews, charts, news, similar, or community
searchTermsstring[]['car simulator']Keywords for Search mode
appIdsstring[]emptyNumeric IDs or Steam Store/Community URLs
maxResultsinteger50Maximum rows per input; 0 follows public pagination until it ends
maxConcurrencyinteger8Simultaneous independent operations, from 1 to 20
countrystringUSPrimary two-letter Steam price region
countriesstring[]primary countrySearch, Chart, and price-comparison regions
allCountriesbooleanfalseUse every supported Steam price region
languagestringenStore localization

Search filters

ParameterTypeDefaultDescription
searchSortstringrelevanceRelevance, release date, name, price, reviews, or Deck ordering
searchSpecialsOnlybooleanfalseKeep discounted rows
searchFreeOnlybooleanfalseKeep free rows
searchMinPrice, searchMaxPricenumberunsetNumeric range in each requested country's currency
searchMinDiscountPercentinteger0Minimum current discount
searchMinReviewScoreinteger0Minimum positive-review percentage
searchMinReviewsinteger0Minimum displayed review count
searchTagIdsstring[]emptyNumeric Steam tag IDs
searchTagMatchstringanyMatch any or all requested tags
searchPlatformsstring[]emptyRequired windows, mac, or linux support

Details and Charts enrichment

ParameterTypeDefaultDescription
includeSteamSpybooleantruePublic SteamSpy owner, playtime, tag, and concurrent-user metrics
includeCurrentPlayersbooleantrueLive player count from Steam
includeReviewsbooleanfalseEmbed matching Review rows
includeNewsbooleanfalseEmbed News rows
includeSimilarGamesbooleanfalseEmbed Similar rows
includeCommunityMediabooleanfalseEmbed selected Community rows
chartCollectionsstring[]['topSellers']topSellers, newReleases, specials, comingSoon, featured

Reviews

ParameterTypeDefaultDescription
reviewSortstringnewestnewest, updated, or helpful
reviewTypestringallall, positive, or negative
purchaseTypestringallall, steam, or nonSteam
reviewLanguagestringallSteam review language code or all
reviewDayRangeinteger365Helpful-sort lookback from 1 to 365 days
includeOfftopicReviewsbooleanfalseInclude off-topic review activity
reviewsSince, reviewsUntilstringunsetInclusive YYYY-MM-DD creation-date filters
reviewKeywordsstring[]emptyCase-insensitive text terms or phrases
reviewKeywordMatchstringanyRequire any or all terms
resolveGameNamesbooleantrueAdd gameName to Review rows
includeAuthorProfilesbooleanfalseAdd public Steam Community profile fields
includeReviewCommentsbooleanfalseAdd public comments embedded on the review page
maxCommentsPerReviewinteger10Maximum comments stored in each Review row

Community and monitoring

ParameterTypeDefaultDescription
communityTypesstring[]['screenshots']Screenshots, videos, artwork, announcements, guides, or broadcasts
communitySortstringpopularpopular or recent
monitoringbooleanfalsePersist fingerprints and classify rows
monitoringOnlyChangesbooleanfalseSave and bill only new or changed rows
monitorStoreNamestringsteam-games-monitorNamed 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, or unchanged
  • changedFields: the monitored fields whose values changed
  • previousSnapshot: 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:

EventEmitted for
search-resultOne accepted Search row
game-detailOne complete Details row
reviewOne standalone or embedded Review row
chart-resultOne ranked complete Chart game row
news-itemOne standalone or embedded News row
similar-gameOne standalone or embedded Similar row
community-itemOne 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 maxResults to 0 can 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.