Steam Store Scraper avatar

Steam Store Scraper

Pricing

from $0.79 / 1,000 games

Go to Apify Store
Steam Store Scraper

Steam Store Scraper

Scrape Steam games: metadata, multi-country prices, reviews and more.

Pricing

from $0.79 / 1,000 games

Rating

0.0

(0)

Developer

Unfenced Group

Unfenced Group

Maintained by Community

Actor stats

1

Bookmarked

2

Total users

1

Monthly active users

5 days ago

Last modified

Categories

Share

Steam Store Scraper

Extract games from store.steampowered.com at scale, in a clean, consistent structure ready for price monitoring, market research, catalogue analysis and resale tooling. No API key required.


Why this scraper?

🎯 Built for store.steampowered.com

A dedicated global scraper tuned for store.steampowered.com — its categories, price formats and currency (USD), not a generic tool pointed at it.

📄 Full item content

Complete description and title for every record, with a direct link back to the source.


Input parameters

ParameterTypeDefaultDescription
searchTermsarray["elden ring"]Keywords to search the Steam store (e.g. "elden ring", "roguelike"). Each term is searched and the matching games are scraped.
browseSectionstring"none"Instead of (or in addition to) keywords, pull games from a Steam storefront section.
startUrlsarray(empty)Direct Steam app URLs (e.g. https://store.steampowered.com/app/1245620/). App IDs are extracted automatically.
appIdsarray(empty)Steam numeric app IDs to scrape directly (e.g. 1245620).
maxResultsinteger5Maximum number of games to scrape.
countrystring"us"Storefront whose local currency prices are returned. Used when no multi-country selection is made.
countriesarray(empty)Select several storefronts to get each game's price in every chosen currency in a single run. The first selected country is the primary store.
allCountriesbooleanfalseFetch every supported storefront's price for each game in one run (44 currencies). Overrides the country selections.
languagestring"en"Language for game name, description and supported-languages text.
includeReviewsbooleantrueAdd aggregate review score, sentiment label, total/positive/negative counts and positive %.
includeDescriptionbooleantrueAdd short + full description as HTML, plain text and clean Markdown (LLM-ready).
includeMediabooleantrueAdd screenshots and trailer/video URLs.
includeSteamSpybooleanfalseAdd owner estimate, concurrent players (CCU), average playtime and community tags from SteamSpy.
platformsarray(empty)Keep only games supporting any selected OS.
priceFilterstring"all"Keep only games matching this price status.
minPriceinteger(empty)Minimum price (in the primary currency's major units) based on the lowest selected-country price.
maxPriceinteger(empty)Maximum price (in the primary currency's major units) based on the lowest selected-country price.
minMetacriticinteger(empty)Keep only games with a Metacritic score at or above this value. Games without a score are kept.
minReviewScoreinteger(empty)Steam review score band (0=none … 9=Overwhelmingly Positive). Requires reviews enabled.
minPositivePercentinteger(empty)Keep only games whose positive review share is at or above this percentage. Requires reviews enabled.
genresarray(empty)Keep only games matching any of these genres (substring match, case-insensitive).
releasedAfterstring(empty)Keep only games released on/after this date (YYYY-MM-DD). Undated games are kept.
releasedBeforestring(empty)Keep only games released on/before this date (YYYY-MM-DD). Undated games are kept.

Output schema

Every field below is present on every record. Fields the source does not publish for a given item are returned as null rather than omitted.

FieldTypeDescription
appIdnumberSteam app ID
namestringGame title
typestringgame, dlc, demo, etc.
urlstringSteam store page
primaryCountrystringPrimary country.
isFreebooleanFree-to-play
comingSoonbooleanUnreleased
releaseDatestringRelease date
requiredAgenumberMinimum age
developersarrayDevelopers.
publishersarrayPublishers.
genresarrayFilter: genres
categoriesarrayCategories.
platformsarraywindows / mac / linux
controllerSupportstringController level
currencystringPrimary-country currency
initialPricenumberInitial price.
finalPricenumberFinal price.
discountPercentnumberDiscount on primary store
isOnSalebooleanOn sale in primary store
priceUnavailablebooleanTrue when a paid game exposes no standalone Steam price (edition-only listings)
pricesarrayPer-country price blocks
priceByCountry.usnumberUs.
countriesPricednumberHow many storefronts priced
isOnSaleAnywherebooleanOn sale in any selected store
lowestPriceValuenumberCheapest selected-store price
metacriticScorestringMetacritic score
metacriticUrlstringMetacritic url.
recommendationsTotalnumberSteam recommendations
ageRatingsarrayPer-board ratings (ESRB, PEGI…)
headerImagestringHeader image.
capsuleImagestringCapsule image.
backgroundstringBackground.
websitestringOfficial site
supportedLanguagesRawstringSupported languages
supportedLanguagesarrayParsed clean list of supported languages
dlcCountnumberDlc count.
dlcAppIdsarrayDlc app ids.
fullgamestringParent game (for DLC)
scrapedAtstringISO timestamp
reviewScorenumberReview score.
reviewScoreDescstringReview score desc.
totalReviewsnumberTotal reviews.
totalPositivenumberTotal positive.
totalNegativenumberTotal negative.
positivePercentnumberPositive percent.
shortDescriptionstringShort description.
descriptionHtmlstringFull item description in HTML.
descriptionTextstringDescription text.
descriptionMarkdownstringDescription markdown.
screenshotsarrayScreenshots.
moviesarrayMovies.

Example record

{
"appId": 4704690,
"name": "MECCHA CHAMELEON",
"type": "game",
"url": "https://store.steampowered.com/app/4704690/",
"primaryCountry": "us",
"isFree": false,
"comingSoon": false,
"releaseDate": "Jun 9, 2026",
"requiredAge": 0,
"developers": [
"lemorion_1224"
],
"publishers": [
"lemorion_1224"
],
"genres": [
"Casual"
],
"categories": [
"Multi-player",
"PvP",
"Online PvP",
"Camera Comfort"
],
"platforms": [
"windows"
],
"controllerSupport": "none",
"currency": "USD",
"initialPrice": 5.99,
"finalPrice": 5.99,
"discountPercent": 0,
"isOnSale": false,
"priceUnavailable": false,
"prices": [
{
"country": "us",
"currency": "USD",
"initialPrice": 5.99,
"finalPrice": 5.99,
"discountPercent": 0,
"isOnSale": false,
"finalFormatted": "$5.99"
}
],
"priceByCountry": {
"us": 5.99
},
"countriesPriced": 1,
"isOnSaleAnywhere": false,
"lowestPriceValue": 5.99,
"metacriticScore": null,
"metacriticUrl": null,
"recommendationsTotal": 21756,
"ageRatings": [
{
"board": "dejus",
"rating": "14",
"descriptors": null
},
{
"board": "steam_germany",
"rating": "12",
"descriptors": null
},
{
"board": "igrs",
"rating": "18",
"descriptors": "Interaksi Daring"
}
],
"headerImage": "https://shared.akamai.steamstatic.com/store_item_assets/steam/apps/4704690/163e2a742e5fb8e1f5d1e3a890da98f04ab809d4/header.jpg?t=1781108224",
"capsuleImage": "https://shared.akamai.steamstatic.com/store_item_assets/steam/apps/4704690/18d14b8bd834e30a6a25df5ccd7f0a6e644f1577/capsule_231x87.jpg?t=1781108224",
"background": "https://store.akamai.steamstatic.com/images/storepagebackground/app/4704690?t=1781108224",
"website": null,
"supportedLanguagesRaw": "English, Japanese, Spanish - Spain, Simplified Chinese, Korean, French, Italian, German, Arabic, Portuguese - Brazil, Russian, Traditional Chinese",
"supportedLanguages": [
"English",
"Japanese",
"Spanish - Spain",
"Simplified Chinese"
],
"dlcCount": 0,
"dlcAppIds": [],
"fullgame": null,
"scrapedAt": "2026-06-24T16:34:46.375Z",
"reviewScore": 8,
"reviewScoreDesc": "Very Positive",
"totalReviews": 24496,
"totalPositive": 20401,
"totalNegative": 4095,
"positivePercent": 83.3,
"shortDescription": "Paint yourself to blend in! \"Meccha Chameleon\" is a new-sensation hide-and-seek game where you paint your white body to mimic the stage. Spot, pose, and \"artistic skill\" are keys to survival. Deceive …",
"descriptionHtml": "<p class=\"bb_paragraph\" >Paint your own body! Blend in like a chameleon in this hide-and-seek game!</p><h2 class=\"bb_tag\" ><strong>yeah! Mechcha &quot;Hide and Seek&quot;</strong></h2><p class=\"bb_par …",
"descriptionText": "Paint your own body! Blend in like a chameleon in this hide-and-seek game!\nyeah! Mechcha \"Hide and Seek\"\n The rules are simple. Split into the Seeker team and the Hider team to play hide-and-seek. The …",
"descriptionMarkdown": "Paint your own body! Blend in like a chameleon in this hide-and-seek game!\n\n## **yeah! Mechcha \"Hide and Seek\"**\n The rules are simple. Split into the Seeker team and the Hider team to play hide-and-s …",
"screenshots": [
"https://shared.akamai.steamstatic.com/store_item_assets/steam/apps/4704690/6c0a47cc2fba1b160901d1553637a764198bdc98/ss_6 …",
"https://shared.akamai.steamstatic.com/store_item_assets/steam/apps/4704690/0383a711ed93bf8edd848df4b63b331fc44f3ad5/ss_0 …",
"https://shared.akamai.steamstatic.com/store_item_assets/steam/apps/4704690/51b0a906d1767b1b5abde623350dec64c6877c93/ss_5 …",
"https://shared.akamai.steamstatic.com/store_item_assets/steam/apps/4704690/0a8a562016b13a349349e685f7a4d5a6cbccef3e/ss_0 …"
],
"movies": [
{
"name": "TR2",
"thumbnail": "https://shared.akamai.steamstatic.com/store_item_assets/steam/apps/257336777/50fa43f687913f0d5295148f5b8f2892ec3d8b08/mo …",
"mp4": null,
"webm": null
}
]
}

Examples

Search for strategy:

{
"searchTerms": [
"strategy"
],
"maxResults": 100
}

Cap the price:

{
"searchTerms": [
"strategy"
],
"maxResults": 100,
"maxPrice": 39.99
}

Scrape a specific search URL:

{
"startUrls": [
{
"url": "https://store.steampowered.com/app/1245620/ELDEN_RING/"
}
],
"maxResults": 200
}

Daily monitoring (run on a schedule):

{
"searchTerms": [
"strategy"
],
"maxResults": 500
}

Schedule this input to run once a day in the Apify Scheduler to track prices, stock and new items over time.


💰 Pricing

$0.99 per 1,000 results — you only pay for successfully retrieved games. Failed retries are never charged.

ResultsCost
100~$0.10
1,000~$0.99
10,000~$9.9
100,000~$99

Flat-rate alternatives typically charge $29–$49/month regardless of usage.

Subscription tiers lower the rate further, down to $0.69 per 1,000 at the highest tier. Use the Max results cap in the input to control your spend exactly.


Performance

Run sizeTypical time
100 resultsunder 1 minute
1,000 results2–4 minutes
10,000 results20–35 minutes

Known limitations

  • Some fields (brand, condition, shipping) are only returned when the seller or source publishes them — expect null on a share of records.
  • Prices and stock change constantly; records reflect the moment of scraping.
  • Very large result sets are bounded by the source's own paging limits.
  • Items can sell or be withdrawn at any time, so a small share of URLs may expire shortly after scraping.

Technical details

  • Source: store.steampowered.com
  • Coverage: everything the public search exposes, filterable via the input parameters above
  • Retry: automatic retry on network errors with exponential backoff

Need a custom scraper?

Unfenced Group builds Apify actors for any website — for free.

If the site you need isn't in our portfolio yet, just ask. We scope, build, and publish it at no cost to you. You only pay for results — we absorb the compute and proxy costs ourselves. Same pay-per-result pricing, same quality, same standards as every actor in this portfolio.

Get in touch: www.unfencedgroup.nl