# Acquire.com Startup Acquisition Listings Scraper (`vsekar91/acquire-startup-scraper`) Actor

Scrape startup and SaaS acquisition listings from Acquire.com — title, description, asking price, business type, and listing URL. Pulls from the public sitemap and server-rendered JSON-LD on each listing page. No login required.

- **URL**: https://apify.com/vsekar91/acquire-startup-scraper.md
- **Developed by:** [Venkatesh Sekar](https://apify.com/vsekar91) (community)
- **Categories:** E-commerce
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, NaN bookmarks
- **User rating**: No ratings yet

## Pricing

Pay per usage

This Actor is paid per platform usage. The Actor is free to use, and you only pay for the Apify platform usage, which gets cheaper the higher subscription plan you have.

Learn more: https://docs.apify.com/platform/actors/running/actors-in-store#pay-per-usage

## What's an Apify Actor?

Actors are a software tools running on the Apify platform, for all kinds of web data extraction and automation use cases.
In Batch mode, an Actor accepts a well-defined JSON input, performs an action which can take anything from a few seconds to a few hours,
and optionally produces a well-defined JSON output, datasets with results, or files in key-value store.
In Standby mode, an Actor provides a web server which can be used as a website, API, or an MCP server.
Actors are written with capital "A".

## How to integrate an Actor?

If asked about integration, you help developers integrate Actors into their projects.
You adapt to their stack and deliver integrations that are safe, well-documented, and production-ready.
The best way to integrate Actors is as follows.

In JavaScript/TypeScript projects, use official [JavaScript/TypeScript client](https://docs.apify.com/api/client/js.md):

```bash
npm install apify-client
```

In Python projects, use official [Python client library](https://docs.apify.com/api/client/python.md):

```bash
pip install apify-client
```

In shell scripts, use [Apify CLI](https://docs.apify.com/cli/docs.md):

````bash
# MacOS / Linux
curl -fsSL https://apify.com/install-cli.sh | bash
# Windows
irm https://apify.com/install-cli.ps1 | iex
```bash

In AI frameworks, you might use the [Apify MCP server](https://docs.apify.com/platform/integrations/mcp.md).

If your project is in a different language, use the [REST API](https://docs.apify.com/api/v2.md).

For usage examples, see the [API](#api) section below.

For more details, see Apify documentation as [Markdown index](https://docs.apify.com/llms.txt) and [Markdown full-text](https://docs.apify.com/llms-full.txt).


# README

## Acquire.com Startup Acquisition Listings Scraper

Scrape startup and SaaS acquisition listings from [Acquire.com](https://acquire.com) — the leading marketplace for buying and selling online businesses. No account or API key required.

**~1,300 active listings available.** Updated daily from the public sitemap.

---

### What you get

For each listing the actor returns:

| Field | Source | Notes |
|---|---|---|
| `listing_id` | URL slug | Short alphanumeric ID (e.g. `b2dtmgraxt`) |
| `url` | Canonical URL | `https://app.acquire.com/startup/{id}-{slug}` |
| `title` | JSON-LD `name` | Full listing title as written by the seller |
| `description` | JSON-LD `description` | Multi-paragraph description (often 200–600 words) |
| `business_type` | JSON-LD `category` | e.g. SaaS, Ecommerce, Marketplace, Newsletter, Agency |
| `asking_price` | JSON-LD `offers.price` | USD; `null` if the seller chose not to disclose |
| `categories` | Derived | `[business_type]` array for consistency |
| `arr` | — | **null** — requires authenticated access (see note below) |
| `mrr` | — | **null** — requires authenticated access |
| `annual_profit` | — | **null** — requires authenticated access |
| `age_months` | — | **null** — requires authenticated access |
| `tech_stack` | — | **null** — requires authenticated access |
| `team_size` | — | **null** — requires authenticated access |
| `verified` | — | **null** — requires authenticated access |
| `status` | — | **null** — requires authenticated access |

#### Important: what is and isn't available

Acquire.com is a Firebase SPA. All financial metrics (ARR, MRR, profit) and operational details are stored in Firestore behind Firebase authentication. They are **not present in any public HTTP response** and cannot be scraped without a logged-in session.

What this actor extracts is drawn from two sources that the platform exposes server-side for SEO:

1. **JSON-LD Product schema** — injected by the Cloud Function serving each `app.acquire.com/startup/*` page. Contains the full title, long description, business category, and asking price.
2. **Public sitemap** — `https://app.acquire.com/sitemap.xml` lists all active listing URLs.

For buyers needing full deal metrics (ARR, MRR, age, team size), the practical path is to sign up for a free Acquire.com buyer account, which unlocks the full listing cards in the authenticated app.

---

### Example output

```json
{
  "url": "https://app.acquire.com/startup/fqvlev4ixs-micro-influencer-campaign-saas-audience-insights-gifting-real-time-analytics",
  "listing_id": "fqvlev4ixs",
  "title": "Micro-Influencer Campaign SaaS — Audience Insights, Gifting & Real-Time Analytics",
  "description": "This is an easy-to-use influencer marketing platform that connects brands with micro-influencers to run product seeding campaigns...",
  "business_type": "Marketplace",
  "asking_price": 28000,
  "arr": null,
  "mrr": null,
  "annual_profit": null,
  "age_months": null,
  "tech_stack": null,
  "team_size": null,
  "categories": ["Marketplace"],
  "verified": null,
  "status": null
}
````

***

### Input

| Field | Type | Required | Description |
|---|---|---|---|
| `maxListings` | integer | No | Max listings to return (default: 50). The sitemap has ~1,300 active listings. |
| `businessTypes` | string list | No | Filter by type — e.g. `["SaaS", "Newsletter"]`. Leave empty for all types. |
| `minPrice` | integer | No | Minimum asking price in USD. Listings with undisclosed price are excluded. |
| `maxPrice` | integer | No | Maximum asking price in USD. |
| `proxyConfiguration` | object | No | Apify Proxy config. Datacenter proxies are sufficient. |

#### Common business type values

`SaaS`, `Ecommerce`, `Marketplace`, `Newsletter`, `Agency`, `Mobile App`, `Shopify App`, `Content Website`, `Amazon FBA`, `Dropshipping`, `AI`

***

### Pricing

Charged **$0.10 per listing** returned via the Apify Pay-Per-Event model — you only pay for successful results that pass your filters.

***

### Use cases

- **Deal sourcing** — build your own acquisition pipeline with daily-fresh listing data filtered to your target criteria
- **Market sizing** — how many SaaS listings are priced under $500K? What business types dominate the marketplace?
- **Competitive intelligence** — track asking prices and new entrants in a specific category over time
- **CRM enrichment** — bulk-pull descriptions to categorise listings with AI before engaging on the platform
- **VC / PE screening** — identify off-market-quality businesses selling at self-serve prices

***

### Technical notes

#### How scraping works

1. The actor fetches the public sitemap (`app.acquire.com/sitemap.xml`) to discover all active listing URLs.
2. For each URL, it fetches the listing page and extracts the server-injected `application/ld+json` Product schema.
3. Filters (business type, price range) are applied after extraction.
4. Results are pushed to the Apify dataset and charged per item.

#### Rate limiting

Acquire.com listing pages are served by Google Cloud Functions with caching headers (`cache-control: public, max-age=3600`). The actor runs with a concurrency of 5 parallel requests by default, which keeps well within polite limits. Each run of 50 listings completes in approximately 30–60 seconds.

#### Page structure

The listing detail pages at `app.acquire.com/startup/*` are a Vite SPA shell. The Firebase app itself requires authentication to render any meaningful content in-browser. However, the Cloud Function that serves the HTML shell **does inject server-side SEO metadata** into the HTML `<head>` before sending the response — this is what the actor extracts. No JavaScript execution is required.

#### Sitemap freshness

The sitemap is updated daily and reflects currently-active listings. Listings that have been sold, withdrawn, or moved to draft are removed from the sitemap. The `lastmod` timestamp in the sitemap indicates when each listing was last updated.

***

### Related actors in this suite

- **Stan.store Creator Scraper** — full product catalog from Stan.store creator storefronts
- **Gumroad Enhanced Scraper** — product listings, pricing, and creator data from Gumroad
- **Domestika Course Scraper** — course metadata and instructor profiles from Domestika

# Actor input Schema

## `maxListings` (type: `integer`):

Maximum number of listings to scrape. The sitemap currently has ~1,300 active listings. Set to 0 to scrape all.

## `businessTypes` (type: `array`):

Only return listings matching these business types. Leave empty to return all types. Common values: SaaS, Ecommerce, Marketplace, Newsletter, Agency, Mobile App, Shopify App, Content Website, Amazon FBA.

## `minPrice` (type: `integer`):

Only return listings with an asking price at or above this value. Listings with undisclosed prices (0) are excluded when this filter is set.

## `maxPrice` (type: `integer`):

Only return listings with an asking price at or below this value. Set to 0 or leave blank to skip this filter.

## `proxyConfiguration` (type: `object`):

Proxy for outbound requests. Acquire.com does not aggressively rate-limit listing page fetches; the default Apify Proxy datacenter pool is sufficient.

## Actor input object example

```json
{
  "maxListings": 50,
  "businessTypes": [],
  "proxyConfiguration": {
    "useApifyProxy": true,
    "apifyProxyGroups": []
  }
}
```

# API

You can run this Actor programmatically using our API. Below are code examples in JavaScript, Python, and CLI, as well as the OpenAPI specification and MCP server setup.

## JavaScript example

```javascript
import { ApifyClient } from 'apify-client';

// Initialize the ApifyClient with your Apify API token
// Replace the '<YOUR_API_TOKEN>' with your token
const client = new ApifyClient({
    token: '<YOUR_API_TOKEN>',
});

// Prepare Actor input
const input = {
    "businessTypes": []
};

// Run the Actor and wait for it to finish
const run = await client.actor("vsekar91/acquire-startup-scraper").call(input);

// Fetch and print Actor results from the run's dataset (if any)
console.log('Results from dataset');
console.log(`💾 Check your data here: https://console.apify.com/storage/datasets/${run.defaultDatasetId}`);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((item) => {
    console.dir(item);
});

// 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/js/docs

```

## Python example

```python
from apify_client import ApifyClient

# Initialize the ApifyClient with your Apify API token
# Replace '<YOUR_API_TOKEN>' with your token.
client = ApifyClient("<YOUR_API_TOKEN>")

# Prepare the Actor input
run_input = { "businessTypes": [] }

# Run the Actor and wait for it to finish
run = client.actor("vsekar91/acquire-startup-scraper").call(run_input=run_input)

# Fetch and print Actor results from the run's dataset (if there are any)
print("💾 Check your data here: https://console.apify.com/storage/datasets/" + run["defaultDatasetId"])
for item in client.dataset(run["defaultDatasetId"]).iterate_items():
    print(item)

# 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/python/docs/quick-start

```

## CLI example

```bash
echo '{
  "businessTypes": []
}' |
apify call vsekar91/acquire-startup-scraper --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "command": "npx",
            "args": [
                "mcp-remote",
                "https://mcp.apify.com/?tools=vsekar91/acquire-startup-scraper",
                "--header",
                "Authorization: Bearer <YOUR_API_TOKEN>"
            ]
        }
    }
}

```

## OpenAPI specification

```json
{
    "openapi": "3.0.1",
    "info": {
        "title": "Acquire.com Startup Acquisition Listings Scraper",
        "description": "Scrape startup and SaaS acquisition listings from Acquire.com — title, description, asking price, business type, and listing URL. Pulls from the public sitemap and server-rendered JSON-LD on each listing page. No login required.",
        "version": "0.1",
        "x-build-id": "6jkcFX8uvp09QexaG"
    },
    "servers": [
        {
            "url": "https://api.apify.com/v2"
        }
    ],
    "paths": {
        "/acts/vsekar91~acquire-startup-scraper/run-sync-get-dataset-items": {
            "post": {
                "operationId": "run-sync-get-dataset-items-vsekar91-acquire-startup-scraper",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor, waits for its completion, and returns Actor's dataset items in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK"
                    }
                }
            }
        },
        "/acts/vsekar91~acquire-startup-scraper/runs": {
            "post": {
                "operationId": "runs-sync-vsekar91-acquire-startup-scraper",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor and returns information about the initiated run in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/runsResponseSchema"
                                }
                            }
                        }
                    }
                }
            }
        },
        "/acts/vsekar91~acquire-startup-scraper/run-sync": {
            "post": {
                "operationId": "run-sync-vsekar91-acquire-startup-scraper",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor, waits for completion, and returns the OUTPUT from Key-value store in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK"
                    }
                }
            }
        }
    },
    "components": {
        "schemas": {
            "inputSchema": {
                "type": "object",
                "properties": {
                    "maxListings": {
                        "title": "Max listings",
                        "minimum": 1,
                        "type": "integer",
                        "description": "Maximum number of listings to scrape. The sitemap currently has ~1,300 active listings. Set to 0 to scrape all.",
                        "default": 50
                    },
                    "businessTypes": {
                        "title": "Business types (filter)",
                        "type": "array",
                        "description": "Only return listings matching these business types. Leave empty to return all types. Common values: SaaS, Ecommerce, Marketplace, Newsletter, Agency, Mobile App, Shopify App, Content Website, Amazon FBA.",
                        "items": {
                            "type": "string"
                        }
                    },
                    "minPrice": {
                        "title": "Min asking price (USD)",
                        "minimum": 0,
                        "type": "integer",
                        "description": "Only return listings with an asking price at or above this value. Listings with undisclosed prices (0) are excluded when this filter is set."
                    },
                    "maxPrice": {
                        "title": "Max asking price (USD)",
                        "minimum": 0,
                        "type": "integer",
                        "description": "Only return listings with an asking price at or below this value. Set to 0 or leave blank to skip this filter."
                    },
                    "proxyConfiguration": {
                        "title": "Proxy configuration",
                        "type": "object",
                        "description": "Proxy for outbound requests. Acquire.com does not aggressively rate-limit listing page fetches; the default Apify Proxy datacenter pool is sufficient.",
                        "default": {
                            "useApifyProxy": true,
                            "apifyProxyGroups": []
                        }
                    }
                }
            },
            "runsResponseSchema": {
                "type": "object",
                "properties": {
                    "data": {
                        "type": "object",
                        "properties": {
                            "id": {
                                "type": "string"
                            },
                            "actId": {
                                "type": "string"
                            },
                            "userId": {
                                "type": "string"
                            },
                            "startedAt": {
                                "type": "string",
                                "format": "date-time",
                                "example": "2025-01-08T00:00:00.000Z"
                            },
                            "finishedAt": {
                                "type": "string",
                                "format": "date-time",
                                "example": "2025-01-08T00:00:00.000Z"
                            },
                            "status": {
                                "type": "string",
                                "example": "READY"
                            },
                            "meta": {
                                "type": "object",
                                "properties": {
                                    "origin": {
                                        "type": "string",
                                        "example": "API"
                                    },
                                    "userAgent": {
                                        "type": "string"
                                    }
                                }
                            },
                            "stats": {
                                "type": "object",
                                "properties": {
                                    "inputBodyLen": {
                                        "type": "integer",
                                        "example": 2000
                                    },
                                    "rebootCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "restartCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "resurrectCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "computeUnits": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            },
                            "options": {
                                "type": "object",
                                "properties": {
                                    "build": {
                                        "type": "string",
                                        "example": "latest"
                                    },
                                    "timeoutSecs": {
                                        "type": "integer",
                                        "example": 300
                                    },
                                    "memoryMbytes": {
                                        "type": "integer",
                                        "example": 1024
                                    },
                                    "diskMbytes": {
                                        "type": "integer",
                                        "example": 2048
                                    }
                                }
                            },
                            "buildId": {
                                "type": "string"
                            },
                            "defaultKeyValueStoreId": {
                                "type": "string"
                            },
                            "defaultDatasetId": {
                                "type": "string"
                            },
                            "defaultRequestQueueId": {
                                "type": "string"
                            },
                            "buildNumber": {
                                "type": "string",
                                "example": "1.0.0"
                            },
                            "containerUrl": {
                                "type": "string"
                            },
                            "usage": {
                                "type": "object",
                                "properties": {
                                    "ACTOR_COMPUTE_UNITS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_WRITES": {
                                        "type": "integer",
                                        "example": 1
                                    },
                                    "KEY_VALUE_STORE_LISTS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_INTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_EXTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_SERPS": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            },
                            "usageTotalUsd": {
                                "type": "number",
                                "example": 0.00005
                            },
                            "usageUsd": {
                                "type": "object",
                                "properties": {
                                    "ACTOR_COMPUTE_UNITS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_WRITES": {
                                        "type": "number",
                                        "example": 0.00005
                                    },
                                    "KEY_VALUE_STORE_LISTS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_INTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_EXTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_SERPS": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
```
