Fast Facebook Marketplace Scraper ($1/k💰)
Pricing
from $1.00 / 1,000 results
Fast Facebook Marketplace Scraper ($1/k💰)
Scrape Facebook Marketplace listings by keyword or search URL without login. Extract product details, prices, locations, photos, and seller data into clean structured records. Cost-efficient ($1/k💰)
Pricing
from $1.00 / 1,000 results
Rating
0.0
(0)
Developer
karamelo
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
8 days ago
Last modified
Categories
Share
Facebook Marketplace Scraper: Reliable Local & Regional Product Data Extraction
Facebook Marketplace is one of the largest peer-to-peer and business commerce ecosystems in the world, connecting millions of local buyers and sellers daily across thousands of metropolitan areas. Whether you are tracking market pricing trends, sourcing profitable inventory for resale, monitoring local supply-demand fluctuations, or building real-time alerts for rare items, access to structured Marketplace data provides an unparalleled competitive edge.
The Facebook Marketplace Scraper is a production-grade Apify Actor designed to extract clean, standardized product listings from Facebook Marketplace at scale. It allows you to search by keyword query or scrape specific Marketplace category and search URLs without requiring personal accounts or session credentials. With customizable filters for location, pricing, item condition, recency, and delivery methods, this automation transforms unstructured local listings into clean, machine-readable datasets formatted in JSON, CSV, and Excel.
Why Choose Facebook Marketplace Scraper?
- Flexible Search Methods: Run targeted keyword searches across any supported city or provide custom Facebook Marketplace search URLs directly.
- Rich Multi-Attribute Filtering: Refine listings by minimum and maximum price, listing age (last 24 hours, 7 days, or 30 days), item condition (new, like-new, good, fair), sorting preference, and delivery type.
- Structured, Normalized Output: Every record provides consistent top-level fields including listing title, price, geographical city/state, availability flags (sold, pending), photo URLs, category identifiers, and direct item URLs.
- Fast, Lightweight Architecture: Designed for rapid batch extraction and high throughput, enabling enterprise-scale monitoring without unnecessary execution overhead.
- Enterprise Proxy Compatibility: Fully compatible with Apify residential proxy infrastructure to maintain high availability and uninterrupted data collection across geographic regions.
- No Personal Login Required: Operates on public search results without requesting user credentials, eliminating account risk and ensuring effortless deployment into automated workflows.
Practical Applications & Industry Use Cases
1. Resale Arbitrage and Inventory Sourcing
Flippers, vintage curators, and refurbished electronics retailers leverage automated Marketplace feeds to identify mispriced goods the moment they appear. By setting up scheduled runs targeting specific electronics, instruments, designer apparel, or tools, sourcing specialists can contact sellers before competitors discover the listing.
2. Local Market Intelligence and Price Benchmarking
Retailers, pawn shops, and liquidators use aggregated Marketplace data to understand prevailing second-hand market values for consumer electronics, furniture, appliances, and recreational vehicles across various metro areas. This pricing intelligence informs trade-in values and competitive retail pricing.
3. Supply and Demand Regional Analytics
Market research analysts track listing volumes and turnover rates across different cities to measure consumer spending power, economic health, and geographic demand patterns for specific brands and equipment categories.
4. Vehicle & Equipment Monitoring
Dealerships and independent brokers track private-party vehicle listings, farm machinery, trailers, and commercial equipment listed across suburban and rural jurisdictions, spotting high-margin buying opportunities within regional pickup radiuses.
5. Academic & Economic Research
Economists and social scientists examine informal commerce dynamics, consumer behavior, durable goods lifecycles, and localized economic resilience using longitudinal Marketplace listing data.
Supported Search Modes
The Actor supports two complementary modes of operation depending on your workflow requirements:
Mode A: Keyword Search with Location & Attribute Filters
Specify a searchQuery (such as "mechanical keyboard" or "espresso machine") and choose your target marketplaceLocation (such as "chicago", "phoenix", or "nyc"). You can further customize your search by applying price boundaries, condition filters, and sorting parameters. The Actor automatically constructs the necessary search query and extracts matching listings.
Mode B: Direct Search URLs
If you have already configured a complex search on Facebook Marketplace with custom radius parameters or specific category trees, paste the full URL into the startUrls list. When startUrls are provided, they take immediate precedence over keyword filters, allowing you to replicate specific web searches directly.
Complete Input Configuration Reference
The Actor accepts the following parameters through the Apify Console or JSON API payload:
| Parameter | Type | Default | Description |
|---|---|---|---|
searchQuery | String | "laptop" | The primary keyword or search phrase to look up (e.g., "standing desk", "canon camera"). |
marketplaceLocation | String | "chicago" | City slug identifying the target marketplace geographic center (e.g., "nyc", "phoenix", "losangeles", "dallas"). |
startUrls | Array | [] | List of direct Marketplace search URLs. If supplied, URL scraping takes precedence over the keyword builder. |
sortBy | String | "best_match" | Order in which listings are returned. Options: "best_match", "creation_time_descend" (newest first), "price_ascend", "price_descend", "distance_ascend". |
minPrice | Integer | 0 | Minimum listing price threshold. Set to 0 for no minimum. |
maxPrice | Integer | 0 | Maximum listing price threshold. Set to 0 for no upper ceiling. |
daysSinceListed | String | "0" | Recency filter. Values: "0" (Any time), "1" (Last 24 hours), "7" (Last 7 days), "30" (Last 30 days). |
deliveryMethod | String | "all" | Delivery options filter. Values: "all", "local_pick_up" (Local pick up only), "shipping" (Shipping only). |
conditionNew | Boolean | false | When enabled, filters results to include items listed in brand-new condition. |
conditionUsedLikeNew | Boolean | false | When enabled, includes items listed as used in like-new condition. |
conditionUsedGood | Boolean | false | When enabled, includes items listed as used in good condition. |
conditionUsedFair | Boolean | false | When enabled, includes items listed as used in fair condition. |
exact | Boolean | false | When enabled, instructs the search engine to match keyword phrases more strictly. |
maxItems | Integer | 50 | Maximum total listings to collect and store in the dataset during a single run. |
proxyConfiguration | Object | { "useApifyProxy": true } | Apify Proxy configuration settings. Residential proxies are recommended for Facebook Marketplace. |
Output Data Schema
Each scraped listing produces a flat, structured dataset record containing the following verified fields:
| Field | Data Type | Description |
|---|---|---|
id | String | The unique numeric identifier assigned to the listing by Facebook. |
title | String | The listing headline or title set by the seller. |
custom_title | String / Null | Custom title or secondary headline when specified. |
price | String | The human-readable formatted price string (e.g., "$120", "$450", or "N/A" for free/unspecified items). |
price_amount | Number / Null | Numerical parsed price amount (e.g. 120.00). |
listing_price | Object / Null | Detailed price object containing formatted_amount, amount, and amount_with_offset_in_currency. |
strikethrough_price | String / Null | Formatted original price before discounts, if discounted. |
location | String / Null | Reverse-geocoded location representing the seller's city and state (e.g., "Chicago, IL"). |
location_details | Object / Null | Detailed location object with city, state, and display_name. |
is_sold | Boolean | Indicates whether the seller has marked the item as sold. |
is_pending | Boolean | Indicates whether a sale agreement is currently pending for this item. |
is_live | Boolean | Indicates whether the listing is currently active and live on Marketplace. |
is_hidden | Boolean | Indicates whether the listing is hidden or delisted. |
creation_time | Integer / Null | Unix epoch timestamp indicating when the listing was first published. |
timestamp | String / Null | ISO 8601 formatted publication timestamp. |
image_url | String / Null | Direct CDN URL for the primary high-resolution photograph of the product. |
delivery_types | Array | List of available delivery and pickup mechanisms, such as ["IN_PERSON"], ["DOOR_PICKUP"], or ["SHIPPING"]. |
category_id | String / Null | Facebook internal category classification identifier for the product group. |
subtitle | String / Null | Listing subtitle or badge text (e.g., Dealership, mileage) when available. |
seller | Object / Null | Seller profile metadata containing name and id when made publicly accessible. |
marketplace_url | String | Direct canonical URL to the item page on Facebook Marketplace. |
Sample Input Examples
Example 1: Sourcing Refurbished Laptops in Chicago
{"searchQuery": "thinkpad laptop","marketplaceLocation": "chicago","minPrice": 150,"maxPrice": 600,"sortBy": "creation_time_descend","daysSinceListed": "7","conditionUsedGood": true,"conditionUsedLikeNew": true,"maxItems": 100,"proxyConfiguration": {"useApifyProxy": true,"apifyProxyGroups": ["RESIDENTIAL"]}}
Example 2: Finding Vintage Audio Equipment with Shipping
{"searchQuery": "turntable vinyl","marketplaceLocation": "nyc","deliveryMethod": "shipping","minPrice": 50,"maxPrice": 350,"sortBy": "best_match","maxItems": 40,"proxyConfiguration": {"useApifyProxy": true,"apifyProxyGroups": ["RESIDENTIAL"]}}
Example 3: Scraping a Pre-Configured Marketplace URL
{"startUrls": ["https://www.facebook.com/marketplace/phoenix/search/?query=gaming%20pc&maxPrice=1200"],"maxItems": 50,"proxyConfiguration": {"useApifyProxy": true,"apifyProxyGroups": ["RESIDENTIAL"]}}
Sample Output Record
The following is an illustrative record generated from a live search run:
{"id": "1366679091707195","title": "Vintage SLR Camera and 50mm Lens Kit","custom_title": "Vintage SLR Kit","price": "$175","price_amount": 175,"listing_price": {"formatted_amount": "$175","amount_with_offset_in_currency": "17500","amount": "175.00"},"strikethrough_price": "$220","location": "Chicago, IL","location_details": {"city": "Chicago","state": "IL","display_name": "Chicago, Illinois"},"is_sold": false,"is_pending": false,"is_live": true,"is_hidden": false,"creation_time": 1787135313,"timestamp": "2026-08-19T10:28:33.000Z","image_url": "https://scontent-lga3-3.xx.fbcdn.net/v/t39.84726-6/sample_camera_photo.jpg?stp=c0.0.261.261a_dst-jpg_p261x260_tt6&_nc_cat=106&ccb=1-7","delivery_types": ["IN_PERSON","DOOR_PICKUP"],"category_id": "393860164117441","subtitle": "Vintage Photography","seller": {"name": "David Miller","id": "100084729104821"},"marketplace_url": "https://www.facebook.com/marketplace/item/1366679091707195/"}
Step-by-Step Quick Start Guide
Step 1: Open the Actor in Apify Console
Navigate to the Actor's store page and click Try for free or Run.
Step 2: Define Your Search Query and Location
- Enter your search term in the Search Query field (e.g.,
"road bike"). - Enter the target metropolitan area in the Location City field (e.g.,
"losangeles","chicago","miami", or"toronto").
Step 3: Apply Desired Price and Condition Filters
- Set Minimum Price and Maximum Price to eliminate unwanted budget or irrelevant high-end items.
- Check the relevant condition boxes if you only want brand-new or gently-used items.
Step 4: Configure Execution Limits
- Set Maximum Items to specify how many records to extract (e.g.,
50for quick alerts,500for deep regional scans). - Ensure the Proxy configuration is enabled with Apify Residential proxies for consistent connectivity.
Step 5: Start the Run & Export Data
Click the green Save & Run button. Monitor real-time progress in the console log. Once finished, navigate to the Dataset tab to view your records in an interactive grid, or download the dataset as CSV, JSON, or Excel.
Data Export and Downstream Integrations
The dataset generated by this Actor connects seamlessly with standard data pipelines, analytics suites, and automation platforms:
1. Direct Downloads
Export collected listings instantly from the Apify Console in multiple formats:
- JSON: Ideal for developers building custom web apps or database sync scripts.
- CSV / Excel: Ready for spreadsheet analysis, pivot tables, and retail pricing models.
- XML / RSS: Useful for legacy feed ingestion and syndication systems.
2. Apify REST API
Trigger runs programmatically and fetch results via standard HTTP requests:
// Fetch latest dataset items via APIcurl "https://api.apify.com/v2/datasets/<DATASET_ID>/items?format=json&token=<YOUR_API_TOKEN>"
3. Zapier, Make & n8n Automation
Set up automatic webhooks that trigger when a run finishes. Send new listing notifications directly to:
- Slack / Discord: Get immediate alerts for newly-listed target inventory.
- Google Sheets / Airtable: Maintain a persistent inventory tracking ledger.
- Email Notifications: Receive daily digests of top local deals.
Best Practices for High-Volume Scraping
- Use Residential Proxies: Facebook Marketplace employs strict geographic and behavioral network filters. Always use Apify Residential proxies configured for the United States or the target country of your search.
- Keep Max Items Proportionate: Setting
maxItemsbetween 50 and 200 per city yields the freshest and most relevant items quickly. For broad geographic sweeps, create multiple smaller Actor tasks covering distinct cities rather than running a single massive crawl. - Combine Recency with Scheduling: If you are monitoring for new deals, set
daysSinceListedto"1"(last 24 hours) orsortByto"creation_time_descend"and schedule the Actor to run every few hours. This minimizes duplicate processing and ensures you catch new items as soon as they appear. - Clean Location Slugs: Always use standard city slugs without punctuation (e.g., use
"sanfrancisco"instead of"San Francisco, CA").
Operational Limitations and Platform Guardrails
- Public Marketplace Scope: This Actor collects publicly available Marketplace listings. Private Facebook groups, member-only trade feeds, and listings behind user authentication walls are not accessible.
- Seller Profile Visibility: Facebook dynamically controls seller profile exposure on public search feeds. If a seller has opted out of public indexing, the
sellerfield may returnnullwhile preserving the full listing details, price, location, and photos. - Geographic Radius Behavior: When searching a city slug, Facebook determines the search radius around that urban center based on its internal density metrics (typically 40–100 km). Highly rural locations may show listings from neighboring regional hubs.
- Real-Time Inventory Changes: Marketplace items can be marked as sold or deleted by sellers at any moment. While the Actor captures the status flag (
is_sold,is_pending) at the time of scrape, real-time availability should be verified before finalizing transactions.
Troubleshooting & Diagnostics
Issue: "Actor finished with zero items collected"
- Cause 1: The search query may be too narrow or combined with overly restrictive price filters.
- Solution: Test a broader search term and set
minPrice/maxPriceto0to verify listing availability in the target city. - Cause 2: A non-standard city name was entered.
- Solution: Verify that the city slug corresponds to a recognized Facebook Marketplace directory name (e.g.,
"chicago","phoenix","dallas").
Issue: "Prices showing as N/A"
- Explanation: Some sellers list items as free, make-an-offer, or fail to enter a numerical value. In these instances, the Actor faithfully records
"N/A"to preserve dataset integrity rather than guessing arbitrary amounts.
Issue: "Connection errors during crawl"
- Solution: Ensure Apify Residential proxies are selected in your proxy configuration. Datacenter proxies are frequently blocked by social media platforms and should not be used for Marketplace data extraction.
Frequently Asked Questions (FAQ)
Do I need to provide my Facebook username and password?
No. The Actor operates entirely without personal login credentials or account cookies, ensuring safe and risk-free operation.
Can I search in countries outside the United States?
Yes. You can target international cities that support Facebook Marketplace (such as "london", "toronto", "sydney", or "melbourne") by entering their respective slug in the marketplaceLocation parameter.
How frequently can I run the scraper?
You can run the scraper on demand or schedule automated runs via the Apify Scheduler (e.g., hourly, twice daily, or weekly) to track newly posted inventory.
Can I export high-resolution photos?
Yes. The image_url field provides direct links to the primary product photograph hosted on high-availability content delivery networks.
Does the scraper capture sold items?
Yes. Listings that appear in search results but have been marked as sold or pending include is_sold: true or is_pending: true, allowing you to analyze completed sales volumes and pricing.
Ethical Data Collection & Compliance
The Facebook Marketplace Scraper is developed for legitimate market analysis, competitive research, inventory monitoring, and business intelligence. Users are responsible for adhering to applicable data privacy regulations, including GDPR, CCPA, and local terms governing public web data access. We advise all users to respect fair query frequencies, avoid overwhelming remote servers, and handle seller personal information in accordance with privacy laws.