Social media

Bluesky Comments Scraper: export every reply and quote post

Paste one or more Bluesky post URLs and get the whole comment tree — each reply with its depth and parent, text, author, date, likes, images and links. Switch to quotes mode to collect the posts that quote it, then export to JSON, CSV or Excel.

★ 5.0 rating · 4 reviews7 users88.2% successful runs (30 days)

What data you get

textFull reply text
authorHandle and display name of the commenter
createdAtDate the reply was posted
likeCountLikes on each reply
depth / parentPosition in the thread and the reply it answers
images / linksAttached images and links
quotesPosts that quote the original post
sentimentOptional positive, negative or neutral tag

How it works

  1. Open the scraper on Apify and sign up (free).
  2. Enter routes, dates and options in the form.
  3. Click Start and download results as JSON, CSV or Excel, or call the API.

Pricing

$1.00 per 1,000 rows

Pay per event: you are charged for each post row (reply or quote) delivered. Filters and the optional sentiment add-on don't add extra events.

Apify gives $5 free credits every month — enough to test this scraper at no cost.

Example tasks

Ready-made inputs. Copy one into the scraper form or send it through the API.

Scrape all replies to a Bluesky post sorted by likes

Up to 500 comments with the most-liked replies first.

{
  "mode": "thread",
  "postUrls": [
    "https://bsky.app/profile/bsky.app/post/3l6oveex3ii2l"
  ],
  "replySort": "likes",
  "maxResultsPerInput": 500
}
Run this task →

Get quote posts of a Bluesky post

Every post that quotes the URL, up to 200.

{
  "mode": "quotes",
  "postUrls": [
    "https://bsky.app/profile/bsky.app/post/3l6oveex3ii2l"
  ],
  "maxResultsPerInput": 200
}
Run this task →

Bluesky comments with sentiment analysis

Replies with 3+ likes, each tagged positive, negative or neutral.

{
  "mode": "thread",
  "postUrls": [
    "https://bsky.app/profile/bsky.app/post/3l6oveex3ii2l"
  ],
  "addSentiment": true,
  "minLikes": 3
}
Run this task →

Latest top-level English replies on Bluesky

Only direct replies in English, newest first.

{
  "mode": "thread",
  "postUrls": [
    "https://bsky.app/profile/bsky.app/post/3l6oveex3ii2l"
  ],
  "maxReplyDepth": 1,
  "replySort": "newest",
  "languages": [
    "en"
  ]
}
Run this task →

Use cases

FAQ

Do I need a Bluesky account or cookies?

No. The scraper works without login, cookies or an API key. You only need a free Apify account.

Does it get replies to replies?

Yes. It collects the whole comment tree, and big threads are opened branch by branch. You can limit the depth with the maximum reply depth setting.

Can I get quote posts too?

Yes. Switch the mode to quotes to collect the posts that quote each URL instead of the replies.

Is it legal to scrape Bluesky?

The scraper collects only publicly visible posts and profile data without logging in. Make sure your use complies with local law (including GDPR where it applies) and Bluesky's terms, and avoid collecting or misusing personal data.

How do I get the data into my app or spreadsheet?

Export JSON, CSV or Excel, or call the Actor through the Apify API with the Python or JavaScript client. Ready-made integrations connect it to Make, n8n, Zapier and Google Sheets.

More scrapers

Export your first Bluesky thread now

Run on Apify — free trial