Bluesky Posts & Profiles Scraper: Public Feeds to Data
Pricing
from $0.30 / 1,000 bluesky posts
Bluesky Posts & Profiles Scraper: Public Feeds to Data
Export public Bluesky posts and profiles by handle or post link: post text, dates, like, repost, reply and quote counts, links, and profile follower counts. Uses only Bluesky's public AppView API. Unofficial.
Pricing
from $0.30 / 1,000 bluesky posts
Rating
0.0
(0)
Developer
Lepi Data
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
9 days ago
Last modified
Categories
Security
Limited permissionsShare
Bluesky Posts & Profiles Scraper
Unofficial tool. Not affiliated with, endorsed by, or sponsored by Bluesky Social, PBC. Content may since have been deleted on Bluesky.
Export public Bluesky posts and profiles as one row per record. It's for social media managers, researchers, journalists and brands who want to track public accounts, archive their own posts or analyse engagement.
Input: Bluesky handles, DIDs or profile links (and optionally links to single posts), plus a mode: posts, profiles or both.
Output (posts): text, created date, language, reply, repost, like and quote counts, reply and repost flags, embed type, linked URL, image alt texts and a link to the post. Output (profiles): handle, display name, bio, follower, following and post counts, and created date.
Every row carries the note "Content may since have been deleted on Bluesky." Posts and profiles can be deleted or edited after the run.
Bluesky input
handles: handles (bsky.app,name.bsky.social), DIDs orhttps://bsky.app/profile/...links, up to 200postUrls: links to single posts, up to 1,000mode:posts(default),profilesorbothmaxPostsPerProfile: newest first, default 100postsFrom: YYYY-MM-DDincludeReplies,includeReposts: off by defaultmaxResults: up to 20,000
Keyword search is not offered: Bluesky's public API does not allow unauthenticated post search.
Output fields
Post rows: uri, url, authorHandle, authorDisplayName, authorDid, text, createdAt, indexedAt, langs, replyCount, repostCount, likeCount, quoteCount, isReply, replyToUri, isRepost, embedType, externalLink, imageCount, imageAlts, note
Profile rows: did, handle, displayName, description, followersCount, followsCount, postsCount, createdAt, profileUrl, note
Emails and phone numbers are removed from profile bios.
Free status rows (not charged): not-found, skipped-account, no-results, invalid-input, api-error, free-plan-limit, charge-limit-reached.
Example: {"handles":["bsky.app"],"mode":"both","maxPostsPerProfile":10,"maxResults":20}
Data source and compliance
- Source: Bluesky's public AppView API (public.api.bsky.app). No login, no key, one request at a time, and it backs off when the API says to slow down (HTTP 429).
- Public posts and profiles only. No direct messages, no private data and no follower or following lists.
- Accounts that ask not to be shown to logged-out viewers are skipped (free
skipped-accountrow). - No Bluesky logos are used.
- Free-plan accounts get up to 100 results per run.
Pricing. Pay per result: $0.30 per 1,000 posts ($0.0003 each) and $0.80 per 1,000 profiles ($0.0008 each), the same price on every plan, no start fee. Free status rows are never charged.