Etsy Scraper — Products, Prices, Reviews & Shop Data avatar

Etsy Scraper — Products, Prices, Reviews & Shop Data

Pricing

from $3.00 / 1,000 etsy product extracteds

Go to Apify Store
Etsy Scraper — Products, Prices, Reviews & Shop Data

Etsy Scraper — Products, Prices, Reviews & Shop Data

Scrape Etsy product listings, prices, ratings, seller info, Star Seller & Bestseller badges, materials, tags, shop catalogs & customer reviews. Filter by category, price range, free shipping, or sale status. No API key or login needed.

Pricing

from $3.00 / 1,000 etsy product extracteds

Rating

0.0

(0)

Developer

Khadin Akbar

Khadin Akbar

Maintained by Community

Actor stats

0

Bookmarked

7

Total users

5

Monthly active users

5 days ago

Last modified

Share

Etsy Scraper — Extract Products, Prices, Reviews & Shop Data

The most complete Etsy scraper on Apify. Search by keyword, scrape full shop catalogs, or extract individual product pages — all in one actor. No Etsy API key required. No login. Just clean, structured JSON ready for analysis, AI pipelines, or spreadsheets.


What does this Etsy scraper do?

This actor extracts structured data from Etsy's marketplace: product listings from search results, full product detail pages with descriptions and variations, complete shop catalogs, and customer reviews — all in a single run.

Unlike Etsy scrapers that only handle one input type, this actor accepts search keywords, direct product URLs, and shop URLs simultaneously, returning a clean consistent dataset with the same field structure regardless of source.

Handles all three Etsy input types:

  • Etsy keyword search — type any search term, get paginated product listings just like Etsy search results
  • Etsy product page scraper — paste a listing URL to get the full product data including description, tags, and all image URLs
  • Etsy shop scraper — paste a shop URL to extract the entire catalog with pagination

Why choose this Etsy data extractor?

More data fields than any competitor

In full detail mode you get the complete product page: descriptions, materials list, all image URLs, size/color/style variations, processing time, shipping origin, and seller tags. Most Etsy scrapers return only listing-level data (title, price, thumbnail) — this actor goes deeper.

Badge detection

Know which listings carry Star Seller, Bestseller, and Etsy's Pick badges. These badges are key signals for competitor research, product validation, and trend spotting that most scrapers miss entirely.

Reviews included

Toggle on customer review scraping to get star ratings, review text, and reviewer names alongside product data — all in the same dataset, no second run needed.

Advanced filtering

Filter results by category, price range (min/max), free shipping status, or sale status — before data is returned, so you're only paying for records you actually want.

MCP and AI-agent ready

Full typed output schema means Claude, ChatGPT Operator, n8n, and other AI agents can consume your Etsy data immediately with zero manual wrangling. Works natively with Apify's MCP server.


What data does the Etsy scraper extract?

FieldDescriptionAvailable In
listing_idUnique Etsy listing IDAll modes
titleFull product titleAll modes
urlProduct page URLAll modes
priceCurrent price (number, sale price if discounted)All modes
original_pricePre-discount price (null if not on sale)All modes
currencyThree-letter currency codeAll modes
is_on_saleWhether the item is discountedAll modes
ratingAverage star rating out of 5All modes
review_countTotal customer review countAll modes
num_favorersNumber of favourites / heartsAll modes
shop_nameSeller shop nameAll modes
shop_urlLink to seller's Etsy shopAll modes
shop_locationSeller's country/regionAll modes
shop_sales_countTotal shop salesAll modes
thumbnail_urlMain listing thumbnail image URLAll modes
is_free_shippingWhether free shipping is offeredAll modes
badge_star_sellerHas Etsy Star Seller badgeAll modes
badge_bestsellerHas Bestseller badgeAll modes
badge_etsy_pickHas Etsy's Pick badgeAll modes
imagesAll product image URLsDetail mode
descriptionFull product description textDetail mode
materialsMaterials listDetail mode
tagsSeller SEO tagsDetail mode
variationsSize / color / style optionsDetail mode
shipping_fromShips-from countryDetail mode
processing_timeEstimated production & prep timeDetail mode
review_idUnique review IDReview mode
review_ratingIndividual review star ratingReview mode
review_textReview body textReview mode
reviewer_nameReviewer display nameReview mode
review_dateReview submission dateReview mode
scrape_modeHow this record was collectedAll modes
scraped_atISO 8601 extraction timestampAll modes
source_urlURL scraped to produce this recordAll modes

How to scrape Etsy — step-by-step

1. Keyword search (fastest, cheapest)

Enter one or more keywords in Search Keywords. The actor runs an Etsy search for each keyword and paginates through results pages until maxResults is reached.

{
"searchQueries": ["handmade necklace", "vintage ceramic mug"],
"maxResults": 200,
"sortOrder": "most_relevant"
}

2. Direct Etsy URLs (most precise)

Paste any Etsy URL into Etsy URLs. The actor auto-detects whether it's a search results page, product listing page, or shop page and handles each correctly.

{
"startUrls": [
{ "url": "https://www.etsy.com/shop/MoonCraftStudio" },
{ "url": "https://www.etsy.com/listing/1234567890/silver-ring" }
],
"includeProductDetails": true
}

3. Full product detail scrape (richest data)

Enable Include Full Product Details to visit each product page and collect descriptions, materials, tags, variations, and all images. This makes runs slower because each listing gets its own page visit.

{
"searchQueries": ["boho jewelry"],
"maxResults": 50,
"includeProductDetails": true,
"includeReviews": true,
"maxReviewsPerProduct": 25
}

4. Filter before you pay

Use price range, category, free shipping, and on-sale filters so you only extract records you actually need:

{
"searchQueries": ["handmade ring"],
"category": "jewelry-and-accessories",
"sortOrder": "lowest_price",
"minPrice": 10,
"maxPrice": 50,
"freeShippingOnly": true,
"onSaleOnly": false,
"maxResults": 500
}

Pricing

This actor uses pay-per-event pricing at $0.003 per extracted record.

ResultsEstimated Cost
100 results~$0.30
500 results~$1.50
1,000 results~$3.00
5,000 results~$15.00

A small platform fee (based on memory usage and run duration) is also charged per run. Use the maxResults cap to control spend precisely — the actor stops exactly when the limit is reached.

Cost tip: Run in listing-only mode (default) for the cheapest rate. Enable includeProductDetails only when you need rich product-page data — it uses more compute per record.


Input parameters

ParameterTypeDefaultDescription
searchQueriesstring[]Keywords to search on Etsy
startUrlsURL[]Direct Etsy URLs (search, product, or shop)
maxResultsinteger50Maximum total records to extract
categorystringallFilter by Etsy category
sortOrderstringmost_relevantSort by relevance, price, or date listed
minPricenumberMinimum price filter (USD)
maxPricenumberMaximum price filter (USD)
freeShippingOnlybooleanfalseOnly return free-shipping products
onSaleOnlybooleanfalseOnly return products currently on sale
includeProductDetailsbooleanfalseVisit each product page for full details
includeReviewsbooleanfalseScrape customer reviews per product
maxReviewsPerProductinteger10Max reviews per listing (requires includeReviews)
proxyConfigurationobjectResidentialProxy settings (residential strongly recommended)

Output format

Results are pushed to the default Apify dataset. Each record is a flat JSON object — all fields are always present, with null for data not available in the current scrape mode. The scrape_mode field tells you how each record was collected.

Sample listing record (default mode):

{
"listing_id": "1234567890",
"title": "Handmade Silver Moonstone Ring — Boho Gift for Her",
"url": "https://www.etsy.com/listing/1234567890/handmade-silver-moonstone-ring",
"price": 34.99,
"original_price": null,
"currency": "USD",
"is_on_sale": false,
"rating": 4.8,
"review_count": 312,
"num_favorers": 1847,
"shop_name": "MoonCraftStudio",
"shop_url": "https://www.etsy.com/shop/MoonCraftStudio",
"shop_location": "United States",
"shop_sales_count": 4821,
"thumbnail_url": "https://i.etsystatic.com/...",
"images": null,
"is_free_shipping": true,
"badge_star_seller": true,
"badge_bestseller": false,
"badge_etsy_pick": false,
"description": null,
"materials": null,
"tags": null,
"variations": null,
"shipping_from": null,
"processing_time": null,
"scrape_mode": "listing",
"scraped_at": "2026-04-09T12:30:00.000Z",
"source_url": "https://www.etsy.com/search?q=handmade+necklace"
}

Use cases

Etsy market research & trend analysis Discover trending handmade and vintage products. Track what's bestselling across a niche, which badge types dominate search results, and how pricing is distributed by category. Build datasets to identify seasonal demand patterns.

Etsy competitor analysis Scrape a competitor's entire shop catalog. Analyse their tags, materials, pricing strategy, review velocity, and Star Seller status. Find the gaps in their catalog you can capitalise on.

Etsy price monitoring Schedule recurring runs to track price changes over time. Alert when competitors run sales, restock, or add new listings. Build historical price datasets for Amazon-style tracking.

Etsy SEO keyword research Collect the titles and seller tags that top-ranking listings use in your niche. Extract and analyse the most common keywords, phrases, and material descriptors across hundreds of bestsellers to optimise your own listings.

Etsy product sourcing & supplier research Find prolific shops and wholesale suppliers in specific categories. Filter by Star Seller badge and review count as quality signals. Export shop contact data for outreach.

AI and LLM pipelines Feed structured Etsy product data directly into Claude, GPT-4o, or any AI agent via the Apify MCP server for automated competitive analysis, product description generation, or trend summarisation.

Sentiment analysis from Etsy reviews Export thousands of customer reviews across a niche to train classifiers, extract product improvement insights, or identify recurring complaints and praise patterns.


Run via API

import { ApifyClient } from 'apify-client';
const client = new ApifyClient({ token: 'YOUR_API_TOKEN' });
const run = await client.actor('khadinakbar/etsy-all-in-one-scraper').call({
searchQueries: ['handmade jewelry', 'vintage lamp'],
maxResults: 500,
includeProductDetails: true,
sortOrder: 'most_relevant',
});
const { items } = await client.dataset(run.defaultDatasetId).listItems();
console.log(`Extracted ${items.length} Etsy products`);

Schedule runs, export to Google Sheets, connect to Zapier or Make, or trigger from n8n workflows using Apify's built-in integrations.


FAQ

Does this Etsy scraper require an API key or Etsy account? No. It scrapes Etsy's public pages only. No login, no API key, no account required.

Does it work for all Etsy categories? Yes — jewelry, clothing, home & living, vintage, art, craft supplies, and all other Etsy categories are supported.

Why do I need residential proxies? Etsy uses anti-bot protection (DataDome) that blocks datacenter IP ranges. Residential proxies rotate through real ISP addresses, making requests indistinguishable from regular browser traffic. The actor defaults to Apify's residential proxy pool for maximum reliability.

What's the difference between listing mode and detail mode? Listing mode (default) extracts data directly from search result pages — fast and cheap, returns ~20 core fields. Detail mode visits each listing's individual page to add description, materials, tags, all images, and variations — slower and more expensive per record, but returns ~30+ fields.

Can I scrape an entire Etsy shop? Yes. Paste the shop URL (e.g. https://www.etsy.com/shop/ShopName) into Etsy URLs. The actor paginates through the shop's full catalog automatically.

Can I scrape Etsy reviews? Yes. Enable includeReviews: true (requires includeProductDetails: true). Reviews are returned as separate records in the same dataset with scrape_mode: "review".

Why do some fields return null? Fields like description, materials, tags, and images only appear on individual product pages. In listing mode (reading from search result pages), these fields are unavailable and return null. Enable includeProductDetails to populate them.

How many results can I scrape? Up to 5,000 results per run. For larger datasets, schedule multiple runs with pagination or different keyword sets.


Works great with

  • Apify Google Sheets Integration — export results directly to a Google Sheet for filtering and sharing
  • Apify Scheduler — run on a recurring schedule to build historical pricing and trend datasets
  • Apify MCP Server — query your Etsy data from Claude, ChatGPT Operator, or any MCP-compatible AI agent
  • Make / Zapier — trigger Etsy scrapes and route output to any tool in your stack

This actor is intended for lawful extraction of publicly available data from Etsy's marketplace. Users are responsible for ensuring their use complies with Etsy's Terms of Service, applicable data protection regulations (GDPR, CCPA, etc.), and all relevant laws in their jurisdiction. The actor does not bypass authentication, access private data, or perform actions on behalf of any user account.