Kickstarter Campaigns Scraper avatar

Kickstarter Campaigns Scraper

Pricing

from $2.40 / 1,000 results

Go to Apify Store
Kickstarter Campaigns Scraper

Kickstarter Campaigns Scraper

Scrape Kickstarter reward-based crowdfunding campaigns by category or search term — funding progress, backer counts, creator, location, and optional reward-tier detail. One clean row per campaign. Built for market researchers and crowdfunding trend-spotters.

Pricing

from $2.40 / 1,000 results

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

Share


🎯 What this scrapes

Kickstarter has no official public API for campaign discovery — we read the site's own internal discovery endpoint and the campaign-detail payload embedded in each project page, so you get structured funding progress, backer counts, creator and location data, and (optionally) full reward-tier and add-on detail without hand-scraping the Discover page yourself.

🔥 What we handle for you

  • 🛡️ Browser fingerprint rotation + cookie warmupcurl-cffi impersonates real Chrome / Firefox / Safari TLS handshakes and warms cookies on the public Discover page before every session, so Kickstarter's internal endpoints see a real browser.
  • 🧩 We parse Kickstarter's undocumented wire format for you — the JSON-and-unicode-escaped window.current_project payload embedded in each project page, isolated in one parser module so a format change doesn't break your pipeline.
  • 🔁 Retries with exponential backoff on 408 / 429 / 503 — up to 5 attempts, fresh session on every retry.
  • 🧱 A single bad reward-tier page never drops a row — you get listing-only fields with a clear log instead of a failed run.
  • 🧊 Clean, typed dataset rows — Pydantic-validated, ISO-8601 timestamps, stable IDs, JSON / CSV / Excel export straight from the Apify Console.
  • 💰 Pay-Per-Event pricing — you only pay for results that hit your dataset. No data, no charge.

💡 Use cases

  • Competitive product-launch tracking — monitor new campaigns in your category before they hit the mainstream press.
  • Crowdfunding trend-spotting — pull a category's live campaigns to see what's gaining traction and how fast.
  • Market research — analyze funding goals, pledge velocity, and backer counts across a niche before launching your own campaign.
  • Reward-tier benchmarking — compare pricing and reward structures across competing campaigns in the same category.

⚙️ 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
categorystringno'technology'Kickstarter category slug to filter by. Leave unset to browse the unfiltered feed.
searchTermstringno'—'Free-text search query, combinable with Category. Leave empty to browse without a keyword filter.
sortstringno'magic'Result ordering passed to Kickstarter's discovery endpoint. Only 'magic' is independently verified; the others follow…
maxItemsintegerno50Hard cap on total campaigns returned across pagination — the priced dimension.
includeRewardTiersbooleannoTrueWhen true, fetches each campaign's detail page for reward tiers, add-ons, comments/updates counts, and tags. Roughly…
proxyConfigurationobjectno{'useApifyProxy': True}Apify Proxy config. apifyProxyGroups is left unset (datacenter default) — no residential-proxy requirement observed for…

Example input

{
"category": "technology",
"maxItems": 3,
"includeRewardTiers": true,
"proxyConfiguration": {
"useApifyProxy": true
}
}

📤 Output

Every row is one dataset item.

FieldTypeNotes
campaign_idintegerKickstarter's own numeric project ID.
namestringCampaign title.
blurb['string', 'null']One-line campaign pitch.
slugstringCanonical URL slug for the campaign.
statestringlive / successful / failed / canceled / suspended.
goal_usdnumberFunding goal, normalized to USD.
pledged_usdnumberAmount pledged so far, normalized to USD.
percent_fundednumberPercent of goal funded; derived from pledged/goal when not present on the payload.
backers_countintegerNumber of backers.
currencystringCampaign's native currency code.
countrystringCampaign's country code.
deadlinestringISO-8601 campaign deadline.
created_atstringISO-8601 campaign creation timestamp.
launched_atstringISO-8601 campaign launch timestamp.
staff_pickbooleanWhether Kickstarter staff featured this campaign.
creator_idintegerCreator's numeric Kickstarter ID.
creator_namestringCreator display name.
location_name['string', 'null']Creator/campaign location display name.
location_state['string', 'null']Location state/province, when disclosed.
location_country['string', 'null']Location country code, when disclosed.
category_idintegerKickstarter numeric category ID.
category_namestringKickstarter category name.
category_parent_name['string', 'null']Parent category name, when the category is a subcategory.
project_urlstringCanonical campaign detail URL.
image_url['string', 'null']Campaign cover photo URL.
comments_count['integer', 'null']Comment count from the detail page; null when reward tiers were not fetched.
updates_count['integer', 'null']Update-post count from the detail page; null when reward tiers were not fetched.
tagsarrayCampaign tags from the detail page; empty list when not fetched.
reward_tiers['array', 'null']List of reward-tier objects (reward_id, title, minimum_usd, description, backers_count, estimated_delivery,…
scraped_atstringISO-8601 UTC timestamp when this row was recorded.

Example output

{
"campaign_id": 1234567890,
"name": "Nomad Drone: The Foldable 4K Explorer",
"blurb": "A pocket-sized 4K drone that folds flat and flies for 40 minutes.",
"slug": "nomad-drone-4k-explorer",
"state": "live",
"goal_usd": 25000.0,
"pledged_usd": 41823.5,
"percent_funded": 167.29,
"backers_count": 612,
"currency": "USD",
"country": "US",
"deadline": "2026-09-01T17:00:00Z",
"created_at": "2026-06-10T14:22:00Z",
"launched_at": "2026-07-05T15:00:00Z",
"staff_pick": true,
"creator_id": 987654321,
"creator_name": "Nomad Aero Labs",
"location_name": "Austin, TX",
"location_state": "TX",
"location_country": "US",
"category_id": 16,
"category_name": "Gadgets",
"category_parent_name": "Technology",
"project_url": "https://www.kickstarter.com/projects/987654321/nomad-drone-4k-explorer",
"image_url": "https://ksr-ugc.imgix.net/assets/example.jpg",
"comments_count": 214,
"updates_count": 9,
"tags": [
"Editor's Pick"
],
"reward_tiers": [
{
"reward_id": 111,
"title": "Early Bird Nomad Drone",
"minimum_usd": 149.0,
"description": "One Nomad Drone at the early-bird price. Ships worldwide.",
"backers_count": 340,
"estimated_delivery": "2026-12-01T00:00:00Z",
"shipping_enabled": true,
"available": true
}
],
"scraped_at": "2026-08-02T09:15:00Z"
}

💰 Pricing

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

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

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

🚧 Limitations

Authenticated / backer-only data (pledge history, backer identities, private survey responses) is out of scope. Comment thread content and update post content are not scraped — only comments_count and updates_count. Non-USD currency conversion is limited to what Kickstarter's own payload already provides. Each run is a fresh snapshot; historical/time-series tracking across runs is on the buyer via scheduling.

❓ FAQ

Do I need to provide a category or search term?

No — both are optional. Leave both empty to browse Kickstarter's unfiltered, magic-sorted campaign feed.

What does includeRewardTiers add?

It fetches each campaign's own project page for reward_tiers, add-ons, comments_count, updates_count, and tags. It roughly doubles request volume, so turn it off if you only need funding-progress fields.

Is percent_funded always present?

Kickstarter doesn't always include it in the listing payload — when it's missing we derive it as pledged / goal * 100.

Can I get backer identities or pledge history?

No — that data requires an authenticated backer session and is out of scope. This Actor only reads Kickstarter's public campaign data.

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