Etsy Scraper - Listings, Shops & Search Results avatar

Etsy Scraper - Listings, Shops & Search Results

Pricing

from $3.50 / 1,000 results

Go to Apify Store
Etsy Scraper - Listings, Shops & Search Results

Etsy Scraper - Listings, Shops & Search Results

Scrape Etsy product listings, shop profiles, and search results. Get price, sales, reviews, photos, variants, shop info. 3 input modes.

Pricing

from $3.50 / 1,000 results

Rating

0.0

(0)

Developer

Crikit

Crikit

Maintained by Community

Actor stats

0

Bookmarked

3

Total users

2

Monthly active users

2 days ago

Last modified

Share

Etsy Scraper – Listings, Shops & Search Results

Etsy Scraper extracts product listings, shop profiles, and search results from etsy.com without a login. Three input modes ship together so you can mix bulk listing scrapes, shop deep-dives, and keyword discovery in a single actor run.

What this Etsy Scraper returns

Record typeWhat you get
listingtitle, full description, price low/high, currency, availability, variant count, rating, review count, ordered image URLs, category, breadcrumbs, shop name, shop ID, source URL
shopshop title, description, owner, location, slogan, logo, aggregate rating, total review count, total listings on the shop page, source URL
searchSummarysearch query, page number, total result count Etsy reports for the query, source URL

Every record is flat. No nested wrappers. Pipe directly into a spreadsheet or database.

Warnings (404 listings, removed shops, anti-bot blocks) are written to the run's key-value store at WARNINGS so you can audit run health, without triggering a result charge. Open the run's key-value store tab to download.

Input modes

Mix any combination in a single run.

  1. Search queries – give a list of free-text searches and the actor walks page=1..N per query, summarizing total hits and feeding the listings it sees into the listing detail phase when includeListingDetails is enabled.
  2. Shop URLs or names – full Etsy shop URLs (https://www.etsy.com/shop/HunchbackLeather) or bare names. Returns the shop record plus, by default, every listing visible on the shop's front page.
  3. Listing URLs or IDs – full Etsy listing URLs or bare numeric IDs (e.g. 1529402955). Returns the full product record.

Use maxResults as a hard cap across all three modes. Use maxPagesPerQuery to control search depth.

Pricing

Pay only for what you get back: $0.0035 per successful record ($3.50 per 1,000). No actor-start fee.

You are charged ONLY for listing, shop, and searchSummary records that land in the default dataset. 404s, anti-bot warnings, and unfetchable shops are routed to the run's key-value store as a WARNINGS blob — never billed. Etsy returns roughly six listing cards per mobile search page, so a single search query at maxPagesPerQuery=10 produces around 60 listing records plus 10 search-summary rows.

Why this Etsy Scraper

  • 3 input modes in one actor. Most Etsy actors handle search OR shops OR listings. This one does all three so you do not bounce between multiple actors and datasets.
  • Real product data. Pulls from Etsy's JSON-LD Product / Organization / ItemList / BreadcrumbList / FAQPage blocks, the same structured data Google indexes, so the field shape is stable across page redesigns.
  • No login required. Bryan's actor portfolio policy: zero cookie-required scrapers. This Etsy Scraper never asks for your Etsy account, sessionid, or any credential.
  • Anti-bot ready. Etsy fronts everything behind DataDome. This scraper ships with the iOS Safari + curl_cffi safari17_0 impersonation profile and an Apify RESIDENTIAL US proxy that is the only proxy class DataDome lets through on product, shop, and search pages. A built-in circuit breaker pauses the run instead of burning proxy bandwidth when DataDome enters a sustained block state.
  • Cheaper. $3.50 per 1,000 records flat. The dominant competitor charges roughly $5–$7 per 1,000 plus a $0.05 actor-start fee on every run.

Output examples

Listing record

{
"recordType": "listing",
"listingId": "1529402955",
"title": "Handmade Full Grain Leather Wallet - Personalizable Men's Bifold Wallet",
"priceLow": 154.0,
"priceHigh": 194.0,
"priceCurrency": "USD",
"availability": "https://schema.org/InStock",
"variantCount": 25,
"ratingValue": 5.0,
"reviewCount": 467,
"images": ["https://i.etsystatic.com/.../il_fullxfull.jpg", "…"],
"category": "Wallets & Money Clips",
"breadcrumbs": ["Clothing & Accessories", "Wallets & Money Clips", "Bifold Wallets"],
"shopId": "34829689",
"shopName": "HunchbackLeather",
"shopUrl": "https://www.etsy.com/shop/HunchbackLeather",
"sourceUrl": "https://www.etsy.com/listing/1529402955",
"scrapedAt": "2026-05-19T18:42:11Z"
}

Shop record

{
"recordType": "shop",
"shopId": "34829689",
"shopName": "HunchbackLeather",
"title": "HunchbackLeather",
"description": "Handcrafted leather goods, made by a single artisan in California.",
"shopOwner": "Eric",
"shopLocation": "San Francisco, United States",
"shopRating": 4.93,
"shopReviewCount": 2178,
"shopLogo": "https://i.etsystatic.com/iusa/…/iusa_400x400.jpg",
"totalShopListings": 84,
"sourceUrl": "https://www.etsy.com/shop/HunchbackLeather",
"scrapedAt": "2026-05-19T18:42:11Z"
}

Search summary record

{
"recordType": "searchSummary",
"searchQuery": "handmade leather wallet",
"searchPage": 1,
"searchTotalResults": 80032,
"sourceUrl": "https://www.etsy.com/search?q=handmade+leather+wallet&page=1",
"scrapedAt": "2026-05-19T18:42:11Z"
}

Common Etsy use cases this actor covers

  • Etsy market research – pull every Etsy listing for a niche query, with price ranges and ratings, into a single Etsy dataset.
  • Etsy competitor monitoring – run a daily Etsy shop scrape across a list of competitor shops, track their listings, prices, and review counts over time.
  • Etsy product Python pipelines – feed the Etsy listing JSON straight into Python with the Apify SDK. The actor's output schema makes the Etsy data CSV-clean.
  • Etsy SEO tools – walk Etsy search results to map title patterns and tag usage across top-ranking listings.
  • Etsy review analysis – combine the shop record's shopReviewCount with the listing record's reviewCount for a quick reputation snapshot.

Tips

  • For deep searches, raise maxPagesPerQuery to 30+ and rely on maxResults as your wallet cap.
  • includeListingDetails: false is roughly 6× cheaper if you only need shop or search-summary rows.
  • Etsy shop names are case-sensitive in the URL path; the actor preserves whatever capitalization you pass.
  • Concurrency tuning. detailConcurrency defaults to 5 — the sweet spot in our benchmarks. 8–10 will not be meaningfully faster (Etsy's mobile search page returns only ~6 listings per page, so the search-page walk becomes the bottleneck) and may increase anti-bot signals. Lower it to 1–2 if you ever see warnings spike.
  • Runtime budget. Set maxRuntimeSeconds if you want the actor to stop cleanly at a deadline regardless of how many results have been collected. Useful for daily cron-style jobs.

Performance

In our v0.2.2 benchmark:

  • ~2.4 results per second in steady state on residential US proxy (vs ~0.4/sec on v0.1.x).
  • 8-item prefill run completes in ~12 s — well inside Apify's 5-minute daily-auto-test envelope.
  • 100% required-field coverage on 175 listings across the QA matrix.
  • Per-run warnings ride in the run's key-value store with no per-warning charge.

The full v0.2.2 launch QA report is at qa/v02/QA_REPORT.md.

Limitations

  • The mobile layout that DataDome allows through paginates roughly six listings per search page. Plan maxPagesPerQuery accordingly.
  • Etsy hides exact subscriber counts on the public web. The actor returns whatever Etsy renders.
  • Sold listings still return data but with availability: OutOfStock.

Bug reports & feature requests

Open an issue on the Apify Console actor page or DM the maintainer. The actor ships with documented ground-truth listings so reproducing a problem is straightforward.