Bluesky Data & API Alternative | Posts, Followers | $0.60 / 1K
Pricing
from $2.50 / 1,000 actor starteds
Bluesky Data & API Alternative | Posts, Followers | $0.60 / 1K
Bluesky data without a login or key: an account's posts with engagement counts, reply threads, and follower or following lists, via Bluesky's official public API. Incremental mode returns only new posts. $0.60 per 1,000 posts, $0.30 per 1,000 replies or profiles, $0.0025 per run. No keyword search.
Pricing
from $2.50 / 1,000 actor starteds
Rating
0.0
(0)
Developer
Hriday Rungta
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
4 hours ago
Last modified
Categories
Share
Bluesky data export: posts, reply threads, followers and following lists, with incremental monitoring
Get Bluesky data as flat rows: an account's posts with engagement counts, a post's full reply thread, and follower or following lists. The Actor reads Bluesky's official public API (the AppView at public.api.bsky.app, the same backend bsky.app uses for logged-out visitors). No login, no API key, no browser, no proxy. Turn on incremental mode to get only the posts published since your last run.
$0.60 per 1,000 posts, $0.30 per 1,000 replies or follower rows, $0.0025 start fee per run.
What people use it for
- Bluesky followers export: list who follows an account, with handle, display name, bio, avatar and account creation date. Also works for the accounts someone follows.
- Bluesky analytics for accounts you track: posts with like, repost, reply, quote and bookmark counts, for engagement benchmarking of brands, creators or competitors.
- Monitor accounts for new posts: run incremental mode on a schedule and send new posts to Slack, a sheet or a database.
- Bluesky reply threads: a post plus every reply beneath it, flattened with
threadDepth, for sentiment analysis and community research. - Bluesky dataset for AI: post text with language tags and timestamps for LLM and topic-modelling datasets.
- Audience research: compare the follower lists of two accounts, or build an outreach list from an account's followers.
Why use this instead of calling the Bluesky API yourself?
Bluesky's public API is free and documented, and if you want to write the code it is a good choice. This Actor saves the plumbing: cursor pagination, retries, thread flattening, a consistent row shape for posts, replies and profiles, per-account state for incremental runs, plus scheduling, webhooks and CSV, Excel or JSON export from Apify.
Limits, stated plainly
- No keyword or hashtag search. Bluesky's
searchPostsendpoint returns HTTP 403 for anonymous callers (confirmed locally and from a live Apify run), so this Actor works from accounts and post URLs only. For keyword search on Bluesky, see the third-party Actors below. - The posts feed of an account includes its reposts and replies. Reposts have
isRepostOfset and keep the original author inauthorHandle. They are billed as posts. - Public data only. No private accounts, no DMs, no logged-in views.
- Follower rows have no follower totals, only the profile fields listed under Output.
Incremental mode
Set incremental: true (mode posts only). The first run per account takes posts since firstRunSince (30 days by default, all for a backfill). Every later run returns only newer posts for that account, tracked in a key-value store in your own account. A run cut short by maxItems still advances the mark from what it emitted, so no duplicates and no skipped posts.
Input
| Input | Default | Notes |
|---|---|---|
mode | posts | posts, thread, followers or following |
actors | none | Handles (jay.bsky.team), DIDs or profile URLs, one per line. Used by posts, followers, following |
postUrls | none | bsky.app post URLs or at:// URIs. Used by thread |
incremental | false | posts mode only |
maxReplyDepth | 10 | thread mode only. 0 is the root post only |
maxItems | 100 | Cost cap, billed per row saved. Accounts are read in the order listed |
firstRunSince | 30 days | Incremental mode only |
Example input, posts from an account:
{ "mode": "posts", "actors": ["bsky.app"], "maxItems": 50 }
Example input, followers export:
{ "mode": "followers", "actors": ["bsky.app"], "maxItems": 1000 }
Example input, new posts from several accounts (schedule it):
{ "mode": "posts", "actors": ["bsky.app", "jay.bsky.team"], "incremental": true, "firstRunSince": "7 days" }
Output
Real example, a post row (shortened):
{"uri": "at://did:plc:z72i7hdynmk6r22z27h6tvur/app.bsky.feed.post/3myd52wqlwc2b","authorHandle": "bsky.app","authorDisplayName": "Bluesky","text": "yes. here's what the film we were discussing is about: ...","createdAtUtc": "2026-10-20T17:14:02.246Z","langs": ["en"],"embed": { "type": "external", "uri": "https://en.wikipedia.org/wiki/Musk_(film)" },"replyCount": 7,"repostCount": 3,"likeCount": 17,"quoteCount": 0,"bookmarkCount": 0,"url": "https://bsky.app/profile/bsky.app/post/3myd52wqlwc2b"}
Follower and following rows carry did, handle, displayName, description, avatar, createdAtUtc, direction and subjectActor. Thread rows are post rows plus threadDepth.
Pricing: pay per event, worked examples
| Event | Price |
|---|---|
| Actor started | $0.0025, once per run |
| Post scraped | $0.0006 ($0.60 per 1,000) |
| Reply scraped | $0.0003 ($0.30 per 1,000) |
| Profile scraped (follower or following row) | $0.0003 ($0.30 per 1,000) |
| Run | Cost |
|---|---|
| 50 posts | about $0.033 |
| 1,000 followers | about $0.30 |
| A thread with 200 replies | about $0.06 |
| Daily incremental run, 5 new posts | about $0.0055 |
maxItems is your hard cost cap. Platform usage is included.
Integrations and scheduling
- Apify Schedules: run incremental mode hourly or daily for account monitoring.
- Webhooks, Make, n8n and Zapier: push new posts to Slack, email, Notion or a CRM.
- Google Sheets: export datasets to a sheet.
- API and clients (JavaScript, Python), and Apify's MCP server for AI agents.
FAQ
Does Bluesky have a free API? Yes, a public one. This Actor is built on it and adds pagination, threads, incremental runs and export so you do not write that code.
Can I export Bluesky followers to CSV? Yes. Use mode followers, run, then download the dataset as CSV, Excel or JSON.
Can I search Bluesky by keyword or hashtag? Not with this Actor, see Limits above.
Does it work without logging in? Yes, it uses the logged-out public API only.
How do I track new posts from an account? Use incremental: true and schedule the Actor.
Is it legal? It reads publicly available data through Bluesky's own public API. Follow privacy law when you store profile data.
What are alternatives? lexis-solutions/bluesky-posts-scraper advertises post search, lexis-solutions/bluesky-users-scraper advertises user search and bytepulselabs/bluesky-video-downloader downloads videos from post URLs. Compare current pricing and features on their pages.
Related Actors
- Reddit Scraper & API Alternative: subreddit and comment monitoring.
- Telegram Channel Scraper: public channel posts and views.
- TikTok Profile & Video Scraper: profile stats and videos by URL.
- lexis-solutions/bluesky-posts-scraper: third-party Actor for Bluesky post search.
- bytepulselabs/bluesky-video-downloader: third-party Bluesky video downloader.