Poshmark Scraper — Prices, Sold Comps & Seller Leads
Pricing
from $1.50 / 1,000 results
Poshmark Scraper — Prices, Sold Comps & Seller Leads
Scrape Poshmark listings across the US & Canada. Search any keyword or department and pull price, size, brand, condition, colors, photos, likes and seller username/name for lead-gen — plus sold-item price history (sold comps). Fast, structured, no login.
Pricing
from $1.50 / 1,000 results
Rating
0.0
(0)
Developer
Haketa
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
19 hours ago
Last modified
Categories
Features
Share
🛍️ Poshmark Scraper — Resale Listings, Sold Comps & Seller Leads
Extract Poshmark listings at scale with real-time prices, historical sold comps, product variants, high-resolution photos, and active seller leads across US and Canada marketplaces. Search any keyword, filter by department, or track sold listings to build competitive resale intelligence — exported directly to JSON, CSV, Excel, or API.
⚡ At a glance
| Capability | Detail |
|---|---|
| Target Platforms | Poshmark US (poshmark.com), Poshmark Canada (poshmark.ca) |
| Data Extracted | Title, current price, original retail MSRP, currency, brand, size, condition, tags, likes, shares, cover photo, gallery images, seller handle, seller display name, closet URL |
| Market Intelligence | Available live inventory vs. historical sold comps (real transaction values) |
| Max Depth | Up to 5,000 listings per search query with seamless cursor pagination |
| Authentication | 100% public access — no account, login, or session cookies required |
| Execution Speed | ~100 items in 5–8 seconds, ~500 items in ~30 seconds, ~1,000 items in under 60 seconds |
| Export Formats | Dataset download in JSON, CSV, Excel, XML, HTML, or programmatic Apify REST API |
| Integration Support | Webhooks, Google Sheets, Make, Zapier, Airbyte, Keboola, Python, Node.js |
🔎 Why scrape Poshmark?
Poshmark is the premier social commerce and resale destination in North America, hosting tens of millions of active listings across fashion, luxury, footwear, vintage, home decor, electronics, and beauty. For e-commerce entrepreneurs, boutique resellers, consignment networks, and pricing analysts, Poshmark represents a continuous stream of market price trends and supplier contacts.
However, Poshmark does not provide a public bulk export utility. Extracting data manually through web searches is tedious, rate-limited, and impossible to scale across hundreds of brands or categories.
This Poshmark Scraper bridges that gap. It runs server-side HTTP extractions, seamlessly following cursor pagination loops to collect complete listing datasets in seconds. Whether you need live inventory feeds or historical sold price comps, you get clean, structured data ready for your analytics warehouse.
Core Business Advantages
- 🏷️ Accurate Sold Comps Pricing: Never guess asking prices. Filter by sold inventory to analyze what buyers actually paid rather than wishful list prices.
- 📦 Automated Sourcing & Arbitrage: Discover underpriced luxury and designer items within minutes of being posted by sorting by newest or lowest price.
- 👥 High-Converting Seller Lead Generation: Extract seller handles, display names, and closet URLs by category to source inventory or recruit top sellers.
- 📊 Brand & Category Share of Voice: Monitor brand volume, average discount rates against MSRP, and top-performing item categories.
- 📈 Trend & Engagement Tracking: Analyze like counts, comment volumes, and share counts to detect viral aesthetic trends early.
✨ Features & Capabilities
- Multi-Region Coverage: Toggle between United States (
poshmark.com) and Canada (poshmark.ca) with localized currency formatting (USD/CAD). - Available & Sold Items: Select
availablefor live inventory,soldfor historical transaction benchmarks, orallfor complete historical velocity tracking. - Deep 1,000+ Cursor Pagination: Overcomes infinite scroll limits by utilizing server-side cursor tracking, pulling up to 5,000 items per search without loop errors or duplicates.
- Department & Category Filtering: Search across Women, Men, Kids, Home, Electronics, Pets, or browse all departments universally.
- Precision Sorting Options: Sort by relevance, newest listings, price high-to-low, price low-to-high, or highest like counts.
- Zero Authentication Required: Operates entirely over public endpoints without requiring personal accounts or risky cookie sessions.
- Instant Cloud Export: Stream results immediately into Google Sheets, Airtable, Snowflake, or download flat CSV/Excel files.
📥 Input Parameters
Configure the scraper easily using the Apify Console UI or via raw JSON payload:
| Parameter | Type | Default | Description |
|---|---|---|---|
query | string | "lululemon leggings" | Search keyword across title, brand, category, and description. Leave empty to browse a full department. |
marketplace | string | "us" | Select "us" for United States (poshmark.com) or "ca" for Canada (poshmark.ca). |
department | string | "All" | Restrict results: "All", "Women", "Men", "Kids", "Home", "Electronics", "Pets". |
inventoryStatus | string | "available" | Filter by "available" (active for sale), "sold" (sold comps), or "all". |
sortBy | string | "relevance" | Order by "relevance", "newest", "price_high_low", "price_low_high", or "most_liked". |
maxItems | integer | 100 | Maximum listings to collect. Set to 0 for unlimited (all available up to ~5,000 per search). |
proxyConfiguration | object | {"useApifyProxy": false} | Optional proxy settings. Scraper runs cleanly with direct HTTP or datacenter proxies. |
📊 Extracted Data Fields
Every dataset record delivers normalized listing and seller information structured into clean fields:
🏷️ Pricing & Product Details
| Field | Type | Description | Coverage |
|---|---|---|---|
id | string | Unique Poshmark post identifier | 🟢 High (100%) |
title | string | Title headline of the listing | 🟢 High (100%) |
listingUrl | string | Direct public web URL to the listing | 🟢 High (100%) |
price | number | Current listing price or final sold price | 🟢 High (100%) |
originalPrice | number | Original retail / MSRP price if reported by seller | 🟡 Conditional |
currency | string | Currency code (USD or CAD) | 🟢 High (100%) |
brand | string | Item brand name (e.g., Nike, Levi's, Lululemon) | 🟢 High (95%+) |
size | string | Standardized size tag or custom dimension string | 🟢 High (95%+) |
condition | string | Condition rating tag (nwt, ret, etc.) | 🟢 High (90%+) |
newWithTags | boolean | true if item is brand new with tags attached | 🟢 High (100%) |
department | string | Department classification (Women, Men, Kids, etc.) | 🟢 High (100%) |
category | string | Specific subcategory (e.g., Jeans, Dresses, Sneakers) | 🟢 High (95%+) |
colors | array | Color descriptors assigned to the item | 🟢 High (90%+) |
styleTags | array | Seller style and trend tags (e.g., Y2K, Boho, Minimalist) | 🟡 Conditional |
📸 Media & Engagement
| Field | Type | Description | Coverage |
|---|---|---|---|
coverImage | string | High-resolution primary photo URL | 🟢 High (100%) |
images | array | Complete gallery of high-resolution product photos | 🟢 High (100%) |
likeCount | number | Total number of shopper likes on this post | 🟢 High (100%) |
commentCount | number | Total inquiry and discussion comments | 🟢 High (100%) |
shareCount | number | Total times item was shared to Poshmark parties | 🟢 High (100%) |
description | string | Full markdown item description by the seller | 🟢 High (95%+) |
status | string | Availability status (available or sold_out) | 🟢 High (100%) |
👤 Seller Intelligence & Metadata
| Field | Type | Description | Coverage |
|---|---|---|---|
sellerUsername | string | Public username handle of the seller | 🟢 High (100%) |
sellerName | string | Full display name of the seller | 🟢 High (95%+) |
sellerId | string | Internal alphanumeric Poshmark user ID | 🟢 High (100%) |
sellerProfileUrl | string | Direct link to the seller's storefront closet | 🟢 High (100%) |
createdAt | string | ISO timestamp of original listing publication | 🟢 High (95%+) |
scrapedAt | string | ISO timestamp when record was extracted | 🟢 High (100%) |
💻 Sample Output Record
{"id": "66f123456789abcdef012345","title": "Lululemon Align High-Rise Pant 25\" - Black - Size 6","listingUrl": "https://poshmark.com/listing/66f123456789abcdef012345","price": 68,"originalPrice": 98,"currency": "USD","brand": "Lululemon","size": "6","condition": "nwt","newWithTags": true,"department": "Women","category": "Pants & Jumpsuits","colors": ["Black"],"styleTags": ["Athleisure", "Yoga", "Classic"],"status": "sold_out","likeCount": 24,"commentCount": 3,"shareCount": 42,"description": "Brand new with tags Lululemon Align 25 inch tights in classic black. Never worn, perfect condition.","coverImage": "https://di2ponv0v5otw.cloudfront.net/posts/2024/09/23/66f123/m_66f123.jpg","images": ["https://di2ponv0v5otw.cloudfront.net/posts/2024/09/23/66f123/m_66f123.jpg","https://di2ponv0v5otw.cloudfront.net/posts/2024/09/23/66f123/m_66f124.jpg"],"sellerUsername": "resalepros_closet","sellerName": "Sarah Jenkins","sellerId": "5e1234567890abcdef123456","sellerProfileUrl": "https://poshmark.com/closet/resalepros_closet","createdAt": "2024-09-23T14:15:30.000Z","scrapedAt": "2026-11-10T13:30:00.000Z"}
💡 Practical Input Configurations
1. Resale Sold Comps Analysis
Target historical sold listings for a specific luxury handbag model to determine actual market clearing price and discount percentage from retail MSRP.
{"query": "Chanel Classic Flap Medium Caviar","marketplace": "us","department": "Women","inventoryStatus": "sold","sortBy": "newest","maxItems": 200}
2. Sourcing Arbitrage Opportunities
Search for newly posted designer items sorted by lowest price to quickly flag underpriced deals before other buyers spot them.
{"query": "Arc'teryx Beta LT Jacket","marketplace": "us","department": "Men","inventoryStatus": "available","sortBy": "price_low_high","maxItems": 150}
3. High-Volume Seller Lead Generation
Browse an entire department without keyword restrictions to identify power sellers with high engagement metrics.
{"query": "","marketplace": "us","department": "Women","inventoryStatus": "available","sortBy": "most_liked","maxItems": 500}
4. Canadian Market Price Comparison
Scrape identical queries across Poshmark Canada in Canadian Dollars (CAD) to evaluate international cross-border resale arbitrage margins.
{"query": "Aritzia Super Puff","marketplace": "ca","department": "Women","inventoryStatus": "available","sortBy": "newest","maxItems": 300}
🚀 Step-by-Step Usage Guide
Via Apify Console
- Navigate to the Poshmark Scraper page in the Apify Store.
- Click Try for free or Start.
- In the input form, enter your desired search query (e.g.
vintage levis 501). - Select your target marketplace (
usorca) and listing status (available,sold, orall). - Choose how many items to scrape (e.g.
100for a quick scan, or1000for deep research). - Click Save & Start to execute the scraper.
- Once finished, inspect the dataset in the Storage tab and export to CSV, JSON, or Excel.
Programmatic Python Integration
Connect the scraper directly to your Python data science pipeline using the official apify-client:
from apify_client import ApifyClient# Initialize client with your Apify API tokenclient = ApifyClient("YOUR_APIFY_TOKEN")# Prepare scraper inputsrun_input = {"query": "patagonia fleece pullover","marketplace": "us","department": "Men","inventoryStatus": "available","sortBy": "relevance","maxItems": 250,}# Run the actor and wait for completionrun = client.actor("haketa/poshmark-scraper").call(run_input=run_input)# Fetch dataset items as a list of dictionariesdataset_items = client.dataset(run["defaultDatasetId"]).list_items().itemsprint(f"Collected {len(dataset_items)} Poshmark listings.")
Programmatic Node.js Integration
Integrate into your Node.js or TypeScript backend application:
import { ApifyClient } from 'apify-client';const client = new ApifyClient({token: 'YOUR_APIFY_TOKEN',});const input = {query: 'nike dunk low panda',marketplace: 'us',department: 'Men',inventoryStatus: 'sold',sortBy: 'newest',maxItems: 500,};const run = await client.actor('haketa/poshmark-scraper').call(input);const { items } = await client.dataset(run.defaultDatasetId).listItems();console.log(`Successfully extracted ${items.length} sold comps from Poshmark.`);
🎯 High-Impact Business Applications
Resale Inventory Pricing
Calculate dynamic pricing for resale consignment stores. By comparing current asking prices against historical sold comps, inventory managers can price items to maximize turnover velocity while avoiding profit-draining markdowns.
Fashion Trend & Streetwear Forecasting
Track emerging micro-trends by monitoring weekly increases in like and share metrics on vintage or streetwear listings. Spot growing interest in retro silhouettes before primary retailers register the demand shift.
Sourcing & Liquidation Arbitrage
Consignment businesses can systematically scan for mispriced designer apparel, estate liquidation lots, or bundled clothing packages posted by casual sellers below liquidation wholesale value.
B2B Lead Generation for Reseller Tools
Software platforms offering cross-listing utilities, inventory tracking, or automated sharing tools can build targeted prospect lists of active Poshmark closet owners categorized by product niche and volume.
Counterfeit Detection & Brand Protection
Brand enforcement agencies can monitor the volume of counterfeit-prone luxury goods being circulated, tracking repeat violators, suspicious deep discounts, and unauthorized distributor networks.
Secondary Market Economic Benchmarking
Financial analysts and retail consultancies can measure price elasticity, discount depth from MSRP, and consumer willingness to pay across secondhand apparel categories during inflationary economic cycles.
❓ Frequently Asked Questions
Does this scraper require a Poshmark account or login credentials?
No. The scraper accesses publicly indexable listing data directly without requiring user authentication, login credentials, or session cookies.
How does pagination work when requesting over 1,000 listings?
Poshmark uses an internal cursor-based pagination mechanism rather than conventional page numbers. This scraper tracks and submits cursors automatically, continuously de-duplicating records until your requested limit is reached or the query results are exhausted.
What is the maximum number of items returned per search?
Poshmark caps individual search queries at approximately 5,000 items. To collect larger datasets, divide your target collection across multiple specific subcategories or brand keywords.
Can I extract both active and sold items in the same run?
Yes. Set inventoryStatus: "all" to collect both active listings and historical sold comps in a single unified dataset. Each record includes a status field (available or sold_out) for straightforward filtering.
How does sold comps data help my business?
Active listing prices represent seller expectations, whereas sold comps reflect actual transaction prices agreed upon by real buyers. Analyzing sold comps provides an accurate picture of real market clearing prices.
Are Canadian listings converted to US Dollars?
No. When scraping Poshmark Canada (marketplace: "ca"), listings are reported in Canadian Dollars (CAD) as published by Canadian sellers. US listings (marketplace: "us") are reported in USD.
Can I schedule automated recurring runs?
Yes. In the Apify Console, navigate to the Schedules tab to set up automated hourly, daily, or weekly runs. Newly discovered listings can be pushed automatically to your database or webhook endpoints.
What should I do if a search returns zero results?
Check that your keyword spelling matches common marketplace terminology and that your chosen department does not conflict with the search term (for instance, searching for "mens boots" inside the "Women" department).
🔗 Related Marketplace Scrapers
Expand your e-commerce data pipeline with these complementary tools:
- eBay Scraper — Extract active listings and completed sold comps across worldwide eBay domains.
- Mercari Scraper — Collect secondhand item pricing, condition, and seller profiles from Mercari.
- OfferUp Scraper — Extract local pickup and shipping marketplace deals across US cities.
- Depop Scraper — Track vintage fashion, streetwear trends, and gen-Z reseller closets.
- Grailed Scraper — Extract luxury menswear, streetwear archives, and designer footwear.
📋 Changelog
Version 1.2 — 2026-11
- Deep Pagination Unlocked: Fully removed rigid page limitations; searches now paginate continuously up to 1,000+ items or complete query exhaustion.
- Fast Prefill Optimization: Adjusted default prefill volume to 100 items for sub-10-second verification runs.
- Schema Hardening: Set
minimum: 0anddefault: 0across integer limits with clean empty-run fallbacks. - Enhanced Data Sanitization: Improved price parser handling, style tag extraction, and photo URL normalization.
- Documentation Upgrade: Comprehensive overhaul with field coverage indicators, SEO taxonomy, and architecture specifications.
Version 1.1 — 2026-09
- Added Canada marketplace (
poshmark.ca) support alongside US (poshmark.com). - Integrated sold-comps extraction mode (
inventoryStatus: "sold"). - Added multi-currency parsing (
USD,CAD).
Version 1.0 — 2026-09
- Initial public release of high-performance HTTP Poshmark scraper.
- Built-in deduplication and cursor tracking engine.