Facebook Marketplace Scraper — No Login Required avatar

Facebook Marketplace Scraper — No Login Required

Pricing

from $2.00 / 1,000 listing extracteds

Go to Apify Store
Facebook Marketplace Scraper — No Login Required

Facebook Marketplace Scraper — No Login Required

Extract listings from Facebook Marketplace by location. No login or cookies needed. Supports geo-targeted search, category filtering, price range, and keyword search.

Pricing

from $2.00 / 1,000 listing extracteds

Rating

0.0

(0)

Developer

Crowd Pull

Crowd Pull

Maintained by Community

Actor stats

0

Bookmarked

3

Total users

1

Monthly active users

5 days ago

Last modified

Share

CrowdPull FB Marketplace Scraper

Extract listings from Facebook Marketplace worldwide — no login or cookies required.

No browser automation — just fast, lightweight HTTP requests using Facebook's internal GraphQL API. Works with any location Facebook Marketplace supports.

Features

  • No login required — extracts listings anonymously from public marketplace
  • Works worldwide — any city Facebook Marketplace supports (US, Europe, Asia, Latin America, etc.)
  • Two input modes — paste marketplace URLs directly, or just enter a city/neighborhood/ZIP code
  • Keyword search — filter by product name, category, or description
  • Category URLs — paste category-specific URLs (e.g., /marketplace/chicago/home-improvements)
  • Price filtering — set minimum and maximum price thresholds
  • Multi-URL support — scrape multiple locations or categories in a single run
  • Smart Scrape (dedup) — skip listings already scraped in previous runs
  • Date filtering — set untilDate to only extract listings from a specific date onward
  • Strict filtering — exclude broad matches and listings from outside the target location
  • Position tracking — each listing includes its original position in the search results
  • Full listing data — title, price, location, image, condition, delivery options
  • Rich detail mode — enable includeDetails for full description, all photos, vehicle specs (make, model, odometer, colors), and listing status
  • Pagination — automatically loads all results via Relay cursors
  • No browser — lightweight HTTP requests only, minimal compute cost

Smart Scrape: How It Saves You Money

Enable Smart Scrape to skip listings you've already extracted. The scraper maintains a persistent cache per location that survives across runs indefinitely.

Without Smart ScrapeWith Smart Scrape
Run 1 (100 listings)100 extracted100 extracted
Run 2 (20 new)100 extracted20 new + 80 cache checks
Run 3 (20 new)100 extracted20 new + 80 cache checks
Monthly (daily runs)3,000 extracted~700 extracted + ~2,300 cache checks
Savings~60% cheaper

Refresh Window

Set refreshWindowDays to re-check recent listings for price changes. For example, refreshWindowDays: 7 re-scrapes listings from the last 7 days even if cached, so you always get fresh pricing data.

What you get per listing

FieldDescription
listingIdUnique Facebook listing ID
titleListing title
pricePrice in cents (e.g., 250000 = $2,500.00)
priceFormattedHuman-readable price (e.g., "$2,500")
currencyCurrency code (USD, EUR, GBP, etc.)
locationCity and state where the item is listed
listingUrlDirect link to the listing
imageUrlPrimary listing image URL
createdAtISO 8601 timestamp of listing creation
sellerNameSeller's display name (when available)
sellerIdSeller's Facebook ID (when available)
sellerTypeAccount type (User, Page, etc.)
conditionItem condition (new, used, etc.)
availabilityListing status
deliveryTypesAvailable delivery/shipping methods
positionOriginal position in search results feed
sourceUrlThe marketplace URL that was scraped
scrapedAtISO 8601 timestamp of extraction

Detail fields (when includeDetails is enabled)

FieldDescription
descriptionFull listing description text
allPhotosArray of all photo URLs (not just the primary)
isSoldWhether the listing has been sold
isPendingWhether the listing is pending sale
inventoryCountQuantity available (for multi-item listings)
vehicleMakeVehicle make (e.g., "Chevrolet")
vehicleModelVehicle model (e.g., "Monte Carlo")
vehicleYearVehicle model year
vehicleOdometerMilesOdometer reading in miles
vehicleExteriorColorExterior color
vehicleInteriorColorInterior color
vehicleFuelTypeFuel type
vehicleConditionVehicle condition
vehicleNumberOfOwnersNumber of previous owners
vehicleSellerTypeDealer or private seller
vehicleEngineSizeEngine displacement
vehicleGasMileageFuel economy (combined or city)

How it works

  1. Parses your input — marketplace URLs are used directly; location names are resolved to Facebook Place IDs via the internal typeahead API for accurate geo-targeting
  2. Fetches the marketplace page anonymously via TLS-fingerprinted HTTP
  3. Extracts authentication tokens (lsd, datr) and location coordinates from the page SSR data
  4. Parses search-filtered listings from page HTML (SSR) for page 1, then queries GraphQL for pagination
  5. Paginates via Relay cursors until maxListings reached or feed exhausted
  6. Optionally enriches each listing with detail page data (description, photos, vehicle specs)
  7. Deduplicates against cache if Smart Scrape is enabled

Input examples

Paste marketplace URLs (power users)

{
"marketplaceUrls": [
"https://www.facebook.com/marketplace/chicago",
"https://www.facebook.com/marketplace/chicago/search/?query=furniture"
],
"maxListings": 100
}

Enter location + search (quick start)

{
"location": "São Paulo",
"searchQuery": "furniture",
"maxListings": 50
}

With listing details (rich data)

{
"marketplaceUrls": [
"https://www.facebook.com/marketplace/chicago/vehicles"
],
"maxListings": 25,
"includeDetails": true
}

Smart Scrape (incremental monitoring)

{
"marketplaceUrls": [
"https://www.facebook.com/marketplace/chicago"
],
"maxListings": 100,
"enableDedup": true,
"refreshWindowDays": 7
}

Output example

{
"listingId": "1731225464511434",
"title": "2001 Chevrolet Monte Carlo · SS Coupe 2D",
"price": 250000,
"priceFormatted": "$2,500",
"currency": "USD",
"location": "Buffalo Grove, Illinois",
"listingUrl": "https://www.facebook.com/marketplace/item/1731225464511434/",
"imageUrl": "https://scontent-det1-1.xx.fbcdn.net/v/...",
"createdAt": "2026-02-25T18:00:00.000Z",
"sellerName": "",
"sellerId": "",
"sellerType": "",
"condition": null,
"availability": null,
"deliveryTypes": ["LOCAL_PICK_UP"],
"description": "2001 Monte Carlo SS, runs great, clean title. 157K miles.",
"allPhotos": ["https://scontent-det1-1.xx.fbcdn.net/v/photo1...", "https://scontent-det1-1.xx.fbcdn.net/v/photo2..."],
"isSold": false,
"vehicleMake": "Chevrolet",
"vehicleModel": "Monte Carlo",
"vehicleYear": 2001,
"vehicleOdometerMiles": 157857,
"vehicleExteriorColor": "red",
"vehicleCondition": "USED",
"sourceUrl": "https://www.facebook.com/marketplace/chicago",
"scrapedAt": "2026-03-05T12:00:00.000Z"
}

Detail fields (description, allPhotos, vehicle specs, etc.) are only populated when includeDetails is enabled.

Other CrowdPull Facebook scrapers

Cost estimate

This Actor uses no browser — just lightweight HTTP requests.

PPE EventDescriptionCost
actor-startOne-time per run$0.005
listing-extractedPer listing pushed to datasetPer-1K pricing (see Store)
listing-detailsPer listing enriched with detail page dataPer-1K pricing (see Store)
cache-checkPer listing skipped by Smart ScrapeReduced rate (see Store)

A typical run extracting 100 listings costs ~$0.01-0.03 in platform fees. With includeDetails enabled, add ~$0.03/100 listings for detail enrichment.

Use cases

  • Market research — analyze local pricing trends for specific product categories
  • International price comparison — compare marketplace prices across cities and countries
  • Competitive intelligence — monitor competitor inventory and pricing
  • Arbitrage — find underpriced items across locations for resale
  • Lead generation — extract seller data from niche product categories
  • Price monitoring — track price changes over time with Smart Scrape
  • Real estate — monitor furniture/appliance listings near rental properties

This Actor extracts publicly visible data from Facebook Marketplace. Here are the key legal considerations:

  • Public data: Only publicly listed items are accessible. No private or restricted content is extracted.
  • No authentication by default: The scraper works anonymously without any Facebook account, accessing only what any visitor can see.
  • Terms of Service: Web scraping of public data has been upheld in multiple court rulings (hiQ Labs v. LinkedIn, 2022). However, Facebook's Terms of Service restrict automated data collection. Use this tool responsibly and in compliance with applicable laws.
  • GDPR/CCPA: Extracted data may contain seller names and profile IDs. If you process this data in the EU/EEA or for California residents, ensure you have a lawful basis under GDPR/CCPA.
  • Rate limiting: The scraper includes built-in delays and respects Facebook's rate limits to minimize server impact.

You are responsible for ensuring your use of this data complies with all applicable laws and regulations in your jurisdiction.

Limitations

  • doc_id may rotate when Facebook redeploys — report issues if extraction stops
  • Facebook rate limits apply; residential proxies recommended
  • Anonymous mode may return fewer results than authenticated browsing
  • Price filtering depends on Facebook's GraphQL variable support (may vary by region)
  • includeDetails adds ~1 second per listing (detail page fetch + rate limiting)
  • Seller data (name, ID) is not available in anonymous mode on detail pages
  • Location resolution uses Facebook's internal typeahead API — works for any city, neighborhood, or ZIP code worldwide