Reddit Subreddit Analytics & Best Time to Post
Pricing
from $1.00 / 1,000 results
Reddit Subreddit Analytics & Best Time to Post
Analyse any public subreddit in one row: members, real posts per day, median and top-10% engagement, self-post vs link winners, top flairs, domains and authors — plus the best day and hour to post, in your timezone. Qualify a community and time your launch before you write a single word.
Pricing
from $1.00 / 1,000 results
Rating
0.0
(0)
Developer
Hamza
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
6 days ago
Last modified
Categories
Share
Point this actor at any public subreddit and get back one clean analytics record per community: how big it is, how old it is, how many posts a day it really gets, what a normal post scores, what kind of content wins, who the heavy hitters are — and, above all, when to post. The best-time report breaks the community's own history down by hour of day and day of week in your timezone, then names the strongest day-and-hour slots. It is built for marketers, community managers, founders and researchers who need to decide where to spend attention and when to hit publish, without scrolling a subreddit for an afternoon.
Every number is reported next to the sample it was computed from, so you always know whether you are looking at a solid trend or a coincidence.
What you can do with it
- Find your posting window. See which day and hour historically earn the highest scores in a community, in your own timezone, before you schedule your next post.
- Qualify a community before you invest in it. Members, posts per day, median score and median comments tell you in one row whether a subreddit is busy, dead, or busy-but-unrewarding.
- Compare a shortlist side by side. Run ten subreddits in one go and sort the table by median engagement, posting volume or audience size.
- Learn what format wins. The self-post versus link split, the median score of each, and the most-shared domains show you what the community actually upvotes.
- Spot the people who matter. Two author leaderboards — most prolific and most upvoted — surface the accounts worth following, partnering with, or watching as competitors.
- Track a community over time. Schedule the actor weekly and keep the reports; the sample-provenance fields make run-to-run comparisons meaningful.
What you get
One record per subreddit. Abridged example:
{"recordType": "subreddit-report","subreddit": "Python","title": "Python","url": "https://www.reddit.com/r/Python/","subscribers": 1500262,"createdAt": "2008-01-25T03:14:39.000Z","ageDays": 6759.4,"subredditType": "public","sampleSize": 250,"sampleSort": "new","sampleSpanDays": 6.42,"sampleOldestPostAt": "2026-07-22T04:11:38.000Z","sampleNewestPostAt": "2026-07-28T14:29:02.000Z","timezone": "UTC-05:00","postsPerDay": 38.8,"postsPerHour": 1.617,"cadenceSource": "new-sample","medianScore": 12,"meanScore": 47.3,"p90Score": 121,"maxScore": 2884,"medianComments": 6,"p90Comments": 31,"meanUpvoteRatio": 0.88,"scoreDistribution": [{ "bucket": "0 or below", "posts": 21, "share": 0.084 },{ "bucket": "1-9", "posts": 96, "share": 0.384 },{ "bucket": "10-49", "posts": 78, "share": 0.312 }],"selfPosts": 173,"linkPosts": 77,"selfPostShare": 0.692,"medianScoreSelfPosts": 14,"medianScoreLinkPosts": 8,"betterPerformingFormat": "self","uniqueAuthors": 228,"flairUsageShare": 0.74,"topFlairs": [{ "flair": "Showcase", "posts": 46, "share": 0.184, "medianScore": 21, "medianComments": 9 }],"topDomains": [{ "domain": "github.com", "posts": 31, "share": 0.124, "medianScore": 27, "totalScore": 1884 }],"topAuthorsByScore": [{ "author": "example_user", "posts": 3, "totalScore": 3120, "topPostScore": 2884,"topPostUrl": "https://www.reddit.com/r/Python/comments/abc123/..." }],"bestDayToPost": "Tuesday","bestHourToPost": "09:00","bestSlotToPost": "Tuesday 09:00","bestSlotMeanScore": 96.4,"bestSlotPosts": 4,"bestSlotConfidence": "low","bestTimeToPost": {"timezone": "UTC-05:00","postsAnalysed": 250,"bestDays": [{ "dayName": "Tuesday", "posts": 41, "meanScore": 63.2, "confidence": "high" }],"bestHours": [{ "hourLabel": "09:00", "posts": 14, "meanScore": 88.1, "confidence": "high" }],"topSlots": [{ "slot": "Tuesday 09:00", "posts": 4, "meanScore": 96.4, "adjustedScore": 76.2 }],"byHour": [{ "hour": 0, "hourLabel": "00:00", "posts": 7, "meanScore": 19.4 }],"byDayOfWeek": [{ "day": 0, "dayName": "Sunday", "posts": 29, "meanScore": 41.8 }],"hourDayHeatmap": [{ "slot": "Sunday 00:00", "posts": 2, "meanScore": 11 }]},"topPosts": [{ "id": "abc123", "title": "…", "score": 2884, "numComments": 214, "author": "example_user" }],"notes": [],"scrapedAt": "2026-07-28T15:02:11.000Z"}
Turn on Also output the analysed posts and every post behind the report is written to the dataset too, so you can check the maths or reuse the raw posts.
Input reference
| Field | Type | Default | What it does |
|---|---|---|---|
subreddits | list of text | ["python"] | Communities to analyse. python, r/python or a full reddit.com link all work. One report per community. |
sampleSize | integer | 250 | How many posts to read before computing the report (10–1000). More posts means steadier averages and a fuller best-time matrix. |
sampleSort | select | new | new = an unbiased picture of everyday posting and the most reliable timing advice; top = study what wins; hot = what is getting traction right now. |
time | select | year | Only used with top: how far back the ranking looks (hour, day, week, month, year, all). |
timezoneOffset | integer | 0 | Hours from UTC for the timing report (−12 to 14). -5 New York, -8 Los Angeles, 1 Berlin, 8 Singapore. |
topAuthorsLimit | integer | 20 | How many authors appear in each of the two author leaderboards (0–100). 0 leaves them out. |
topFlairsLimit | integer | 15 | How many flairs appear (0–100) — the same limit also caps the list of most-shared link domains. 0 leaves both out. |
includeSamplePosts | boolean | false | Also writes every analysed post to the dataset alongside the report. |
maxConcurrency | integer | 5 | How many communities to work on at the same time (1–20). |
country | select | us | Which country to browse Reddit from — 17 to choose from. Reddit shows the same content everywhere, so the default is fine unless you specifically need another locale. |
Output fields
| Field | Type | Description |
|---|---|---|
recordType | text | subreddit-report, or post for the optional sample posts. |
subreddit, subredditId, title, url, description | text | Community identity. |
subscribers | number | Current member count. |
createdAt, ageDays, ageYears | date / number | When the community was created and how old it is. |
subredditType, over18, quarantined, language, submissionType | text / boolean | Community settings that affect what you may post there. |
allowsImages, allowsVideos, allowsPolls, wikiEnabled | boolean | What the community permits. |
sampleSize, sampleRequested, sampleSort, sampleTime | number / text | Exactly what the report was computed from. |
sampleSpanDays, sampleOldestPostAt, sampleNewestPostAt | number / date | The stretch of time the sample covers. |
timezone, timezoneOffset | text / number | The timezone every hour, day and slot in the report is expressed in. |
postsPerDay, postsPerHour | number | Posting cadence, measured from the gaps between consecutive posts (pinned posts excluded). |
cadenceSource, cadenceSampleSize, cadenceSpanDays | text / number | Which posts the cadence came from. |
meanScore, medianScore, p90Score, minScore, maxScore, totalScore | number | Upvote statistics for the sample. p90 is what the top 10% of posts clear. |
meanComments, medianComments, p90Comments, maxComments, totalComments | number | Comment statistics. |
meanUpvoteRatio, medianUpvoteRatio | number | How lopsided the voting is (1.0 = no downvotes). |
scoreDistribution, commentDistribution | array | Post counts and shares per engagement band. |
selfPosts, linkPosts, selfPostShare, linkPostShare | number | The text-versus-link split. |
medianScoreSelfPosts, medianScoreLinkPosts, betterPerformingFormat | number / text | Which format actually earns more here. |
videoPosts, galleryPosts, crossposts, originalContentPosts, over18Posts, spoilerPosts, stickiedPosts, removedPosts | number | Content mix. |
postsWithFlair, flairUsageShare, uniqueAuthors | number | How the community tags posts, and how many distinct people posted. |
topFlairs, topDomains | array | Each row carries posts, share, medianScore, medianComments and the group's best post. |
topAuthorsByPosts, topAuthorsByScore | array | The most prolific and the most upvoted accounts, with their totals. |
topPosts | array | The five highest-scoring posts in the sample. |
bestDayToPost, bestHourToPost, bestSlotToPost | text | The headline timing answer, in your timezone. |
bestSlotMeanScore, bestSlotPosts, bestSlotConfidence | number / text | The evidence behind that slot: its average, its post count and how much to trust it. |
bestTimeToPost | object | The full timing report: byHour (24 rows), byDayOfWeek (7 rows), bestDays, bestHours, topSlots and an hourDayHeatmap. |
notes | array | Plain-English caveats when the sample is thin or ranked rather than chronological. |
scrapedAt | date | When the report was produced. |
Pricing
Pay per event — you pay for results, not for run time.
| Event | What you pay for | Price |
|---|---|---|
| Result row | Every row written to your dataset: one per community report, plus one per post if you switch on Also output the analysed posts. | $0.0010 each ($1.00 per 1,000 rows) |
| Subreddit report | Charged once for each completed community report. | $0.05 each |
A ten-community shortlist costs $0.51 — ten reports at $0.05 plus ten result rows. Switch the analysed posts on as well, at 250 posts per community, and the same run comes to about $3.01.
A report is only charged when it actually lands in your dataset: a community that turns out to be empty, private or misspelled is skipped and never charged. If you set a spend limit, the run stops cleanly at the limit instead of overshooting it.
FAQ
Do I need a Reddit account? No. You do not need a Reddit account, a login, or any credentials — just enter what you want and run it.
How fast is it? Posts are pulled in large batches, so a 250-post report on a single community usually lands in a few seconds. Communities are analysed in parallel — five at a time by default, up to twenty — so a ten-community shortlist finishes in roughly the time one community takes. Transient failures are retried automatically.
Which timezone are the results in?
Whatever you set in Your timezone. The default is UTC. Every hour label, day name and slot in the report is expressed in that timezone, and the timezone field on each record records which one was used.
Why is the best slot marked "low" confidence?
Because a week has 168 day-and-hour slots and a 250-post sample cannot fill them all. The best day and best hour rest on far more posts and are the sturdier signals — increase sampleSize if you want the slot-level answer to firm up.
Can I run it on a schedule? Yes. It is a natural weekly or monthly job: keep the reports and you build the trend line that Reddit itself does not publish.
Can I analyse a private or a banned community? No. Neither is readable without moderator access, and the run will simply note that the community was skipped.