Indie Hackers Discussions Scraper
Pricing
Pay per event
Indie Hackers Discussions Scraper
Export public Indie Hackers discussion threads, founder topics, authors, timestamps, and source URLs from IndieHackers.com.
Pricing
Pay per event
Rating
0.0
(0)
Developer
Stas Persiianenko
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
5 days ago
Last modified
Categories
Share
Export public Indie Hackers discussion threads from IndieHackers.com into a clean Apify dataset.
This actor reads the public Indie Hackers Firebase JSON feed, so it is fast, inexpensive, and does not need browser automation, login, or proxies.
What does Indie Hackers Discussions Scraper do?
Indie Hackers Discussions Scraper collects public discussion threads from Indie Hackers.
It can export recent threads, newly created threads, updated threads, or keyword-filtered conversations.
Each result includes the thread id, title, author, timestamps, bump metrics, source URL, and optional body content.
You can also enable recent comment scanning to attach public comments that are visible in the public comments feed.
Who is it for?
šÆ Startup founders use it to monitor market pain points and founder discussions.
š Growth marketers use it to find conversations around distribution, launch strategy, SaaS, and product ideas.
š§āš» Indie builders use it to track topics that resonate with the Indie Hackers community.
š Lead researchers use it to discover founders, usernames, and discussion context for manual follow-up.
š¤ AI workflow builders use it to feed recent founder conversations into LLM summaries or alerts.
Why use this actor?
It is HTTP-only and lightweight.
It returns structured data instead of browser screenshots or raw HTML.
It uses public data only.
It supports keyword filtering.
It includes both ISO timestamps and raw timestamps for easy downstream processing.
It can run cheaply for scheduled monitoring jobs.
Public data source
The actor uses public Indie Hackers discussion data.
The primary source is the public Firebase endpoint behind IndieHackers.com.
No Indie Hackers account is required.
No session cookies are required.
No CSRF token is required.
No browser automation is required.
Data you can extract
| Field | Description |
|---|---|
threadId | Stable Firebase id of the discussion thread |
title | Public discussion title |
content | Public discussion body when enabled |
username | Public author username |
userId | Public author id |
createdAt | ISO creation time |
updatedAt | ISO update time |
bumpedAt | ISO bump time |
bumpCount | Public bump count |
boostPoints | Public boost points |
commentCount | Number of attached comments found by the optional scan |
comments | Optional nested recent comment records |
matchedKeyword | Keyword filter used for the match |
sourceUrl | Indie Hackers source URL |
How much does it cost to scrape Indie Hackers discussions?
This actor uses pay-per-event pricing.
The default result event is one saved discussion thread.
BRONZE pricing is $0.0000808 per saved discussion thread (about $0.0808 per 1,000 saved discussion threads), plus a $0.005 run-start event.
Tier discounts apply automatically based on the user's Apify plan.
Small monitoring runs are designed to be inexpensive.
Input options
Maximum threads
Set maxItems to control how many discussion thread records are saved.
The default is 50.
The prefill is intentionally small so first runs stay cheap.
Sort public threads by
Choose the timestamp field used for ordering.
Use bumpedAt to monitor recently active discussions.
Use createdAt to monitor newly created discussions.
Use updatedAt to monitor edited discussions.
Sort direction
Use newest for recent monitoring.
Use oldest for archive-style exports.
Keyword filter
Use keyword to match discussion titles, bodies, and usernames.
Leave it empty to export the latest public discussions.
Include thread content
Keep includeContent enabled when you want the full discussion body.
Disable it when you only need metadata and source URLs.
Attach recent comments
Enable includeComments to scan the latest public comments feed.
The comment scan is best-effort because Indie Hackers does not expose a complete public thread-specific comment index without restricted paths.
Example input
{"maxItems": 25,"sortBy": "bumpedAt","sortDirection": "newest","keyword": "distribution","includeContent": true,"includeComments": false,"commentScanLimit": 200}
Example output
{"threadId": "-Ol7IaOMfkxU0TSITgnF","title": "What's harder: building the thing or getting people to use it?","content": "4 days into my founder journey...","username": "ZeroRook","userId": "6VpcNYNi7nO35UbSifIgs3RMZHB3","createdAt": "2026-02-10T12:07:03.427Z","createdAtTimestamp": 1770739623427,"updatedAt": "2026-02-10T12:07:03.427Z","updatedAtTimestamp": 1770739623427,"bumpedAt": "2026-02-10T12:07:03.427Z","bumpedAtTimestamp": 1770739623427,"bumpCount": 0,"boostPoints": 0,"commentCount": 0,"matchedKeyword": "distribution","sourceUrl": "https://www.indiehackers.com/post/-Ol7IaOMfkxU0TSITgnF","sourceId": "-Ol7IaOMfkxU0TSITgnF"}
How to run it
Open the actor on Apify.
Set maxItems to the number of discussions you need.
Choose bumpedAt for active discussions or createdAt for new posts.
Optionally enter a keyword.
Click Start.
Download the dataset as JSON, CSV, Excel, or through the API.
Tips for better results
Use broad keywords such as distribution, marketing, SaaS, founder, or launch.
Use scheduled runs to monitor new founder discussions every day.
Use bumpedAt when you care about active conversations.
Use createdAt when you care about brand-new posts.
Keep comment scanning disabled unless you need comment context.
Increase commentScanLimit only when comment matches are important.
Integrations
Send new discussions to Slack for founder-signal monitoring.
Export keyword-filtered threads to Google Sheets for lead research.
Feed discussion content into an LLM summarizer for weekly market intelligence.
Trigger a CRM workflow when a thread mentions a relevant pain point.
Build a content ideation dashboard from recurring Indie Hackers topics.
API usage with Node.js
import { ApifyClient } from 'apify-client';const client = new ApifyClient({ token: process.env.APIFY_TOKEN });const run = await client.actor('automation-lab/indie-hackers-discussions-scraper').call({maxItems: 25,sortBy: 'bumpedAt',keyword: 'distribution',includeContent: true});console.log(run.defaultDatasetId);
API usage with Python
from apify_client import ApifyClientclient = ApifyClient('MY-APIFY-TOKEN')run = client.actor('automation-lab/indie-hackers-discussions-scraper').call(run_input={'maxItems': 25,'sortBy': 'bumpedAt','keyword': 'distribution','includeContent': True,})print(run['defaultDatasetId'])
API usage with cURL
curl -X POST 'https://api.apify.com/v2/acts/automation-lab~indie-hackers-discussions-scraper/runs?token=MY-APIFY-TOKEN' \-H 'Content-Type: application/json' \-d '{"maxItems":25,"sortBy":"bumpedAt","keyword":"distribution","includeContent":true}'
MCP usage
Use this actor from Apify MCP tools in Claude Desktop or Claude Code.
MCP URL:
https://mcp.apify.com/?tools=automation-lab/indie-hackers-discussions-scraper
Claude Code setup:
$claude mcp add apify-indie-hackers "https://mcp.apify.com/?tools=automation-lab/indie-hackers-discussions-scraper"
Claude Desktop JSON config example:
{"mcpServers": {"apify-indie-hackers": {"url": "https://mcp.apify.com/?tools=automation-lab/indie-hackers-discussions-scraper"}}}
Example prompt:
Run the Indie Hackers Discussions Scraper for 50 recently bumped posts about distribution and summarize the top pain points founders mention.
Another example prompt:
Find recent Indie Hackers discussions mentioning SaaS onboarding and return the source URLs plus short summaries.
Scheduling ideas
Run every morning for bumpedAt discussions.
Run weekly for a list of recurring keywords.
Send keyword matches to a webhook.
Archive monthly exports to a data warehouse.
Limitations
The actor exports public data only.
Private or restricted Firebase paths are intentionally avoided.
Comment attachment is best-effort and scans recent public comments instead of restricted thread-comment indexes.
Indie Hackers may change its public data structure in the future.
Troubleshooting
Why did I get fewer results than maxItems?
A keyword filter may remove records from the fetched public thread window.
Try a broader keyword or leave the keyword empty.
Why are comments empty?
The public comments feed is scanned by recency.
If no recently scanned comments match the exported thread ids, the actor leaves comments empty.
Why are some timestamps unusual?
The actor preserves the raw public timestamps returned by Indie Hackers and also converts them to ISO strings.
Data quality checks
Each item includes a source id.
Each item includes a source URL.
Numbers are stored as numbers.
Timestamps are stored as both ISO strings and raw numeric values.
Optional missing fields are returned as null instead of invented values.
Legality
This actor collects publicly available information.
You are responsible for using exported data in compliance with applicable laws, platform terms, and privacy rules.
Do not use the data for spam.
Do not attempt to access private Indie Hackers paths.
Related scrapers
You may also find these automation-lab actors useful:
- https://apify.com/automation-lab/product-hunt-scraper
- https://apify.com/automation-lab/tiny-startups-scraper
- https://apify.com/automation-lab/reddit-scraper
- https://apify.com/automation-lab/hacker-news-scraper
FAQ
Does this actor require an Indie Hackers account?
No.
It uses public JSON data only.
Does it use a browser?
No.
It is HTTP-only.
Does it use proxies?
No proxy is required for the public Firebase endpoint.
Can I filter by topic?
Yes.
Use the keyword input.
Can I export comments?
Yes, but comment attachment is best-effort through the recent public comments feed.
Can I schedule it?
Yes.
Apify schedules work well for daily or weekly monitoring.
Changelog
Initial version exports public Indie Hackers discussion threads with metadata, content, keyword filtering, and optional recent comment attachment.