# Clutch Agencies Scraper (`parseforge/clutch-agencies-scraper`) Actor

Scrapes agency profiles from Clutch.co listing pages. Returns each agency as a flat row with name, rating, location, and service details. Start from any category or search URL and set a max items limit.

- **URL**: https://apify.com/parseforge/clutch-agencies-scraper.md
- **Developed by:** [ParseForge](https://apify.com/parseforge) (community)
- **Categories:** Lead generation, Business
- **Stats:** 1 total users, 0 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

from $4.52 / 1,000 results

This Actor is paid per event. You are not charged for the Apify platform usage, but only a fixed price for specific events.
Since this Actor supports Apify Store discounts, the price gets lower the higher subscription plan you have.

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

## What's an Apify Actor?

Actors are web data automations that power AI and operations. They run on the Apify platform to scrape websites, process data, connect APIs, and automate workflows.
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.

- **AI agents and MCP clients** — the [Apify MCP server](https://docs.apify.com/integrations/mcp.md) at `https://mcp.apify.com` (remote, streamable HTTP, OAuth on first use).
- **Agentic workflows and local Actor development** — [Agent Skills](https://apify.com/.well-known/agent-skills/index.json) with the [Apify CLI](https://docs.apify.com/cli/docs.md): `npm install -g apify-cli`, then `apify login`.
- **JavaScript/TypeScript projects** — the official [JS/TS client](https://docs.apify.com/api/client/js/docs.md): `npm install apify-client`.
- **Python projects** — the official [Python client](https://docs.apify.com/api/client/python/docs.md): `pip install apify-client`.
- **Any other language** — 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

[![ParseForge](https://raw.githubusercontent.com/ParseForge/apify-assets/main/banner.jpg)](https://apify.com/parseforge?fpr=vmoqkp)

### Clutch Agencies Scraper

**Scrape agency profiles from any Clutch listing page, up to the number you set per run.** Every agency comes with its name, rating, location, and service details. No login or API key. Export to CSV, JSON, Excel, or XML.

Clutch.co is the go-to directory for B2B service providers, but manually copying agency data from listing pages is slow and repetitive. This Actor reads public agency listings directly from any Clutch category or search results URL you provide. It returns each agency as a clean, flat row so you can build prospecting lists, benchmark competitors, or research the market without writing a single line of code.

| Who uses it | What they scrape Clutch for |
|---|---|
| Sales and lead generation teams | Build targeted prospect lists of agencies by service category and location. |
| Market researchers | Map the competitive landscape of B2B service providers in a specific niche. |
| Recruitment consultants | Identify growing agencies that are likely hiring based on their Clutch presence. |
| Business analysts | Track agency counts, ratings distributions, and service trends over time. |

### What it does

This Actor collects agency profiles from Clutch.co listing pages and returns each one as a structured row.

- 🔗 **Flexible start URLs:** Paste any Clutch.co listing page URL, from broad categories to filtered search results.
- ⚙️ **Simple controls:** Set a maximum number of agencies to scrape and the Actor stops cleanly when it reaches that limit.
- 📄 **Flat output schema:** Every agency lands as one row with a fixed set of fields, ready for spreadsheets or databases.

Results export to CSV, JSON, Excel, or XML, or straight from the API.

### What you can do with Clutch data

**📋 Build a B2B prospect list.**

A sales team scrapes all digital marketing agencies in New York from Clutch, filters by minimum rating, and loads the list into their CRM for outreach.

**📊 Benchmark competitor agencies.**

A market analyst scrapes a category of web development firms to compare average ratings, review counts, and service offerings across the top 50 players.

**🔍 Research a niche service category.**

A consultant scrapes Clutch's AI development agency listings to understand how many firms offer this service and where they are concentrated geographically.

**📈 Monitor agency landscape changes.**

A business analyst runs the Actor monthly on the same Clutch category URL to track new entrants, exits, and rating shifts over time.

### Why choose this scraper

| | What you get |
|---|---|
| **No API registration** | Reads public Clutch listing pages directly, no developer account needed. |
| **Clean structured output** | Every agency profile is returned as a flat row with consistent fields. |
| **Runs at scale** | Scrape hundreds of agencies in a single run, limited only by the max items you set. |

### How it compares

This Actor focuses on scraping Clutch agency listing pages with a simple start-URL and max-items model. The competitors below offer deeper profile scraping, reviews, or email extraction that this Actor does not include.

| Feature | ParseForge | Clutch.co Scraper - Agencies, Reviews, Emails + AI Insights | Advanced Clutch.co Scrapper | Clutch.co Scraper with Emails & Reviews |
|---|---|---|---|---|
| Scrapes listing pages from any Clutch URL | Yes | Not listed | Not listed | Not listed |
| Simple max-items control | Yes | Not listed | Not listed | Not listed |
| Scrapes individual agency profile pages | Not listed | Yes | Yes | Yes |
| Extracts client reviews | Not listed | Yes | Not listed | Yes |
| Extracts contact emails | Not listed | Yes | Not listed | Yes |
| AI-powered pain-point analysis | Not listed | Yes | Not listed | Not listed |

### Configure the run

Drive the Actor from any Clutch.co listing page URL, and set a cap on the total number of agencies to collect. The Input tab lists every parameter.

A first run with the defaults:

```json
{
 "startUrls": [
 {
 "url": "https://clutch.co/agencies"
 }
 ]
}
```

A larger pull:

```json
{
 "startUrls": [
 {
 "url": "https://clutch.co/agencies"
 }
 ],
 "maxItems": 200
}
```

### Free users

Free-plan runs return up to 10 results as a preview. [Upgrade your Apify plan](https://console.apify.com/sign-up?fpr=vmoqkp) to collect up to 1,000,000 results per run.

### Run it

1. [Create a free Apify account with $5 in credit](https://console.apify.com/sign-up?fpr=vmoqkp).
2. Open the [Clutch Agencies Scraper](https://apify.com/parseforge/clutch-agencies-scraper?fpr=vmoqkp).
3. Set your inputs and any filters, then click **Start**.
4. Export the results as CSV, Excel, JSON, or XML from the **Dataset** tab.

Run it programmatically through the [Apify API](https://docs.apify.com/api/v2) (`run-sync-get-dataset-items`) or the [ApifyClient](https://docs.apify.com/api/client/js) for JavaScript and Python.

### Use with AI agents (MCP)

Give an AI agent live access to Clutch through the Model Context Protocol. Add the Actor to Claude, Cursor, or any MCP client:

```bash
claude mcp add --transport http apify "https://mcp.apify.com?tools=parseforge/clutch-agencies-scraper"
```

Then prompt it in plain language to run the scraper and read back the results.

### Troubleshooting

**Why am I getting no results?**

Check that your start URL is a valid Clutch.co listing page that shows agency cards. If the page is empty or returns a 404, the Actor will have nothing to scrape. Also verify that your max items is set to a number greater than zero.

**The Actor stopped before reaching my max items limit.**

The Actor stops when it runs out of agencies on the listing pages you provided. If the category has fewer agencies than your max items setting, the run ends early. Try a broader Clutch URL or a higher-level category.

**Some agencies are missing from the output.**

Clutch pages load dynamically, and occasionally a listing may not render in time. Re-running the Actor often captures any missed items. If the problem persists, check whether the missing agencies appear on the source URL when you visit it manually.

**The run is taking too long.**

Lower your max items setting to reduce the total number of agencies scraped. You can also target a more specific Clutch URL with fewer results pages to speed up the run.

**I get an error about invalid URLs.**

Ensure all start URLs begin with 'https://clutch.co/' and point to actual listing pages. URLs to individual agency profile pages or other websites will not work with this Actor.

### FAQ

| Question | Answer |
|---|---|
| What kind of Clutch URLs can I scrape? | You can scrape any Clutch.co listing page URL, such as category pages like /agencies, location-filtered pages, or search result pages. The Actor starts from the URLs you provide and follows pagination within those listings. |
| How many agencies can I scrape in one run? | You set the maximum number of agencies using the 'Maximum agencies' input field. The Actor stops when it reaches that number, so you control the volume. There is no hard upper limit beyond what you configure. |
| Does this Actor scrape individual agency profile pages? | This Actor is designed for listing pages. It collects the information visible on Clutch directory and search result pages. For deep profile-page scraping with reviews and contact details, consider a dedicated profile scraper. |
| Do I need a Clutch account or API key? | No. The Actor reads publicly accessible listing pages. You do not need to register an app, obtain an API key, or log in to Clutch. |
| What data fields does the Actor return? | The Actor returns the fields visible on Clutch listing cards, such as agency name, rating, review count, location, service categories, and a short description. The exact fields are shown in the sample output on the Actor's page. |
| Can I filter agencies by rating or location during the scrape? | The Actor itself does not have built-in filters. To target specific agencies, use Clutch's own website filters to narrow your listing page URL before pasting it into the Actor. The Actor then scrapes whatever that filtered page shows. |
| In what formats can I export the scraped data? | You can export your dataset in CSV, JSON, Excel, or XML format directly from the Apify platform after the run completes. |
| How long does a typical run take? | Run time depends on the number of agencies you request and the responsiveness of Clutch.co. A run of 100 agencies typically completes in a few minutes. |
| Does this Actor handle Clutch's pagination automatically? | Yes. The Actor follows the 'Next page' links on Clutch listing pages automatically, so you get continuous results from a single starting URL. |
| Can I scrape multiple Clutch categories in one run? | Yes. Add multiple start URLs to the input, each pointing to a different Clutch category or filtered listing page. The Actor processes them all in one run up to your total max items limit. |

### Related actors

- [clutch-agencies-scraper](https://apify.com/parseforge/clutch-agencies-scraper?fpr=vmoqkp): Use this Actor when you need to scrape agency listings from Clutch category and search pages at scale.

Browse the full [ParseForge collection](https://apify.com/parseforge?fpr=vmoqkp) for more scrapers.

🆘 **Need help?** Email parseforge@protonmail.com with your run ID, your input, and what you expected.

⚠️ **Disclaimer.** This Actor is unofficial and is not affiliated with, endorsed by, or sponsored by Clutch.co. It collects only publicly available data. You are responsible for using the collected data in compliance with the source's terms of service and applicable data-protection laws, including GDPR, CCPA, and PIPL. Do not use it to collect personal data unlawfully.

# Actor input Schema

## `startUrls` (type: `array`):

URLs of Clutch agency listing pages to start scraping from.

## `maxItems` (type: `integer`):

Maximum number of agencies to scrape.

## Actor input object example

```json
{
  "startUrls": [
    {
      "url": "https://clutch.co/agencies"
    }
  ],
  "maxItems": 100
}
```

# Actor output Schema

## `results` (type: `string`):

No description

# 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 = {
    "startUrls": [
        {
            "url": "https://clutch.co/agencies"
        }
    ]
};

// Run the Actor and wait for it to finish
const run = await client.actor("parseforge/clutch-agencies-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 = { "startUrls": [{ "url": "https://clutch.co/agencies" }] }

# Run the Actor and wait for it to finish
run = client.actor("parseforge/clutch-agencies-scraper").call(run_input=run_input)

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

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

```

## CLI example

```bash
echo '{
  "startUrls": [
    {
      "url": "https://clutch.co/agencies"
    }
  ]
}' |
apify call parseforge/clutch-agencies-scraper --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "type": "http",
            "url": "https://mcp.apify.com/?tools=fetch-actor-details,parseforge/clutch-agencies-scraper"
        }
    }
}

```

The hosted server signs you in with OAuth on first connect, so no API token belongs in this config. Clients without OAuth support can send an `Authorization: Bearer <APIFY_API_TOKEN>` header instead, using a token from API & Integrations in Apify Console (https://console.apify.com/settings/integrations).

## OpenAPI specification

Download the OpenAPI definition: https://api.apify.com/v2/actors/6D8qsw2gCeJkH7prN/builds/vocdAxu2tThSs3z9D/openapi.json
