Gofundme Search By Keyword
Pricing
from $2.99 / 1,000 fundraisers
Gofundme Search By Keyword
Search and scrape GoFundMe fundraising campaigns by keyword, location, and category. Extract campaign data including donations, progress, beneficiary info, and URLs. Perfect for market research and competitive analysis. Pay-per-result pricing.
Pricing
from $2.99 / 1,000 fundraisers
Rating
0.0
(0)
Developer
DataCach
Maintained by CommunityActor stats
0
Bookmarked
11
Total users
5
Monthly active users
11 days ago
Last modified
Categories
Share
GoFundMe Campaign Search Scraper — Extract Fundraising Data by Keyword
Search and extract GoFundMe campaign data by keyword, location, and category with the GoFundMe Campaign Search Scraper. Access donation amounts, fundraising progress, organizer details, and campaign metrics at scale — no official GoFundMe API required. Ideal for market research, donation analytics, competitive analysis, and fundraising intelligence. Pay-per-result pricing — you only pay for the data you receive.
What Does the GoFundMe Search Scraper Do?
- Search GoFundMe campaigns by keyword, location, and category
- Extract campaign data including fund names, URLs, donation amounts, goal progress percentages, beneficiary information, organizer details, and campaign images
- Filter by category (medical, education, emergency, funeral, business, and more), location, goal progress, and creation date
- Track donation metrics including amount raised, amount to goal, goal progress percentage, and total donation count
- Run multi-keyword searches for broad market coverage across fundraising causes
- Pass GoFundMe search URLs directly — the scraper automatically extracts all filters from the URL, no need to re-enter them
- Resume previous runs with
start_pageto skip already-collected pages and avoid duplicate data - Control result volume with configurable limits (multiples of 10, up to 1,000 results per run)
- Output structured JSON ready for analysis, CRM integration, or custom data pipelines
How Does the GoFundMe Scraper Work?
-
Input
Provide one or more search keywords or GoFundMe search URLs (e.g.,"medical emergency","cancer treatment", or a URL copied from GoFundMe's search page) along with optional filters:- Location (city, state, or address)
- Category (medical, education, emergency, funeral, business, etc.)
- Close-to-goal filter
- Creation date range
- Maximum results (multiples of 10: 10, 20, 30, 50, 100, 200, 500, 1,000)
- Start page (to resume from where a previous run left off)
-
Process
For each search term, the scraper:- Connects to GoFundMe's search API and performs keyword-based queries
- Applies location, category, and filter criteria to narrow results
- Extracts campaign data including donation metrics, beneficiary info, and campaign details
- Paginates automatically to collect results across multiple pages
- Deduplicates results and respects the configured result limit
-
Output
A structured JSON dataset with:- Campaign identification: URL, fund name, campaign ID, object ID
- Organizer information: username
- Beneficiary details: beneficiary name
- Financial data: amount raised, amount to goal, goal progress %, currency code
- Engagement metrics: total donation count
- Visual content: campaign image URL
- Search metadata: search term used, extraction date and timestamp
Input Parameters
{"search_terms": ["medical emergency","cancer treatment","education fund"],"location": "Las Vegas, NV","category": "medical","close_to_goal": false,"timeout_start": "past_30_days","max_results": 100,"start_page": 0}
Note:
max_resultsmust be a multiple of 10 (e.g., 10, 20, 30, 50, 100, 200, 500, 1000).
Parameter Reference
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
search_terms | array | ✅ | — | Keywords or GoFundMe search URLs to search for |
max_results | integer | ✅ | 100 | Maximum results to collect. Must be a multiple of 10, up to 1,000 |
location | string | No | — | City, state, or address to filter by location |
category | string | No | — | Campaign category filter (see table below) |
close_to_goal | boolean | No | false | Only return campaigns within 50% of their goal |
timeout_start | string | No | all_time | Filter by campaign creation date (see table below) |
start_page | integer | No | 0 | Page to start from (0-indexed). Use to resume a previous run |
Using GoFundMe Search URLs in search_terms
Instead of typing a keyword and manually setting filters, you can paste a GoFundMe search URL directly into the search_terms array. The scraper automatically extracts the keyword, location, category, and all filters from the URL.
This is especially useful for resuming a previous run — just paste the URL from your last search and set start_page to the next unscraped page:
{"search_terms": ["https://www.gofundme.com/s?q=cancer&city=New+York&category=medical&timeout_start=past_30_days"],"start_page": 5,"max_results": 100}
You can mix plain keywords and URLs in the same array:
{"search_terms": ["education fund","https://www.gofundme.com/s?q=medical+emergency&city=Los+Angeles"],"max_results": 200}
URL parameters recognized:
| URL param | Maps to | Example |
|---|---|---|
q | keyword | ?q=cancer+treatment |
city / location | location | ?city=New+York |
category | category | ?category=medical |
close_to_goal | close_to_goal | ?close_to_goal=1 |
timeout_start | timeout_start | ?timeout_start=past_7_days |
Note: If an unrecognized parameter value is found (e.g., an unknown category name), the scraper logs a warning and falls back to the default for that filter rather than failing.
Resuming a Previous Run with start_page
GoFundMe's search API paginates results in pages of ~48 campaigns each (0-indexed). If you already collected pages 0–4 in a previous run (roughly 240 results), set start_page: 5 in your next run to pick up exactly where you left off.
{"search_terms": ["medical emergency"],"start_page": 5,"max_results": 200}
Note:
start_pageapplies to all search terms in the array. If you are resuming multiple keywords, they should all be at the same page offset, or use separate runs per keyword.
Available Categories
| Value | GoFundMe Category |
|---|---|
medical | Medical & Healthcare |
education | Education & Schools |
emergency | Emergency & Crisis |
funeral | Funeral & Memorial |
business | Business & Entrepreneurship |
family | Family & Personal |
animals | Animals & Pets |
environment | Environment & Nature |
community | Community & Non-profit |
competition | Competition & Contests |
creative | Creative & Arts |
events | Events & Celebrations |
faith | Faith & Religion |
sports | Sports & Athletics |
travel | Travel & Adventure |
volunteer | Volunteer & Service |
wishes | Wishes & Dreams |
other | Other |
Time Filters (timeout_start)
| Value | Description |
|---|---|
| (omitted) | All time — no date restriction |
past_24_hours | Campaigns created in the last 24 hours |
past_7_days | Campaigns created in the last 7 days |
past_30_days | Campaigns created in the last 30 days |
past_12_months | Campaigns created in the last 12 months |
Output Example
[{"url": "https://www.gofundme.com/f/help-start-a-bmx-journey","fundname": "Help Start a BMX Journey","username": "game space","bene_name": "","balance": 0,"amount_to_goal": 200,"goal_progress": 0.0,"donation_count_full": 0,"currencycode": "USD","thumb_img_url": "https://images.gofundme.com/uSTmPtM1A8LBsibMwG6g-6kZicQ=/720x405/https://d2g8igdw686xgo.cloudfront.net/96379989_1762525998401067_r.png","objectID": "96379989","search_term": "game","extraction_date": "2025-12-01","extraction_datetime": "2025-12-01T01:55:50.301745+00:00"}]
How to Use This Scraper
In the Apify Console
- Open the actor and click Run
- Paste your input JSON (see example above)
- Results appear in the Dataset tab as they are collected
Python
from apify_client import ApifyClientclient = ApifyClient("YOUR_API_TOKEN")# Standard keyword searchrun = client.actor("your-actor-id").call(run_input={"search_terms": ["medical emergency", "cancer treatment"],"location": "Las Vegas, NV","category": "medical","close_to_goal": False,"timeout_start": "past_30_days","max_results": 100})# Resume a previous run from page 5 using a URLrun = client.actor("your-actor-id").call(run_input={"search_terms": ["https://www.gofundme.com/s?q=medical+emergency&city=Las+Vegas&category=medical"],"start_page": 5,"max_results": 100})for item in client.dataset(run["defaultDatasetId"]).iterate_items():print(item)
Node.js
const { ApifyClient } = require('apify-client');const client = new ApifyClient({ token: 'YOUR_API_TOKEN' });// Standard keyword searchconst run = await client.actor('your-actor-id').call({search_terms: ['medical emergency', 'cancer treatment'],location: 'Las Vegas, NV',category: 'medical',close_to_goal: false,timeout_start: 'past_30_days',max_results: 100});// Resume a previous run from page 5 using a URLconst resumeRun = await client.actor('your-actor-id').call({search_terms: ['https://www.gofundme.com/s?q=medical+emergency&city=Las+Vegas&category=medical'],start_page: 5,max_results: 100});const { items } = await client.dataset(run.defaultDatasetId).listItems();console.log(items);
Technical Details
| Feature | Details |
|---|---|
| Data source | GoFundMe public search API |
| Pagination | Automatic — handles all result pages |
| Resume support | start_page lets you continue from any page offset |
| Input flexibility | Accepts plain keywords or GoFundMe search URLs |
| Result limits | Multiples of 10, up to 1,000 per search term |
| Location support | Geocodes city/state/address strings to coordinates |
| Deduplication | Unique campaign entries guaranteed per run |
| Output format | Structured JSON with consistent field names and types |
| Metadata | Search term + UTC extraction timestamp per record |
Use Cases
- Market Research: Analyze fundraising trends and campaign performance by category or region
- Competitive Analysis: Track campaigns in your niche and benchmark fundraising strategies
- Campaign Discovery: Find relevant campaigns for partnerships, sponsorships, or charitable support
- Donation Analytics: Study goal achievement rates, donation counts, and progress patterns at scale
- Location Intelligence: Identify geographic fundraising trends by city or state
- Trend Analysis: Surface emerging causes and trending campaigns in real time
- Data Integration: Feed GoFundMe campaign data into analytics dashboards, CRMs, or custom workflows
Frequently Asked Questions
Does this scraper require a GoFundMe API key?
No. This scraper accesses GoFundMe's public search interface — no official API credentials are needed.
How many results can I get per search term?
Up to 1,000 results per keyword. The max_results value must be a multiple of 10.
Can I search multiple keywords in one run?
Yes. Pass an array of keywords in search_terms and the actor runs a separate search for each, returning combined deduplicated results.
Can I pass a GoFundMe URL instead of a keyword?
Yes. Any item in search_terms that starts with https:// is treated as a GoFundMe search URL. The scraper extracts all filters (keyword, location, category, date range) directly from the URL. You can mix plain keywords and URLs in the same array.
How do I resume a previous run without re-fetching data I already have?
Set start_page to the next unscraped page. Pages are 0-indexed and contain ~48 results each — if you collected 240 results (pages 0–4), set start_page: 5 in your next run. For best results, combine start_page with a GoFundMe search URL so all filters are preserved exactly.
Is location-based filtering supported?
Yes. Provide a city, state, or full address in the location field. The scraper geocodes it automatically for accurate geographic filtering.
What format does the scraper return data in?
All results are structured JSON records stored in the Apify Dataset. Each record includes campaign URL, fund name, financial data, donor count, image URL, and extraction metadata.
Is there an official GoFundMe API I can use instead?
GoFundMe does not offer a public campaign search API. This actor is the most capable GoFundMe API alternative available, providing structured search and extraction through the Apify platform.
What is the pricing model?
This actor uses pay-per-result pricing — you are only charged for the campaign records actually returned, not for the compute time.
GoFundMe API Alternative
Looking for a GoFundMe API or programmatic access to crowdfunding campaign data? This actor is a powerful GoFundMe API alternative — providing structured campaign search results, donation metrics, and campaign metadata through a simple, scalable interface on Apify.
Whether you need a GoFundMe data API, GoFundMe scraping API, or a GoFundMe search API integration, this scraper delivers:
- Keyword-based campaign search — no GoFundMe API credentials required
- RESTful access via Apify's standard actor API
- Structured JSON output compatible with any data pipeline or integration
- Real-time campaign extraction with automatic pagination
- Scalable pay-per-result pricing on the Apify platform
- Multi-parameter filtering by keyword, location, category, and date range
Use this actor to build GoFundMe API integrations, power fundraising analytics platforms, or feed crowdfunding data into business intelligence tools — all without waiting for an official GoFundMe public API.
Support
For questions or issues, contact us through Apify's messaging system or reach out directly via email.
Credits
Developed and maintained by the DataCach team.