Steam Reviews Scraper — With Playtime | $5/1K avatar

Steam Reviews Scraper — With Playtime | $5/1K

Pricing

$5.00 / 1,000 results

Go to Apify Store
Steam Reviews Scraper — With Playtime | $5/1K

Steam Reviews Scraper — With Playtime | $5/1K

Steam reviews with the hours each reviewer had played when writing — what separates an informed verdict from a rage post. Filter by language, sentiment and purchase type to exclude free keys. Plus game details, prices and owner estimates. For developers and market research.

Pricing

$5.00 / 1,000 results

Rating

0.0

(0)

Developer

Finjard Neumeier

Finjard Neumeier

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

13 hours ago

Last modified

Categories

Share

Steam Reviews & Game Data Scraper

Extract Steam reviews, game details, prices and player estimates. No API key, no login, no Steam account required.

Every review row carries how long the reviewer had played when they wrote it — the field that separates an informed verdict from a five-minute rage post.


Why this scraper

Playtime per reviewer. Steam exposes it; most scrapers drop it. With playtimeHoursAtReview you can filter out reviews written after 12 minutes, weight sentiment by hours played, or find the reviewers who actually know the game.

Purchase type filtering. Separate genuine Steam purchases from review keys and gifts. If you are measuring sentiment, free copies distort it — one setting removes them.

Owner estimates included. Steam never publishes ownership numbers. Game mode adds estimated owners, average playtime and peak concurrent players.


What you can extract

ModeWhat you get
Reviews of a gameEvery public review with full text, verdict, votes, language, and the reviewer's playtime and library size
Game details and statsPrice, discount, genres, developers, review score, Metacritic, owner estimates, achievements, platforms
Search the Steam storeFind games by keyword with price, release date and rating
Review score summary onlyJust the numbers — total, positive, negative, percentage — without pulling individual reviews

Quick start

  1. Pick a mode.
  2. Paste an App ID (730) or a store URL (https://store.steampowered.com/app/730/).
  3. Set Maximum results.
  4. Click Start, then download as CSV, Excel or JSON.

Example inputs

All recent reviews of a game

{
"mode": "reviews",
"appIds": ["730"],
"maxItems": 5000,
"sortBy": "recent"
}

Negative German reviews from the last 30 days

{
"mode": "reviews",
"appIds": ["730"],
"language": "german",
"reviewType": "negative",
"dayRange": 30,
"maxItems": 1000
}

Honest sentiment — real purchases only, no free keys

{
"mode": "reviews",
"appIds": ["1245620"],
"purchaseType": "steam",
"sortBy": "all",
"maxItems": 2000
}

Compare several games side by side

{
"mode": "games",
"appIds": ["730", "570", "1245620", "1172470"],
"country": "de"
}

Find every game in a genre

{
"mode": "search",
"searchQuery": "roguelike deckbuilder",
"maxItems": 500
}

Output fields

Reviews

FieldDescription
reviewFull review text
recommendationRecommended or Not Recommended
votedUpSame as a boolean
playtimeHoursAtReviewHours played when the review was written
playtimeHoursTotalHours played overall
playtimeHoursLast2WeeksHours played recently — is the reviewer still active?
authorName, authorSteamId, authorProfileUrlWho wrote it
authorGamesOwned, authorReviewCountHow experienced the reviewer is
createdAt, updatedAtWhen it was posted and last edited
votesHelpful, votesFunny, commentCountCommunity response
helpfulnessScoreSteam's own weighting, 0 to 1
steamPurchaseFalse for keys, gifts and review copies
receivedForFree, refunded, writtenDuringEarlyAccessContext flags
primarilySteamDeckPlayed mostly on a Steam Deck
languageLanguage of the review

Games

FieldDescription
name, url, type, isFreeIdentity
priceInitial, priceFinal, discountPercent, priceCurrencyPricing for the chosen country
totalReviews, positiveReviews, negativeReviews, positivePercentReview breakdown
reviewScoreDescSteam's wording, e.g. Very Positive
metacriticScore, metacriticUrlCritic score
ownersEstimateEstimated ownership range
averagePlaytimeForever, averagePlaytime2Weeks, ccuEngagement
developers, publishers, genres, categoriesClassification
releaseDate, comingSoonRelease status
achievementCount, dlcCount, requiredAgeExtras
platformWindows, platformMac, platformLinuxAvailability

Input notes

  • Games accept an App ID or a full store URL — no need to extract the number.
  • Several games split the maxItems budget evenly between them.
  • Store country changes prices and currency: us, de, gb, br, jp.
  • Sort order recent gives newest first, all gives most helpful first.

Performance

RunResultsTime
Reviews150~2 s
Reviews5,000~1 min
Game details3 games~4 s

Reviews paginate 100 at a time; game details need three requests per title (store, review summary, owner estimates).


Limits

  • Public data only. Private profiles and unreleased games return little.
  • Owner estimates are estimates. They come from SteamSpy's sampling, not Steam.
  • Review counts are snapshots at the time of scraping.
  • Very large runs may hit rate limits — raise Delay between requests to 1–2 seconds.

FAQ

Do I need a Steam account or API key? No. Everything runs against public store endpoints.

Can I get every review of a big game? Yes, though popular titles have millions. Use dayRange or language to narrow it.

Why do some reviews show zero playtime? The reviewer's profile is private. The review text is still returned.

Can I filter out review keys and gifts? Yes — set How the game was obtained to Steam purchases only.

What formats can I export? CSV, Excel, JSON, XML, or straight from the Apify API.


This Actor reads publicly available data from Steam's public store endpoints. It does not bypass authentication or access private content.

You are responsible for how you use the results, including GDPR obligations when the data concerns people in the EU. Review text and profile names are personal data — do not republish them without a lawful basis.