Etsy Search Scraper 2026
Pricing
from $2.00 / 1,000 results
Etsy Search Scraper 2026
Scrape Etsy search results with optional product detail enrichment. Extract listings with prices, ratings, images, and full product details including description, tags, materials, and shipping info.
Pricing
from $2.00 / 1,000 results
Rating
0.0
(0)
Developer
devcake
Maintained by CommunityActor stats
1
Bookmarked
70
Total users
52
Monthly active users
3 days ago
Last modified
Categories
Share
Scrape Etsy Data: Listings, Prices & Reviews at Scale
Etsy product research requires structured data you can pivot, not screenshots you can scroll. The Etsy Product Data Actor scrapes Etsy search results in bulk and enriches every listing with the full product detail page — prices, shops, ratings, reviews, photos, tags, materials, ships-from, taxonomy — so dropshippers, market researchers, and product analysts can move from "I wonder" to "I have the rows" in a single run. Run one query, batch a niche catalog, or compare competitors across shops.
🛒 What It Does
The Actor taps Etsy's internal search API for fast, reliable collection, then optionally walks each listing's detail page to pull the fields that don't surface in the search grid: full descriptions, gallery images, materials, view and favorite counts, and the complete taxonomy path. Every run streams structured rows straight to your Apify dataset where they can be downloaded, fed to a spreadsheet, or piped to a downstream model.
The default toggle enriches everything — you get the full record per product. For faster, lighter runs that only need search-page fields (price, shop name, rating, thumbnail), turn enrichment off. Either way, you end up with a clean dataset instead of a hand-built CSV.
🛒 Who It's For
- Dropshippers and resellers building a niche product catalog who need price, shop, and engagement data across hundreds of listings at once.
- Market researchers tracking what sells on Etsy, comparing shops in a vertical, or measuring tag and category distribution over time.
- AI / ML teams training product-search or recommendation models on real Etsy listing records.
- Trend hunters tracking category-level changes — new materials, rising tags, shifts in shop dominance.
- Pricing analysts who want to spot outliers in cost, materials, or ships-from mix for a given niche.
🛒 Data You Get
| Field | Description |
|---|---|
listing_id | Unique Etsy listing ID |
title | Product title as shown on Etsy |
price | Price with currency symbol (e.g. "USD 24.00") |
price_num | Numeric price value in USD |
currency_code | Currency (USD, EUR, GBP, …) |
shop_name | Name of the Etsy shop |
shop_id | Unique shop identifier |
rating | Average seller rating (0–5) |
review_count | Total reviews on the shop |
image_url | Main product thumbnail URL |
images | All gallery images (up to 9) |
detail_url | Direct link to the listing |
quantity | Available stock quantity |
views | Number of listing views |
favorites | Number of times favorited |
is_available | Whether the item is in stock |
is_sold_out | Whether the listing is sold out |
tags | Product tags (up to 13) |
materials | Materials list when published |
ships_from_country | Country the item ships from |
when_made | Year or range when made |
taxonomy_path | Full category breadcrumb on Etsy |
description | Full product description text |
🛒 Use Cases
How to scrape data from Etsy for a niche keyword?
Drop your term into the Actor, set a result cap, and run. The Actor returns every Etsy listing it can find for that query — title, price, shop, rating, photos — already deduped against prior runs. For example, a search for "minimalist ceramic vase" returns the full set of competing listings with pricing and shop signals, ready to filter by material or ships-from in a spreadsheet.
Can you scrape Etsy and pull review counts per listing?
Yes. With detail enrichment on (the default), every listing row includes the shop's rating and review_count, plus engagement signals (views, favorites) that aren't surfaced on the search grid. That's enough for a quick reputation screen before you commit to competitive research or sourcing.
How to compare Etsy listings across shops at category level?
Run the Actor once per niche, dedupe by shop_id, and pivot on taxonomy_path to compare shop dominance, rating distribution, and price ranges inside a category. Because every row carries the full taxonomy breadcrumb, you can roll up by leaf category without scraping Etsy twice.
How to monitor Etsy product trends over time?
Schedule the Actor on a cron — weekly or daily — for the same searchQueries. The detail view's views and favorites fields let you see rising listings without manual checks, and when_made reveals whether you're watching new stock arrive.
🛒 Quick Start
- Open the Actor in Apify Console and click Try for free — the input prefills with
["monster high"]so you can run a sample. - Edit
searchQueriesto one or more niche terms that match your catalog ("handmade silver earrings", "vintage denim jacket", or whatever your buyers search). - Set
maxListings(30–500) and toggleenrichWithDetailson for the full record, off for a faster lighter run. - Start the run and watch rows stream into the dataset. Download as CSV, JSON, or pipe to your stack.
🛒 Input Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
searchQueries | array of strings | ✅ Yes | One or more Etsy search terms. Each query runs independently. |
maxListings | integer | No | Maximum unique listings to return per query (30–500, default 48). |
enrichWithDetails | boolean | No | Fetch full product details (description, tags, materials, all images, engagement stats) for each listing (default on). |
🛒 Example
Input
{"searchQueries": ["minimalist ceramic vase"],"maxListings": 80,"enrichWithDetails": true}
Output (single listing)
{"listing_id": "1234567890","title": "Handmade Stoneware Vase, Matte Cream","price": "USD 48.00","price_num": 48.0,"currency_code": "USD","shop_name": "NorthBenchCeramics","shop_id": "12345","rating": 4.92,"review_count": 312,"image_url": "https://i.etsystatic.com/.../i.jpg","images": ["https://i.etsystatic.com/.../i1.jpg","https://i.etsystatic.com/.../i2.jpg"],"detail_url": "https://www.etsy.com/listing/1234567890/...","quantity": 5,"views": 12480,"favorites": 612,"is_available": true,"is_sold_out": false,"tags": ["ceramic vase", "stoneware", "minimalist", "home decor"],"materials": ["stoneware clay"],"ships_from_country": "United States","when_made": "2026","taxonomy_path": "Home & Living > Decor > Vases","description": "Wheel-thrown stoneware vase finished in matte cream …"}
🛒 FAQ
How to scrape data from Etsy?
Open the Actor's Input tab, set searchQueries to the keywords you care about (one or several — each runs independently), pick maxListings, leave enrichWithDetails on for the full record, and click Start. The Actor returns one row per listing into the dataset, ready to download as CSV or JSON.
Can you scrape Etsy without getting blocked?
Yes — this Actor uses residential proxies and managed request sessions, plus Etsy's internal search API. You get structured public listing data without manual pagination.
Does scraping Etsy violate their terms of service?
Etsy's terms restrict automated access at high volumes. The Actor respects a reasonable cap (maxListings ≤ 500 per query) and is intended for research, price comparison, and analytics — not for replicating Etsy's catalog. Consult Etsy's terms for the use case you have in mind.
How often can I run the Actor on the same query?
As often as your Apify plan allows — daily or weekly is the common cadence for trend tracking. Each run produces a fresh snapshot; comparing snapshots over time is how you spot trend movement in views, favorites, and price on the same niche without manual checks.
What's the difference between search-only and enriched output?
Search-only output (enrichment off) is faster and gives you title, price, shop, rating, thumbnail — what the search grid already shows. Enriched output also pulls each listing's detail page: full description, all gallery images, tags, materials, ships-from, and engagement stats (views, favorites). Default is enriched.