Etsy Product Listings & Shop Research Scraper
Collect Etsy product listings from keyword searches, category pages, and individual shops, with prices, ratings, seller badges, and optional full product detail across ten regional markets.
Open in Apify Store$0.99 / 1K on Free
Short answer
Etsy Product Listings & Shop Research Scraper is an Apify Store Actor for Etsy data that returns 8 published output fields, including title, priceValue, shopName, rating. It lists $0.99 per 1,000 results on the Free plan (pay per event), $0.49 on the Business plan. It takes 10 input settings, none required. It covers 5 of the 6 core Etsy fields this site tracks. Last updated Oct 31, 2026.
From the public Store listing and published build schema, synced 2026-11-12.What it returns
8 fields from the published dataset schema. Export as JSON, CSV or Excel, or read the dataset through the Apify API.
titlepriceValuecurrencyCodeshopNameratingreviewCountisAdurl
Not in the schema among the core Etsy fields: listing_id. The field matrix shows which other tools return them.
Input
| Setting | Type | Required | Default | What it does |
|---|---|---|---|---|
| startUrls | array | No | – | Etsy market URLs such as https://www.etsy.com/market/handmade_jewelry are the reliable route. Category URLs such as https://www.etsy.com/c/jewelry also work and expose more cards per page. Legacy /search?q= URLs are converted to the matching market URL automatically. Shop and individual listing URLs |
| searchQueries | array | No | – | Keywords to search on Etsy. Each query is mapped to Etsy's market page (https://www.etsy.com/market/<slug>), the route that works without a browser or login. If Etsy redirects a keyword to a category page, the actor follows that category route. Each query is scraped as a separate task. |
| maxItems | integer | No | 100 | Maximum number of listings to collect per URL or search query. A keyword market exposes at most 25 pages (about 200 listings); category URLs can expose more pages. Larger values return what Etsy exposes and report a partial result instead of pretending the request was complete. |
| includeDetails | boolean | No | false | Attempts to open each listing page for description, materials, tags, variations, images, and seller details. Etsy often blocks listing pages with DataDome. When that happens, rows are still returned with detailsStatus set to 'blocked' and the unavailable detail fields omitted; they are never filled |
| sortBy | string | No | – | Server-side Etsy ordering for market and category pages. |
| minPrice | number | No | 0 | Drop listings below this price in the selected market currency. Etsy does not expose a reliable server-side price filter on market pages, so this is applied to fetched cards. 0 disables the lower bound. |
| maxPrice | number | No | 0 | Drop listings above this price in the selected market currency. 0 disables the upper bound. |
| freeShippingOnly | boolean | No | false | Use Etsy's free-shipping market filter. |
| starSellerOnly | boolean | No | false | Use Etsy's Star Seller market filter. |
| country | string | No | US | Target Etsy market. Sets the market URL locale and request language, so prices and ranking match the selected region (for example Germany returns EUR and Japan returns JPY). |
Example input
Built from the input form's published example values and defaults.
{
"searchQueries": [
"handmade jewelry"
],
"maxItems": 1,
"includeDetails": false,
"minPrice": 0,
"maxPrice": 0,
"freeShippingOnly": false,
"starSellerOnly": false,
"country": "US"
} Run it from code or an AI agent
The same run through the Apify API, with the example input. You need an Apify API token; the run is billed to your account at the Store price.
Python
from apify_client import ApifyClient
client = ApifyClient("<YOUR_APIFY_TOKEN>")
run_input = {
"searchQueries": [
"handmade jewelry"
],
"maxItems": 1,
"includeDetails": False,
"minPrice": 0,
"maxPrice": 0,
"freeShippingOnly": False,
"starSellerOnly": False,
"country": "US"
}
run = client.actor("nimbryxo-studio/etsy-product-listings-and-shop-research-scraper").call(run_input=run_input)
if run is None:
raise RuntimeError("The Actor run was not found.")
for item in client.dataset(run.default_dataset_id).iterate_items():
print(item) pip install apify-client
JavaScript
import { ApifyClient } from "apify-client";
const client = new ApifyClient({ token: "<YOUR_APIFY_TOKEN>" });
const input = {
"searchQueries": [
"handmade jewelry"
],
"maxItems": 1,
"includeDetails": false,
"minPrice": 0,
"maxPrice": 0,
"freeShippingOnly": false,
"starSellerOnly": false,
"country": "US"
};
const run = await client.actor("nimbryxo-studio/etsy-product-listings-and-shop-research-scraper").call(input);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
console.log(items); npm install apify-client
cURL
curl -X POST "https://api.apify.com/v2/actors/nimbryxo-studio~etsy-product-listings-and-shop-research-scraper/run-sync-get-dataset-items" -H "Authorization: Bearer $APIFY_TOKEN" -H "Content-Type: application/json" -d '{"searchQueries":["handmade jewelry"],"maxItems":1,"includeDetails":false,"minPrice":0,"maxPrice":0,"freeShippingOnly":false,"starSellerOnly":false,"country":"US"}' Waits for the run and returns the dataset items (runs over 300 seconds return HTTP 408; start an async run instead).
MCP (AI agents)
{
"mcpServers": {
"apify": {
"url": "https://mcp.apify.com?tools=nimbryxo-studio/etsy-product-listings-and-shop-research-scraper",
"headers": {
"Authorization": "Bearer <YOUR_APIFY_TOKEN>"
}
}
}
} Adds this Actor as a tool in an MCP client that takes a remote server URL (Cursor, VS Code, Claude Code) through Apify's hosted MCP server. OAuth sign-in also works without the header. Clients that only start local servers can wrap the URL with npx mcp-remote.
What a run costs
The result rate falls on higher Apify plans. Each figure is the published per-result rate times the number of results.
| Apify plan | Per 1,000 | 10,000 results | 100,000 results |
|---|---|---|---|
| Free plan | $0.99 | $9.90 | $99 |
| Starter plan | $0.82 | $8.20 | $82 |
| Scale plan | $0.66 | $6.60 | $66 |
| Business plan | $0.49 | $4.90 | $49 |
- Every run also has a start event, charged per GB of memory (minimum one): $0.10 on Free, $0.03 on Business. At its default memory of 4 GB a run starts at $0.40 on Free. Fewer, larger runs keep this small.
- The Free plan includes $5 of monthly usage (Apify pricing, checked 2026-11-11); at the Free rate that covers at most about 5,050 results, less start events and platform usage.
- Worked example: 10,000 results in one run on the Free plan cost $10.30 ($9.90 for results + $0.40 start), plus Apify platform usage (compute), billed separately by Apify.
- Pay per event. Platform usage (compute) is billed by Apify on top of the event prices. Compare other tools in the cost estimator.
Where it fits among Etsy routes
It ranks 1 of 1 catalogue Actors for Etsy on the published formula (fields, price, reliability, freshness). Its line is highlighted on the map.
- 1 Etsy Product Listings & Shop Research Scraper 8 output fields, pay per event 5 of 6 core fields
$0.99 / 1K - + 6 other Store tools, combined Reference only 6 of 6 core fields
from $0.44 / 1K - API Etsy Open API v3 Public API fields not compared
Stops are fields. A ring means the field is in that route's published output schema; no ring means the line passes without it. Bold labels are the core fields for this website, the rest are fields that differ between routes. A white capsule means every data line stops there. The red line is the official API; its field coverage is not compared. A crossed red line means there is no open official API.
Official route: Etsy Open API v3
Public API. The Open API v3 provides endpoints for shops, listings, receipts and transactions with OAuth authentication.
No per-call fee is published for standard API use.
Other Store tools for Etsy
Reference only, from their public listings.
| Tool | Fields | Price / 1K |
|---|---|---|
| Etsy Listings Scraper | 107 | $0.44 |
| Etsy Scraper | 32 | $3.50 |
| Etsy Listings Scraper: Prices, Shop Ratings & Bestsellers | 11 | $1.50 |
| Etsy Listings Scraper | 21 | $4.00 |
| Etsy Listings Scraper | 6 | $1.00 |
What people use it for
- Pricing research
- Assortment tracking
- Shop comparison
Similar Actors
Mercari Japan Listings by Condition, Price & Status
Search Mercari Japan by keyword and filter by item condition, listing status, and price range in JPY, with seller, category, images, and listing…
Wallapop Listings by Keyword, Item & Seller
Searches Wallapop by keyword and location, fetches a specific item by URL, or pulls a seller's full listing set, returning price, location,…
Allegro.pl Listings by Search, Category or URL
Find Allegro.pl products by keyword search, category page, or direct offer URL, with price, seller rating, condition, shipping, and rating…
Amazon Search, Category & Seller Listings Extractor
Get Amazon products from search results, categories, seller storefronts, or ASIN lookups across 20+ marketplaces, with price, rating, badges,…
IndiaMART B2B Product Listings by City & State
Search IndiaMART's product listings by keyword, optionally narrowed to an Indian state or city, with price, MOQ, supplier name/location, rating,…
Shopee Shop Profile, Item & Category Scraper
Collect Shopee shop profiles with ratings and followers, shop product feeds, full item detail pages, and curated category listings across six…
Questions people ask
How much does Etsy Product Listings & Shop Research Scraper cost?
The published result rate depends on your Apify plan: $0.99 per 1,000 on Free, $0.82 per 1,000 on Starter, $0.66 per 1,000 on Scale, $0.49 per 1,000 on Business. So 10,000 results cost about $9.90 on the Free plan and $4.90 on Business, plus a start fee of $0.10 per run per GB of memory on Free. Platform usage is billed separately.
What data does Etsy Product Listings & Shop Research Scraper return?
Its published output schema lists 8 fields: title, priceValue, currencyCode, shopName, rating, reviewCount, isAd, url. A listed field is not guaranteed to be filled in every row.
What input does Etsy Product Listings & Shop Research Scraper need?
No input is strictly required; the defaults run as is. Common settings: startUrls, searchQueries, maxItems, includeDetails, sortBy, minPrice.
How do I run Etsy Product Listings & Shop Research Scraper from Python or the API?
Use the Apify API client: in Python, ApifyClient(token).actor("nimbryxo-studio/etsy-product-listings-and-shop-research-scraper").call(run_input=...), then read the run's default dataset (run.default_dataset_id); in JavaScript the same call is client.actor("nimbryxo-studio/etsy-product-listings-and-shop-research-scraper").call(input). Without a client, POST the input JSON to https://api.apify.com/v2/actors/nimbryxo-studio~etsy-product-listings-and-shop-research-scraper/run-sync-get-dataset-items with your API token. Ready-to-paste code with the example input is on this page.
Sources
- Etsy Product Listings & Shop Research Scraper on Apify Store
- Published build with input and output schema (JSON)
- Etsy Open API v3 documentation
Cite this page
Scraper Finder. "Etsy Product Listings & Shop Research Scraper." https://scraperfinder.com/catalogue/etsy-product-listings-and-shop-research-scraper/ (data checked 2026-11-12).
Run Etsy Product Listings & Shop Research Scraper
$0.99 per 1,000 results. Paste the example input above, set your Etsy query, then export the dataset. Still choosing? Compare every Etsy route.