Mastodon Posts Scraper: Hashtags, Accounts, Trending, Threads avatar

Mastodon Posts Scraper: Hashtags, Accounts, Trending, Threads

Pricing

from $0.48 / 1,000 post scrapeds

Go to Apify Store
Mastodon Posts Scraper: Hashtags, Accounts, Trending, Threads

Mastodon Posts Scraper: Hashtags, Accounts, Trending, Threads

Scrape public Mastodon posts by hashtag, account, trending, local timeline or thread: text, author, engagement counts, tags, media and link previews. No login or proxy. $0.80 per 1,000 posts.

Pricing

from $0.48 / 1,000 post scrapeds

Rating

0.0

(0)

Developer

TidyHarvest

TidyHarvest

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

8 hours ago

Last modified

Categories

Share

Pull Mastodon posts from any public instance in clean JSON: full text and HTML, author, follower count, replies, boosts and favourites, hashtags, mentions, media with alt text, link previews and polls. Search hashtags, read accounts (@user@instance), grab trending posts, an instance's local timeline, or a whole conversation thread.

$0.80 per 1,000 posts. No login, API key, browser or proxy: it reads the documented public Mastodon API that every instance offers, so runs are fast (50 posts in a couple of seconds) and cheap.

What you can do with it

  • Social listening and brand monitoring: track a hashtag or keyword across the fediverse with a daily scheduled run and Only posts newer than: 24 hours.
  • Research and datasets: collect posts by topic, language or community (fosstodon.org, hachyderm.io, scholar.social...) for NLP, sentiment or discourse studies.
  • Content and news curation: pull trending posts or link previews (card) to feed a newsletter, Slack channel or dashboard.
  • Account archiving and analytics: export an account's public posts with engagement counts.
  • Conversation analysis: fetch the full reply tree of a viral post.

Input

FieldWhat it does
modehashtag (default), accounts, trending, public-local or thread.
hashtagstechnology, #ai, linux@fosstodon.org or https://fosstodon.org/tags/linux.
accounts@user@instance, user@instance or a profile URL like https://hachyderm.io/@user.
postUrlsFor thread mode: post links. Returns parents, the post and its public replies.
instanceServer for hashtags, trending and local timeline (default mastodon.social).
onlyNewerThan2026-10-01, 24 hours, 7 days... Older posts are skipped.
includeReplies, includeBoostsOff by default.
onlyMediaKeep only posts with images, video or audio.
includeProfileAccounts mode: one free type: profile row per account (bio, avatar, header, profile fields, counts). Default on.
languagesISO codes, e.g. en, de.
keywordsKeep posts whose text, content warning or hashtags contain any of these.
maxItemsPerSource, maxItemsCaps to control cost (maxItems defaults to 50; up to 10,000).

How to use

  1. Pick a mode and enter hashtags, accounts or post URLs (or just press Start for the latest #technology posts).
  2. Optionally add a date window, languages or keywords, and set Max posts in total.
  3. Run, then download as JSON, CSV or Excel, or connect it to Sheets, Slack or a webhook with Apify integrations.

Example:

{ "mode": "hashtag", "hashtags": ["opensource", "linux@fosstodon.org"], "languages": ["en"], "onlyNewerThan": "3 days", "maxItems": 500 }

Output

One item per post:

{
"id": "117426638870219047",
"url": "https://social.example/@techwire/117426638762940508",
"uri": "https://social.example/users/techwire/statuses/117426638762940508",
"createdAt": "2026-10-12T06:58:20.000Z", "editedAt": null,
"text": "Google Docs and Drive now support markdown files natively ...",
"content": "<p>Google Docs and Drive now support markdown files natively</p>...",
"language": "en", "sensitive": false, "spoilerText": null,
"isReply": false, "inReplyToId": null, "isBoost": false, "boostedBy": null,
"account": { "acct": "techwire@social.example", "displayName": "TechWire", "url": "https://social.example/@techwire",
"followers": 1520, "following": 3, "statusesCount": 48210, "bot": true, "createdAt": "2025-04-01T00:00:00.000Z" },
"repliesCount": 0, "reblogsCount": 2, "favouritesCount": 5, "quotesCount": 0,
"tags": ["tech", "technology", "ai"], "mentions": [],
"media": [{ "type": "image", "url": "https://...", "previewUrl": "https://...", "description": "alt text" }],
"card": { "url": "https://9to5google.com/...", "title": "...", "description": "...", "image": "https://...", "providerName": "9to5Google" },
"poll": null,
"instance": "mastodon.social", "source": "#technology@mastodon.social", "scrapedAt": "2026-10-12T07:00:00+00:00"
}

id is the post's id on the instance it was read from; url/uri point to the original post. Counts are as seen by that instance, so for posts from other servers they can lag behind the original.

Pricing

Pay per post returned: $0.80 per 1,000 posts (post-scraped). Language, keyword, date and reply/boost filters run before billing, and duplicates across sources are removed, so you only pay for posts you keep. A run that finds nothing fails instead of silently returning an empty dataset.

Privacy-respecting by design

  • Only public posts are returned (no unlisted, followers-only or direct posts).
  • Posts from accounts that opted out of search-engine indexing (noindex) are skipped, and such accounts are refused in Accounts mode. The run summary (SUMMARY in the key-value store) reports how many were skipped.
  • Requests are spaced out and each instance's rate-limit headers (X-RateLimit-*) are honoured.

Limits and notes

  • Post rows have type: "post"; account profile rows (type: "profile") are free.
  • Each instance only knows the posts that reached it. A hashtag on mastodon.social covers a lot of the fediverse but not all of it; add tag@otherinstance to widen coverage.
  • Full-text search of posts is not offered: Mastodon requires a logged-in user for that. Use hashtags plus keywords instead.
  • Some instances (including mastodon.social) require login for their local public timeline or trends. Those sources are reported as failed, never bypassed.
  • Unauthenticated API access is limited to about 300 requests per 5 minutes per instance (40 posts per request). Very large pulls slow down or stop politely when that limit is near.
  • Thread mode returns what the post's instance exposes publicly (large threads may be truncated by the server).
  • Post content belongs to its authors. Use the data in line with their rights, each instance's rules and the privacy laws that apply to you.

Not affiliated with, endorsed by or sponsored by Mastodon gGmbH or any Mastodon instance.