Flippa Business Listings Scraper avatar

Flippa Business Listings Scraper

Pricing

Pay per event

Go to Apify Store
Flippa Business Listings Scraper

Flippa Business Listings Scraper

Search Flippa's business-and-website marketplace by category and get structured rows for every matching listing — price, profit, revenue multiple, sale method, status, and buy link. No page-scraping guesswork, just clean deal-economics JSON.

Pricing

Pay per event

Rating

0.0

(0)

Developer

DevilScrapes

DevilScrapes

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

4 days ago

Last modified

Categories

Share


🎯 What this scrapes

Flippa is the biggest marketplace for buying and selling online businesses, websites, and apps, and its own search filters are the only way to browse it at scale. This Actor drives those filters for you — pick 1-15 curated categories (Business, Internet, Ecommerce-heavy verticals, and more), a sale method (classified asking-price or live auction), and a page depth, and get back structured rows for every matching listing: asking/current price, average monthly profit, revenue and profit multiples, category, and the buy link. Built on curl-cffi with rotating browser impersonation and a US-pinned datacenter proxy so a run finishes clean even when Flippa's own front end changes shape underneath it.

🔥 What we handle for you

  • 🛡️ Browser fingerprint rotationcurl-cffi impersonates real Chrome / Firefox TLS handshakes on every fetch, good hygiene on any target.
  • 🔁 Retries with exponential backoff on 408 / 429 / 503 and network errors — up to 5 attempts per page, Retry-After honoured.
  • 🧩 Per-listing and per-page fault isolation — one malformed listing or an unparseable page skips just that item/fetch with a logged warning; it never sinks the whole run.
  • 🧊 Clean, typed dataset rows — Pydantic-validated, ISO-8601 timestamps, stable listing IDs, JSON / CSV / Excel export straight from the Apify Console.
  • 💰 Pay-Per-Event pricing — you only pay for results that hit your dataset. A search that runs and matches nothing still succeeds — no data, no charge beyond the warm-up fee.

💡 Use cases

  • Deal sourcing — feed acquisition criteria (category, sale method) and get every matching listing's deal economics in one export.
  • Market research — track median multiples and asking prices across categories over time.
  • Auction monitoring — watch bid_count and end_at across live auction listings to catch closing deals.
  • Lead generation for brokers/advisors — surface sellers in a category who might want a valuation or brokerage service.
  • Portfolio benchmarking — compare your own site's profit multiple against comparable live Flippa listings.

⚙️ How to use it

  1. Click Try for free at the top of the page.
  2. Fill in the input form — most fields have sensible defaults.
  3. Click Start. Output streams into the run's dataset.
  4. Export from Storage → Dataset as JSON, CSV, or Excel — or fetch via the API.

📥 Input

FieldTypeRequiredDefaultNotes
categoriesarrayno['Business', 'Internet']0-15 Flippa top-level categories to search. Each category is a separate fetch (more categories means more distinct…
saleMethodstringno'both'Filter by how the listing is sold: classified (fixed/negotiable asking price) or auction (live bidding). Choose both to…
statusstringno'open'Listing status filter. Flippa's search filter currently only returns real matches for 'open' (live, unsold) listings —…
maxPagesPerQueryintegerno2Pages to fetch per category/sale-method combination. Flippa returns 25 listings per page, server-paginated via ?page=N.
proxyConfigurationobjectno{'useApifyProxy': True, 'apifyProxyGroups': ['BUYPROXIES94952']}Apify Proxy spec — mandatory field. flippa.com/search showed no anti-bot challenge in recon (200 on first request,…

Example input

{
"categories": [
"Business",
"Internet"
],
"saleMethod": "both",
"status": "open",
"maxPagesPerQuery": 1,
"proxyConfiguration": {
"useApifyProxy": true,
"apifyProxyGroups": [
"BUYPROXIES94952"
]
}
}

📤 Output

Every row is one dataset item.

FieldTypeNotes
search_category['string', 'null']The category this row's fetch was filtered to, or null for an unfiltered search.
search_sale_methodstringThe sale_method filter value used for this row's fetch (classified, auction, or both).
listing_idintegerFlippa's internal numeric listing ID.
listing_urlstringCanonical listing page URL (https://flippa.com/
titlestringListing headline.
summarystringListing summary/description text.
pricenumberAsking price (classified) or current bid (auction) in the listing's currency.
price_textstringHuman-formatted price string as Flippa displays it (e.g. 'USD $2,273,879').
currency_label['string', 'null']Currency symbol/label prefix (e.g. 'USD $').
original_price['number', 'null']Pre-drop list price when the listing has had a price reduction.
profit_average['number', 'null']Average monthly net profit, parsed from Flippa's comma-formatted string.
revenue_average['number', 'null']Average monthly revenue.
multiple['number', 'null']Asking-price-to-profit multiple.
revenue_multiple['number', 'null']Asking-price-to-revenue multiple.
category['string', 'null']Flippa's display category (e.g. 'Business').
property_type['string', 'null']Listing property type (e.g. 'Ecommerce', 'SaaS', 'Digital Agency').
monetization['string', 'null']How the business makes money (e.g. 'Services & Subscriptions').
sale_methodstring'classified' (asking price) or 'auction' (live bidding).
sale_method_title['string', 'null']Human label for the sale method (e.g. 'Asking Price').
statusstringListing status (e.g. 'open').
bid_count['integer', 'null']Number of bids placed, for auction listings.
established_at['integer', 'null']Site/business age in years.
end_at['string', 'null']ISO-8601 listing close time.
country_name['string', 'null']Seller's reported state/country.
confidentialbooleanTrue when the listing hides its identity/URL until an NDA/verification step.
verified_trafficbooleanTrue when Flippa has verified the traffic figures.
verified_revenuebooleanTrue when Flippa has verified the revenue figures.
scraped_atstringISO-8601 UTC timestamp when this row's page was fetched.

Example output

{
"search_category": "Business",
"search_sale_method": "both",
"listing_id": 13846152,
"listing_url": "https://flippa.com/13846152",
"title": "Automated AI CEO running a profitable agency with recurring clients",
"summary": "Automated AI CEO running a profitable agency with recurring clients, proven lead generation systems, a trained team, and scalable fulfillment operations",
"price": 2273879.0,
"price_text": "USD $2,273,879",
"currency_label": "USD $",
"original_price": null,
"profit_average": 106764.0,
"revenue_average": 214170.0,
"multiple": 1.8,
"revenue_multiple": 0.9,
"category": "Business",
"property_type": "Digital Agency",
"monetization": "Services & Subscriptions",
"sale_method": "classified",
"sale_method_title": "Asking Price",
"status": "open",
"bid_count": null,
"established_at": 3,
"end_at": "2028-03-10T02:14:48+11:00",
"country_name": "NV, United States",
"confidential": false,
"verified_traffic": false,
"verified_revenue": false,
"scraped_at": "2026-09-16T12:00:00.000Z"
}

💰 Pricing

Pay-Per-Event — you pay only when these events fire:

EventUSDWhat it is
actor-start$0.2One-off warm-up charge per run
result-row$0.006Per unique dataset item

Example: 1 000 results at the rates above ≈ $6.20. No subscription, no minimum, no card to start — Apify gives every new account $5 of free credit.

🚧 Limitations

v0.1 filters by Flippa's 15 top-level categories, sale method, and status=open only — narrower facets (price range, monthly profit range, verified-traffic-only, TLD, country) aren't exposed yet. Flippa's own search filter didn't return real data for any status besides 'open' in recon testing. Confidential listings show only the fields Flippa itself exposes pre-NDA (no seller identity or direct URL beyond the search-result page).

❓ FAQ

Do I need a Flippa account?

No. This Actor scrapes Flippa's public /search results page — no login required.

What does maxPagesPerQuery control?

Flippa serves 25 listings per page via ?page=N. This caps how many pages are fetched per category/sale-method combination; higher values mean more listings and more result-row charges.

Why is status fixed to 'open'?

Flippa's own search filter only returned real matches for status=open in testing; other status values returned an empty result set (a Flippa quirk, not an Actor limitation).

Do I need a residential proxy?

No. Recon found no anti-bot challenge on flippa.com/search — the default US-pinned datacenter proxy is sufficient.

What happens if a category matches nothing?

The run succeeds with zero rows for that category and reports what was searched — a real zero-match result is not treated as a failure.

💬 Your feedback

Spotted a bug, hit a weird edge case, or need a new field? Open an issue on the Actor's Issues tab on Apify Console — we ship fixes weekly and we read every report.