Steam Community Market Scraper avatar

Steam Community Market Scraper

Pricing

from $0.30 / 1,000 market items

Go to Apify Store
Steam Community Market Scraper

Steam Community Market Scraper

Scrape public Steam Community Market item prices, listing counts, app metadata, item hash names, icons, URLs, and diagnostics.

Pricing

from $0.30 / 1,000 market items

Rating

0.0

(0)

Developer

Hanna Nosova

Hanna Nosova

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

3 days ago

Last modified

Share

Steam Community Market Scraper exports public market item search results with current listing counts, price text, app metadata, item hash names, icon URLs, and diagnostics. Use it to build trading dashboards, monitor item families, compare marketable game assets, and research public Steam marketplace inventory.

What data it exports

  • Searches public Steam Community Market item listings by keyword.
  • Returns market item identifiers, app/game fields, listing counts, price text, and direct market URLs.
  • Supports exact item watchlists for known appId + marketHashName pairs.
  • Adds diagnostics for zero-result searches and failed pages when requested.

Use cases

  • Game traders: Watch popular item families, cases, stickers, capsules, and skins.
  • Market analysts: Export price/listing snapshots for spreadsheet and BI workflows.
  • Game publishers: Monitor public market activity around game items.
  • Pricing researchers: Compare availability and price text across keywords and apps.

At a glance

  • Search market items: Run one or more Steam Community Market keyword searches.
  • Monitor exact items: Submit known appId + marketHashName entries for watchlists.
  • Export clean data: Download CSV, JSON, Excel, XML, or consume results through the Apify API.
  • Stay bounded: Limit rows per query and keep duplicate market items out of the dataset.
  • Know what happened: Optional diagnostic rows explain empty searches or failed pages.

Input example

{
"queries": ["case"],
"appId": 730,
"maxItemsPerQuery": 10,
"countPerPage": 10,
"dedupe": true,
"includeDiagnostics": true
}

Output example

{
"query": "case",
"rank": 1,
"name": "Dreams & Nightmares Case",
"marketHashName": "Dreams & Nightmares Case",
"appId": 730,
"appName": "Counter-Strike 2",
"sellListings": 348508,
"sellPrice": 185,
"sellPriceText": "$1.85",
"marketUrl": "https://steamcommunity.com/market/listings/730/Dreams%20%26%20Nightmares%20Case",
"status": "ok",
"warnings": [],
"scrapedAt": "2026-07-21T08:00:00.000Z"
}

Input settings

KeyTypeDescription
queriesstring[]Steam Community Market keywords such as case, ak-47, capsule, or sticker.
maxItemsPerQueryintegerMaximum saved market item rows for each query.
startPageintegerZero-based page to start from.
countPerPageintegerSearch page size, from 1 to 10.
appIdintegerOptional Steam app ID filter, for example 730 for Counter-Strike 2.
exactItemsobject[]Optional watchlist entries with appId and marketHashName.
dedupebooleanSkip duplicate appId + marketHashName rows across queries.
includeDiagnosticsbooleanSave non-charged diagnostic rows for empty searches and failed pages.
proxyConfigurationobjectOptional Apify proxy settings. Leave disabled for normal small runs.

Output fields

FieldDescription
query, rankSearch term and rank within that query/page sequence.
name, hashName, marketHashNameSteam market item names and hash names.
appId, appName, classIdSteam game/app and asset identity fields.
sellListingsCurrent public listing count returned by Steam.
sellPrice, sellPriceText, salePriceTextNumeric cents when parseable plus original price text.
tradable, itemType, itemNameColorPublic item metadata when returned by Steam.
iconUrl, marketUrl, sourceUrlItem image, Steam market listing, and source request URLs.
status, warnings, missingFieldsResult or diagnostic status and parsing notes.
scrapedAtTimestamp when the row was saved.

Input recipes

  • CS2 case watchlist: {"queries":["case"],"appId":730,"maxItemsPerQuery":25,"countPerPage":10}
  • Keyword discovery: {"queries":["sticker","capsule"],"maxItemsPerQuery":15,"dedupe":true}
  • Exact item monitor: {"exactItems":[{"appId":730,"marketHashName":"Dreams & Nightmares Case"}],"maxItemsPerQuery":5}

Pricing

This Actor uses pay-per-event pricing. A small start fee is charged once per run, and only saved market item rows are charged as results. Diagnostic-only rows are not charged as result items.

EventPrice
Run start$0.005
Market item resultFREE $0.000575, BRONZE $0.0005, SILVER $0.00039, GOLD $0.0003, PLATINUM $0.0002, DIAMOND $0.00014 per item

Tips and limits

  • Steam price text can vary by locale and availability; keep the raw text fields for audits.
  • Use small maxItemsPerQuery values for frequent monitoring tasks.
  • This Actor covers public Community Market item data, not private inventories, trades, wallets, or purchases.
  • Empty searches can be valid. Enable includeDiagnostics when building monitoring pipelines.

API usage

Node.js

import { ApifyClient } from 'apify-client';
const client = new ApifyClient({ token: process.env.APIFY_TOKEN });
const run = await client.actor('fetch_cat/steam-community-market-scraper').call({
queries: ['case'],
appId: 730,
maxItemsPerQuery: 10
});
const { items } = await client.dataset(run.defaultDatasetId).listItems();

Python

from apify_client import ApifyClient
client = ApifyClient('YOUR_APIFY_TOKEN')
run = client.actor('fetch_cat/steam-community-market-scraper').call(run_input={
'queries': ['case'],
'appId': 730,
'maxItemsPerQuery': 10,
})
items = client.dataset(run['defaultDatasetId']).list_items().items

cURL

curl -X POST 'https://api.apify.com/v2/acts/fetch_cat~steam-community-market-scraper/runs?token=YOUR_APIFY_TOKEN' \
-H 'Content-Type: application/json' \
-d '{"queries":["case"],"appId":730,"maxItemsPerQuery":10}'

MCP and agents

Use this Actor from agents through Apify MCP with the tool-filtered URL:

https://mcp.apify.com/?tools=fetch_cat/steam-community-market-scraper

Claude CLI

$claude mcp add apify 'https://mcp.apify.com/?tools=fetch_cat/steam-community-market-scraper'

JSON config

{
"mcpServers": {
"apify": {
"url": "https://mcp.apify.com/?tools=fetch_cat/steam-community-market-scraper"
}
}
}

Example prompts

  • "Find current Steam Community Market listings for CS2 cases and return listing counts."
  • "Monitor Dreams & Nightmares Case and summarize the current price text."
  • "Export Steam market item rows for sticker and capsule searches as JSON."

Responsible use

Scrape only public Steam Community Market data. Do not use this Actor to collect private account, inventory, wallet, trade, or purchase information. Respect Steam's terms and run modest, bounded workloads.

FAQ

Does it require a Steam login? No. It is designed for public market data.

Can it return historical charts? Not in V1. Current public listing counts and price text are supported.

Why is sellPrice sometimes null? Localized or unusual price text may not parse cleanly. The raw sellPriceText is still preserved.

Support

Open an issue on the Actor page and include:

  • Run ID or reproducible public URL.
  • Input JSON you used.
  • Expected output.
  • Actual output or error message.