Reddit Feeds V2 — 11 sitewide, subreddit & account feeds
Pricing
from $1.99 / 1,000 results
Reddit Feeds V2 — 11 sitewide, subreddit & account feeds
Fetch any of Reddit's 11 feeds at scale: Popular, News, r/All, Watch (videos), Games, Explore, Topic, Recommended Media, any subreddit's posts feed, plus your account's Latest and Saved Posts feeds. 11 self-contained endpoints — 9 anonymous, 2 require a Reddit account.
Pricing
from $1.99 / 1,000 results
Rating
5.0
(4)
Developer
Red Crawler
Maintained by CommunityActor stats
2
Bookmarked
6
Total users
1
Monthly active users
16 days ago
Last modified
Categories
Share
Reddit Feeds V2
Pull posts from any of Reddit's eleven post feeds at scale. Nine of them — sitewide tabs (Popular, News, r/all), discovery feeds (Explore, Games, Watch, Topic, Recommended Media), and any individual subreddit's feed — work anonymously with no account required. Two of them — your account's Latest Feed and Saved Posts Feed — read your personal Reddit account and need a Token V2 (either pasted directly or stored in the Reddit Vault actor).
Eleven self-contained endpoints. Each call returns a paginated batch of post records, one row per post. Pick the endpoint, fill the matching section, hit Start.
What you can fetch
The first nine feeds accept the same three controls — Sort, Time filter, and Limit — so once you learn one, you know them all. The Subreddit, Topic, and Recommended Media feeds add one extra input each (the subreddit name, topic ID, or seed IDs respectively). The two account feeds at the end add the credentials section at the bottom of the form.
Public endpoints (no Reddit account needed)
1. Subreddit Feed — posts from one subreddit
The classic "scrape r/python" use case. Returns posts from a single subreddit.
Inputs:
- Subreddit — bare name (
python), prefixed (r/python), or full URL (https://reddit.com/r/python) - Sort —
best,hot,new,top,controversial,rising - Time filter —
hour,day,week,month,year,all(only applies when sort istoporcontroversial— ignored otherwise) - Limit — 1 to 500
Use it when: you want the standard subreddit-feed scrape — recent posts, top-of-week roundups, monitoring a niche community.
Example
Input
{"endpoint": "subreddit","subreddit_name": "wordpress","subreddit_sort": "hot","subreddit_time": "all","subreddit_limit": 3}
Output (one dataset record per post — sample of the first row, flattened)
{"endpoint": "subreddit","__typename": "CellGroup","id": "1s4a4j6","postTitle": "WordPress 6.6 — what broke for you?","score": 412,"commentCount": 87,"createdAt": "2026-05-12T14:08:33.000000+0000","url": "https://www.reddit.com/r/Wordpress/comments/1s4a4j6/wordpress_66_what_broke_for_you/","domain": "self.Wordpress","voteState": "NONE","isNsfw": false,"isSpoiler": false,"isLocked": false,"isStickied": false,"isArchived": false,"content": { "preview": "Post your weirdest 6.6 upgrade story..." },"thumbnail": "self","authorInfo": { "name": "u/wpdev42", "prefixedName": "u/wpdev42" },"flair": { "text": "Discussion", "backgroundColor": "#0079D3" },"rate_limit_used": 1,"rate_limit_remaining": 1899,"rate_limit_reset_at": "2026-05-14T16:30:00Z"}
2. Popular Feed — Reddit's sitewide Popular tab
Returns whatever Reddit currently shows on its main Popular page — the homepage of logged-out Reddit.
Inputs: Sort, Time filter, Limit (1–500) — same controls as Subreddit Feed.
Use it when: trend-watching, daily front-page snapshots, training models on what's currently going viral.
Example
Input
{"endpoint": "popular","popular_sort": "hot","popular_time": "all","popular_limit": 3}
Output (one dataset record per post — sample of the first row)
{"endpoint": "popular","__typename": "CellGroup","id": "1tclobu","postTitle": "What is the worst way anyone you know has died?","score": 3253,"commentCount": 0,"createdAt": "2026-05-14T08:42:31.000000+0000","url": "https://www.reddit.com/r/AskReddit/comments/1tclobu/what_is_the_worst_way_anyone_you_know_has_died/","domain": "self.AskReddit","voteState": "NONE","isNsfw": false,"isSpoiler": false,"isLocked": false,"isStickied": false,"content": { "preview": "" },"thumbnail": "self","authorInfo": { "name": "u/[deleted]" },"rate_limit_used": 2,"rate_limit_remaining": 1898,"rate_limit_reset_at": "2026-05-14T16:30:00Z"}
3. News Feed — Reddit's News tab
Reddit's curated News feed — pulls posts from news-oriented subreddits the way Reddit's News tab does.
Inputs: Sort (with one extra option, awarded), Time filter, Limit (1–500).
Use it when: news monitoring, link aggregation, headline scraping.
Example
Input
{"endpoint": "news","news_sort": "best","news_time": "all","news_limit": 3}
Output (one dataset record per post — sample of the first row)
{"endpoint": "news","__typename": "CellGroup","id": "1tc8x0a","postTitle": "Federal Reserve holds rates steady at 5.25%","score": 1842,"commentCount": 312,"createdAt": "2026-05-13T19:00:00.000000+0000","url": "https://www.reuters.com/markets/us/fed-rates-may-2026/","domain": "reuters.com","voteState": "NONE","isNsfw": false,"isLocked": false,"isStickied": false,"thumbnail": "https://b.thumbs.redditmedia.com/news-thumb-…jpg","authorInfo": { "name": "u/newsbot42", "prefixedName": "u/newsbot42" },"flair": { "text": "Business", "backgroundColor": "#00A6A5" },"rate_limit_used": 3,"rate_limit_remaining": 1897,"rate_limit_reset_at": "2026-05-14T16:30:00Z"}
4. All Feed — r/all
Posts from r/all — the firehose of every public subreddit on Reddit (minus the few opted out).
Inputs: Sort, Time filter, Limit (1–500).
Use it when: maximum breadth — high-volume scraping across all of Reddit, training data, dataset bootstrapping.
Example
Input
{"endpoint": "all","all_sort": "hot","all_time": "all","all_limit": 3}
Output (one dataset record per post — sample of the first row)
{"endpoint": "all","__typename": "CellGroup","id": "1tcm9zv","postTitle": "TIL the longest English word without a vowel is 'rhythms'","score": 18432,"commentCount": 412,"createdAt": "2026-05-14T03:15:22.000000+0000","url": "https://www.reddit.com/r/todayilearned/comments/1tcm9zv/til_the_longest_english_word_without_a_vowel/","domain": "self.todayilearned","voteState": "NONE","isNsfw": false,"isLocked": false,"content": { "preview": "" },"thumbnail": "self","authorInfo": { "name": "u/wordnerd99" },"rate_limit_used": 4,"rate_limit_remaining": 1896,"rate_limit_reset_at": "2026-05-14T16:30:00Z"}
5. Explore Feed — Reddit's discovery / Communities feed
Pulls Reddit's "Explore" tab content — discovery-style posts plus surfaced communities.
Inputs: Sort, Time filter, Limit.
Use it when: finding new subreddits Reddit is recommending, mapping community discovery surfaces, market-sizing the long tail.
Example
Input
{"endpoint": "explore","explore_sort": "hot","explore_time": "all","explore_limit": 3}
Output (one dataset record per item — sample of the first row)
{"endpoint": "explore","__typename": "RichtextRecommendationContextCell","id": "1tcjpqr","postTitle": "My first attempt at a sourdough starter","score": 287,"commentCount": 41,"createdAt": "2026-05-13T22:48:01.000000+0000","url": "https://www.reddit.com/r/Breadit/comments/1tcjpqr/my_first_attempt_at_a_sourdough_starter/","domain": "i.redd.it","thumbnail": "https://b.thumbs.redditmedia.com/explore-thumb-…jpg","authorInfo": { "name": "u/doughbeginner" },"groupRecommendationContext": {"typeIdentifier": "topic_to_post","topicId": "tx1_2unn29s"},"rate_limit_used": 5,"rate_limit_remaining": 1895,"rate_limit_reset_at": "2026-05-14T16:30:00Z"}
6. Games Feed — Reddit's Games-focused feed
A vertical feed weighted toward gaming communities and content.
Inputs: Sort, Time filter, Limit.
Use it when: gaming-niche scraping, esports / launch-day monitoring, game-marketing intelligence.
Example
Input
{"endpoint": "games","games_sort": "hot","games_time": "all","games_limit": 3}
Output (one dataset record per post — sample of the first row)
{"endpoint": "games","__typename": "CellGroup","id": "1tcgs0e","postTitle": "GTA 6 leaked footage — what we know so far","score": 9421,"commentCount": 1208,"createdAt": "2026-05-13T16:30:00.000000+0000","url": "https://www.reddit.com/r/GTA6/comments/1tcgs0e/gta_6_leaked_footage_what_we_know_so_far/","domain": "self.GTA6","voteState": "NONE","isNsfw": false,"thumbnail": "https://b.thumbs.redditmedia.com/games-thumb-…jpg","authorInfo": { "name": "u/rockstargamer", "prefixedName": "u/rockstargamer" },"flair": { "text": "Leak", "backgroundColor": "#FF4500" },"rate_limit_used": 6,"rate_limit_remaining": 1894,"rate_limit_reset_at": "2026-05-14T16:30:00Z"}
7. Watch Feed — video-focused content
Reddit's video-first feed — favors posts with embedded videos / GIFs / short clips over self-text.
Inputs: Sort, Time filter, Limit.
Use it when: video / clip mining, social-media short-form content sourcing, media-asset collection.
Example
Input
{"endpoint": "watch","watch_sort": "hot","watch_time": "all","watch_limit": 3}
Output (one dataset record per post — sample of the first row)
{"endpoint": "watch","__typename": "CellGroup","id": "1tcfvw1","postTitle": "Dog steals camera, films its own escape","score": 21534,"commentCount": 612,"createdAt": "2026-05-13T14:02:11.000000+0000","url": "https://v.redd.it/x7y8z9a0b1c2","domain": "v.redd.it","voteState": "NONE","isNsfw": false,"media": {"__typename": "MediaVideo","dashUrl": "https://v.redd.it/x7y8z9a0b1c2/DASHPlaylist.mpd","duration": 42},"thumbnail": "https://external-preview.redd.it/watch-thumb-…jpg","authorInfo": { "name": "u/funnydoglover" },"rate_limit_used": 7,"rate_limit_remaining": 1893,"rate_limit_reset_at": "2026-05-14T16:30:00Z"}
8. Topic Feed — interest-topic feed
Returns posts for a specific Reddit topic ID. Topic IDs look like tx1_2unn29s and you can pull them from the Explore feed (each Explore item carries its topic ID).
Inputs:
- Topic ID — the
tx1_...ID from Explore (defaulttx1_2unn29sis a working example) - Scheme name (optional) — Reddit's internal topic scheme name; usually leave blank
- Sort, Time filter, Limit
Use it when: scraping a specific interest topic at scale (e.g., a particular hobby, fandom, or category Reddit has clustered).
Example
Input
{"endpoint": "topic","topic_id": "tx1_2unn29s","topic_sort": "hot","topic_time": "all","topic_limit": 3}
Output (one dataset record per post — sample of the first row)
{"endpoint": "topic","__typename": "CellGroup","id": "1tcb88p","postTitle": "Best sourdough recipe for beginners","score": 1834,"commentCount": 211,"createdAt": "2026-05-13T10:18:42.000000+0000","url": "https://www.reddit.com/r/Sourdough/comments/1tcb88p/best_sourdough_recipe_for_beginners/","domain": "self.Sourdough","voteState": "NONE","thumbnail": "self","authorInfo": { "name": "u/bakerannie" },"groupRecommendationContext": { "topicId": "tx1_2unn29s" },"rate_limit_used": 8,"rate_limit_remaining": 1892,"rate_limit_reset_at": "2026-05-14T16:30:00Z"}
9. Recommended Media — image / video recommendations seeded by subreddits
Reddit returns image/video posts recommended off a list of seed subreddit IDs. Useful for visual content discovery anchored to communities you care about.
Inputs:
- Seed subreddit IDs — comma-separated
t5_...IDs (defaultt5_2qh33,t5_2cneqis r/funny + r/aww) - Sort, Time filter, Limit
Tip: Use the Reddit Subreddits V2 actor's ID endpoint to convert a subreddit name (e.g. funny) into its t5_ ID.
Use it when: building image / meme datasets seeded by topic, content recommendation experiments, visual-trend scraping.
Example
Input
{"endpoint": "recommended_media","recommended_media_seeds": "t5_2qh33,t5_2cneq","recommended_media_sort": "hot","recommended_media_time": "all","recommended_media_limit": 3}
Output (one dataset record per post — sample of the first row)
{"endpoint": "recommended_media","__typename": "CellGroup","id": "1tc9rks","postTitle": "My puppy on her first day home","score": 8421,"commentCount": 142,"createdAt": "2026-05-13T07:40:11.000000+0000","url": "https://i.redd.it/abc123def456.jpg","domain": "i.redd.it","voteState": "NONE","isNsfw": false,"thumbnail": "https://b.thumbs.redditmedia.com/aww-thumb-…jpg","media": { "__typename": "MediaImage", "width": 1920, "height": 1080 },"authorInfo": { "name": "u/puppylover99" },"rate_limit_used": 9,"rate_limit_remaining": 1891,"rate_limit_reset_at": "2026-05-14T16:30:00Z"}
Bearer-required endpoints (need a Reddit account)
These two endpoints require authentication. Fill the Reddit credentials section at the bottom of the input form (see Credentials below).
10. Latest Feed — your account's Latest feed (bearer required)
The personalised "Latest" feed your Reddit account sees — chronologically newest posts from the subreddits and users you follow, plus recommendations Reddit attaches to the account.
Inputs: Sort (defaults to new), Time filter, Limit, plus credentials (saved account name from the vault, or pasted Token V2 + proxy).
Use it when: monitoring brand-new posts in your followed communities, watching a niche-feed of accounts you've subscribed to, building a fresh-content notifier.
Example
Input
{"endpoint": "latest","latest_sort": "new","latest_time": "all","latest_limit": 3,"credentialSource": "vault","accountName": "main"}
Output (one dataset record per post — sample of the first row)
{"endpoint": "latest","__typename": "CellGroup","id": "1tcn2qq","postTitle": "Just launched my Apify actor — feedback welcome","score": 18,"commentCount": 4,"createdAt": "2026-05-14T15:55:02.000000+0000","url": "https://www.reddit.com/r/apify/comments/1tcn2qq/just_launched_my_apify_actor_feedback_welcome/","domain": "self.apify","voteState": "NONE","isNsfw": false,"thumbnail": "self","authorInfo": { "name": "u/devbuilder42" },"rate_limit_used": 10,"rate_limit_remaining": 1890,"rate_limit_reset_at": "2026-05-14T16:30:00Z"}
11. Saved Posts Feed — your account's saved posts (bearer required)
Pulls every post you've saved on your Reddit account. Useful for exporting bookmarks, building a personal archive, or auditing a moderator-account's saved review queue.
Inputs: Sort, Time filter, Limit, plus credentials (saved account name from the vault, or pasted Token V2 + proxy).
Use it when: exporting your saved-posts archive to JSON / CSV, syncing a personal bookmark database, auditing moderator review history.
Example
Input
{"endpoint": "saved_posts","saved_posts_sort": "hot","saved_posts_time": "all","saved_posts_limit": 3,"credentialSource": "vault","accountName": "main"}
Output (one dataset record per saved post — sample of the first row)
{"endpoint": "saved_posts","__typename": "CellGroup","id": "1s4a4j6","postTitle": "WordPress 6.6 — what broke for you?","score": 412,"commentCount": 87,"createdAt": "2026-05-12T14:08:33.000000+0000","url": "https://www.reddit.com/r/Wordpress/comments/1s4a4j6/wordpress_66_what_broke_for_you/","domain": "self.Wordpress","voteState": "NONE","isSaved": true,"isNsfw": false,"thumbnail": "self","authorInfo": { "name": "u/wpdev42" },"rate_limit_used": 11,"rate_limit_remaining": 1889,"rate_limit_reset_at": "2026-05-14T16:30:00Z"}
Credentials
The two bearer-required endpoints (Latest Feed, Saved Posts Feed) need a Reddit Token V2 cookie + the proxy that minted it. The first 9 endpoints ignore credentials entirely — leave the section blank for those.
Credential lifetime
| Credential | Lifetime | When to refresh |
|---|---|---|
Token V2 (token_v2 cookie) | ~24 hours | Daily — or save a Reddit Session in the Reddit Vault and let the vault auto-refresh the Token V2 from it (recommended). |
Reddit Session (reddit_session cookie) | ~180 days | Only needed if you save an account in the Reddit Vault — the vault uses it to auto-mint fresh Token V2 cookies. Refresh roughly twice a year. |
How to extract these from your browser: open Reddit in Chrome / Brave / Edge / Firefox, then DevTools → Application → Cookies →
https://www.reddit.com. Filter bytoken_v2orreddit_sessionand copy the Value column.
Option A — Use a saved account (recommended)
- Run the Reddit Vault actor once to store a Reddit account under a name you choose (e.g.
main,alt-account,burner1). The vault encrypts the Token V2 + matching proxy and stores them keyed by name. If you save a long-livedreddit_sessioncookie alongside it, the vault auto-refreshes the Token V2 for you. - In this actor, set Credential source = Use saved account (vault) and put the same name in Saved account name.
- Done — Token V2 + proxy load automatically on every run.
{"credentialSource": "vault","accountName": "main"}
Option B — Paste Token V2 + proxy directly
For one-off runs without setting up the vault:
- Set Credential source = Paste Token V2 + proxy.
- Paste your Reddit
token_v2cookie value (eyJ...) into Token V2. - Paste the matching proxy in
ip:port:user:passformat into Proxy.
{"credentialSource": "manual","bearer": "eyJhbGciOiJSUzI1NiIs...","proxy": "ip:port:user:pass"}
Critical: Reddit IP-binds Token V2 cookies. The proxy MUST be the exact same IP that originally minted the Token V2 — otherwise Reddit returns 401 on every bearer call. Both fields are stored encrypted by Apify (isSecret: true).
How to run
- Pick a feed in the "What to fetch" dropdown at the top.
- Open the matching section below it and fill in the fields (subreddit name, topic ID, or seed IDs if needed — sort / time / limit always show up).
- For the Latest Feed or Saved Posts Feed: also fill the credentials section at the bottom of the form.
- Click Start.
Each endpoint section is independent — fields outside your chosen section are ignored, so you can leave them as-is between runs. The default endpoint is popular so the actor runs out of the box without any credentials.
Time filter gotcha: the Time filter is only applied when Sort is top or controversial. Reddit ignores it for hot, new, best, rising. The actor passes whatever you set — it's just a no-op for the other sorts.
Output
Results are pushed to the actor's default dataset. View them as a table or download as JSON / CSV / Excel / XML. Every feed pushes one record per post (up to your limit). The most useful columns are placed first so the dataset Table view is readable without horizontal scrolling.
| Front-loaded column | Meaning |
|---|---|
endpoint | Which feed produced the row (subreddit, popular, latest, etc.) |
__typename | Reddit's cell-stack typename (e.g. CellGroup, RichtextRecommendationContextCell) |
id | Bare post ID (paste into Reddit Bulk Scrape, Reddit Posts, etc.) |
postTitle | The post's title |
score / commentCount | Engagement counters |
createdAt | ISO timestamp |
url / domain | Permalink + link domain |
voteState | NONE, UP, or DOWN (vault feeds only) |
isNsfw / isSpoiler / isLocked / isStickied / isArchived / isSaved / isHidden | Status booleans |
content | Selftext / body preview |
thumbnail | Thumbnail URL or self for text posts |
authorInfo | {name, prefixedName} |
flair | {text, backgroundColor, textColor} when set |
media | Media block for video / image / gallery posts |
rate_limit_used / rate_limit_remaining / rate_limit_reset_at | Your per-account v2 budget surface |
Common edge cases
| Edge case | Cause | How it surfaces |
|---|---|---|
| Empty page | Sort/time combo with no posts (top of hour on a quiet sub) | Run SUCCEEDED, 0 records pushed. Normal — not an error. |
| Quarantined / NSFW subreddit | Reddit hides quarantined subs from anonymous reads | Subreddit Feed: 0 rows or UnavailableSubreddit row. NSFW subs work fine. |
| Topic ID retired | Reddit rotated / renamed the topic ID | 0 rows. Pull a fresh topic ID from the Explore feed. |
| Recommended Media seeds capped | Reddit caps the number of seed IDs it'll consider | Pass your most relevant 2–10 subreddit IDs rather than dozens. |
| Time filter on wrong sort | time=week with sort=hot is silently ignored by Reddit | Use top or controversial if you want time-window filtering. |
| Latest / Saved Posts return nothing | Token V2 expired or proxy IP doesn't match | Refresh the cookie and proxy in the vault, then re-run. |
| Empty Saved Posts | Account has never saved a post | 0 rows. Save one post via Reddit's UI to confirm the pipeline. |
| Empty input | Forgot the subreddit / topic ID / seeds | Run FAILED immediately, no row pushed, no charge. |
Why this actor is fast
- Speed — 1–4 seconds per call, end-to-end. Pure HTTP. No browser to boot, no Playwright / Selenium / Puppeteer overhead. Competing browser-based scrapers typically take 15–60 seconds per call.
- Reliability — zero browser flakiness. No headless-Chromium crashes. No JS-render timeouts. No captcha pages.
- Footprint — under 100 MB RAM per run. Most browser-based scrapers need 1–4 GB.
- No proxy to configure (for the 9 anonymous feeds). The backend rotates infrastructure behind the scenes.
Status & error reference
Run status (Apify-side, shown on the run page)
| Status | Apify message | Meaning | What to do |
|---|---|---|---|
| "Actor succeeded with N results in the dataset" | Run finished. Some or zero records pushed. | Open the dataset to view results. | |
| "The Actor process failed…" | Validation error or upstream Reddit fault. | Check the run log. You are NOT charged for failed runs. | |
| "The Actor timed out. You can resurrect it with a longer timeout to continue where you left off." | Run exceeded its timeout. | Re-run with a smaller limit or fewer inputs. | |
| "The Actor process was aborted. You can resurrect it to continue where you left off." | You stopped the run manually. | No charge for unpushed results. |
Common in-run conditions (visible in run log)
| Condition | Cause | Result |
|---|---|---|
| Empty result set | Feed has no posts matching the inputs. | Run SUCCEEDED, 0 records, no charge. |
| Private / quarantined subreddit | Reddit hides these from anonymous reads. | Run SUCCEEDED, those rows skipped. |
| Banned subreddit | Subreddit has been banned by Reddit. | Run SUCCEEDED, 0 records for that input. |
bearer_expired (Latest / Saved Posts) | Token V2 older than ~24 h. | Row with success: false. Re-paste or use vault. |
| Validation error: missing input | Required parameter not provided. | Run FAILED immediately, no charge. |
Pricing
Pay-per-result. You're only charged for posts actually pushed to the dataset — failed runs and validation errors cost nothing.
| Event | Trigger | Price (per 1,000) |
|---|---|---|
result | Each post row pushed to the dataset | $1.99 |
A 500-post Subreddit Feed run = 500 rows. A 100-post Popular Feed run = 100 rows. A Latest Feed run on a freshly subscribed account may return 50–250 rows.
Need a different shape of data?
- Reddit Search V2 — search posts / comments / subreddits / users by keyword
- Reddit Scraper V2 — single post + its full comment tree
- Reddit Users V2 — user profile, posts, comments, trophies + 10 "my account" endpoints
- Reddit Subreddits V2 — subreddit info, rules, flairs, wiki, style
- Reddit Bulk Scrape V2 — bulk lookups by ID (up to 1500 per run)
- Reddit Vault — save Reddit accounts once, call them by name from any auth-required actor
Support and feedback
Found a bug, want a feature, or hit a Reddit error code we don't translate clearly? Open an issue via the actor's Apify Console feedback link, or reach out at the RedCrawler support channel.
Reddit Feeds V2 is part of the RedCrawler family of Reddit actors. RedCrawler is independent — not affiliated with, endorsed by, or sponsored by Reddit, Inc. Use it within Reddit's API terms.