# Kickstarter Scraper (`maged120/kickstarter-scraper`) Actor

Scrape Kickstarter projects by keyword, category or discover link: funding goal, amount pledged, % funded, backers, deadlines, categories, locations and creators.

- **URL**: https://apify.com/maged120/kickstarter-scraper.md
- **Developed by:** [Maged](https://apify.com/maged120) (community)
- **Categories:** E-commerce, Lead generation
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

from $6.00 / 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?

An Actor is a serverless cloud program that runs on the Apify platform. It has two run modes.
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.

Apify vocabulary and the platform model are defined once, in the agent quickstart at https://apify.com/agents.md.

## 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.

Do not guess an integration path. Every one of them is in the agent quickstart at https://apify.com/agents.md: the Apify MCP server, Agent Skills with the Apify CLI, the JavaScript and Python clients, the REST API, and the account-free path for an agent with no human to sign in. It also carries the rule on stating cost before the first paid run.

For examples already wired to this Actor's own input schema, see the [API](#api) section below.

Each client library has reference documentation the quickstart does not restate: [JavaScript/TypeScript](https://docs.apify.com/api/client/js/docs.md) (`npm install apify-client`) and [Python](https://docs.apify.com/api/client/python/docs.md) (`pip install apify-client`).

# README

**Scrape Kickstarter projects by keyword, category or search link.** Get each project's funding goal, amount pledged, % funded, backers, average pledge, launch date and deadline, category, location and creator, ready for spreadsheets and dashboards.

### What does Kickstarter Scraper do?

Kickstarter Scraper collects crowdfunding projects from [Kickstarter](https://www.kickstarter.com/). It covers live campaigns, successfully funded projects and everything in between. Every project becomes a **clean, structured row**, and amounts are also converted to USD so you can compare projects directly.

It runs on the Apify platform, so you also get API access, scheduled runs, integrations (Google Sheets, Slack, Zapier, Make, webhooks), proxy rotation and run monitoring.

### Why use Kickstarter Scraper?

- **Product and market research**: see which product ideas get funded, how much they raise and what backers pay on average.
- **Lead generation**: find creators with live or freshly funded campaigns. They're a natural fit for manufacturers, fulfilment, marketing and PR services.
- **Competitor tracking**: watch campaigns in your niche and how fast they fund.
- **Investment and trend analysis**: build datasets of funding performance by category, country and time.
- **Launch planning**: benchmark goals, pledge levels and campaign lengths before launching your own.

### How to scrape Kickstarter projects

1. Open the **Input** tab.
2. Add **keywords** (`board game`) or paste **Kickstarter discover links** from your browser.
3. Pick a **category**, **status** and **sort order**, or keep the defaults.
4. Click **Start**. Projects appear in the **Output** tab as they're collected.
5. Download the results as JSON, CSV, Excel or HTML, or pull them through the API.

### Input

| Field | Description |
|---|---|
| `searches` | Keywords or Kickstarter discover or category links. Leave empty to browse with filters only. |
| `category` | Art, Comics, Design, Games, Technology and more. |
| `status` | All, live, or successfully funded. |
| `sortBy` | Recommended, most popular, newest, ending soon, most funded, or most backed. |
| `maxProjectsPerSearch` | Maximum projects per search (0 = all, up to 2,400). Default 100. |

```json
{
    "searches": ["board game", "https://www.kickstarter.com/discover/advanced?category_id=16&sort=most_funded&state=successful"],
    "status": "live",
    "sortBy": "end_date",
    "maxProjectsPerSearch": 300
}
```

### Output

Each project is its own row. You can download the dataset in various formats such as JSON, HTML, CSV, or Excel.

```json
{
    "entityType": "project",
    "searchTerm": "board game",
    "projectId": 982513622,
    "name": "Hex Moon: The Board Game",
    "blurb": "A last-man-standing board game for 3-5 players featuring vampires, fairies, angels, knights, and witches!",
    "url": "https://www.kickstarter.com/projects/1427350483/hex-moon-the-board-game",
    "imageUrl": "https://i.kickstarter.com/assets/054/129/089/e09e505ef718146bae51212f0747fb07_original.jpg",
    "state": "live",
    "category": "Tabletop Games",
    "parentCategory": "Games",
    "goal": 2500.0,
    "pledged": 837.0,
    "currency": "USD",
    "pledgedUsd": 837.0,
    "percentFunded": 33.48,
    "backers": 18,
    "averagePledge": 46.5,
    "launchedAt": "2026-09-18T22:04:16+00:00",
    "deadline": "2026-10-18T22:04:16+00:00",
    "staffPick": false,
    "country": "US",
    "location": "Provo, UT",
    "creatorName": "Devon Thurgood",
    "creatorUrl": "https://www.kickstarter.com/profile/1427350483"
}
```

#### Data fields

| Field | What it means |
|---|---|
| `name`, `blurb`, `url`, `imageUrl` | Project title, short pitch, link and cover image |
| `state` | live, successful, failed, canceled or submitted |
| `category`, `parentCategory` | Subcategory and main category |
| `goal`, `pledged`, `currency` | Funding goal and amount pledged in the project's currency |
| `pledgedUsd` | Amount pledged converted to USD |
| `percentFunded`, `backers`, `averagePledge` | Funding performance |
| `launchedAt`, `deadline`, `createdAt` | Campaign timeline |
| `staffPick` | Featured as a "Project We Love" |
| `country`, `location` | Where the project is based |
| `creatorName`, `creatorUrl` | Who runs the campaign |

#### Dataset views

- **Projects**: overview with image, status, funding and creator.
- **Funding**: goals, pledges, backers and timeline.
- **Creators & locations**: who is behind each project and where.

### How many results will I get?

You get one row per project, up to 2,400 per search (Kickstarter's own limit). For more coverage, split a broad search by category, status or sort order.

### Tips

- **Find campaigns about to end**: set status to Live and sort by "Ending soon".
- **Find the biggest hits**: set status to Successfully funded and sort by "Most funded".
- **Daily monitoring**: schedule a run sorted by "Newest" to collect every new launch in your category.
- **Compare across currencies**: use `pledgedUsd`, which puts every project in the same currency.

### FAQ

**Is it legal to scrape Kickstarter?**
The actor collects only publicly visible project information. You are responsible for how you use the data. Consult a lawyer if you're unsure about your use case.

**Why do I get at most 2,400 projects per search?**
Kickstarter itself shows at most 200 pages of results per search. Split broad searches into narrower ones to get more.

**Can I get creator emails?**
No. Kickstarter doesn't show creator emails publicly. Use the creator profile link to find their website and socials.

**Something missing or broken?**
Open an issue in the **Issues** tab and we'll look at it quickly. Need a custom version? Get in touch through the same tab.

***

⭐ **Found this Actor useful?** A quick review on the Store helps other users find it and keeps it maintained.

# Actor input Schema

## `searches` (type: `array`):

One per line. Enter a keyword (board game) or paste a Kickstarter discover or category link from your browser. A pasted link keeps its own filters. Leave empty to list projects using only the filters below.

## `category` (type: `string`):

Only projects in this category (for keyword searches).

## `status` (type: `string`):

Live campaigns only, successfully funded projects only, or everything.

## `sortBy` (type: `string`):

Order of results for keyword searches.

## `maxProjectsPerSearch` (type: `integer`):

Stop after this many projects for each keyword or link. 0 = as many as the search returns (up to 2,400).

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

Residential proxies give the most reliable results and are recommended. You can switch to other proxies to lower costs.

## Actor input object example

```json
{
  "searches": [
    "board game",
    "3d printer"
  ],
  "category": "",
  "status": "all",
  "sortBy": "magic",
  "maxProjectsPerSearch": 100,
  "proxyConfiguration": {
    "useApifyProxy": true,
    "apifyProxyGroups": [
      "RESIDENTIAL"
    ]
  }
}
```

# Actor output Schema

## `dataset` (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 = {
    "searches": [
        "board game",
        "3d printer"
    ],
    "maxProjectsPerSearch": 100,
    "proxyConfiguration": {
        "useApifyProxy": true,
        "apifyProxyGroups": [
            "RESIDENTIAL"
        ]
    }
};

// Run the Actor and wait for it to finish
const run = await client.actor("maged120/kickstarter-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 = {
    "searches": [
        "board game",
        "3d printer",
    ],
    "maxProjectsPerSearch": 100,
    "proxyConfiguration": {
        "useApifyProxy": True,
        "apifyProxyGroups": ["RESIDENTIAL"],
    },
}

# Run the Actor and wait for it to finish
run = client.actor("maged120/kickstarter-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 '{
  "searches": [
    "board game",
    "3d printer"
  ],
  "maxProjectsPerSearch": 100,
  "proxyConfiguration": {
    "useApifyProxy": true,
    "apifyProxyGroups": [
      "RESIDENTIAL"
    ]
  }
}' |
apify call maged120/kickstarter-scraper --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "type": "http",
            "url": "https://mcp.apify.com/?tools=fetch-actor-details,maged120/kickstarter-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/vaElwrTxUSAWURZ4p/builds/RiFBgyHuucxJUQy8f/openapi.json
