Reddit Posts Scraper avatar

Reddit Posts Scraper

Pricing

from $0.80 / 1,000 results

Go to Apify Store
Reddit Posts Scraper

Reddit Posts Scraper

Scrape posts from any subreddit on Reddit. Get titles, body text, images, videos, upvotes, comment counts, flair, author info, crossposts, and thumbnails. Sort by hot, new, top, rising, or controversial. Filter by date and NSFW. Deep scrape all sorts at once. No login or cookies needed.

Pricing

from $0.80 / 1,000 results

Rating

0.0

(0)

Developer

Scrape Smith

Scrape Smith

Maintained by Community

Actor stats

1

Bookmarked

18

Total users

1

Monthly active users

9 days ago

Last modified

Share

Reddit Posts Scraper — Subreddit Posts and Community Data

Export public subreddit posts with titles, text, scores, comment counts, author names and available media. Compare communities, follow new discussions or collect top posts for research.

Quick start

  1. Open an example below or enter your own public Reddit targets.
  2. Choose a per-target result limit and maxItems for the whole run.
  3. Run the Actor and export the dataset as JSON, CSV or Excel.
{
"subreddits": [
"Python"
],
"sort": "new",
"maxPostCount": 20,
"maxItems": 20
}

Example tasks

Copy a ready-to-use configuration and customize its targets or limits:

Inputs

InputTypePurpose
subredditsarraySubreddit names to scrape (without the r/ prefix, e.g. 'python').
sortstringSort order for posts. Ignored if 'Scrape all sorts' is enabled.
timestringTime period for 'top' and 'controversial' sorts.
maxPostCountintegerMaximum number of posts to collect per subreddit (per sort, if 'Scrape all sorts' is enabled).
postDateLimitstringOnly collect posts newer than this date (format YYYY-MM-DD). Leave empty to disable. Forces sort to 'new'.
scrapeAllSortsbooleanScrape every sort (hot, new, top for all time periods, controversial, rising) for each subreddit instead of just one sort.
includeNSFWbooleanInclude posts marked as NSFW/over 18.
includeCommunityInfobooleanInclude one extra item per subreddit with community metadata (subscriber count, description, icons, etc.). Costs one additional request per subreddit.
maxItemsintegerMaximum total dataset rows across all inputs, including any profile, community or original-post rows.

Output fields

FieldDescription
id / parsedIdReddit's internal post ID
urlDirect link to the post
usernamePost author
titlePost title
communityNameSubreddit name (e.g. r/python)
subredditSubscribersSubscriber count of the subreddit
bodyPost text content (self-posts)
htmlRendered HTML of the post body
linkExternal link (for link posts)
domainSource domain of the linked content
numberOfCommentsTotal comment count
numberOfCrosspostsNumber of times the post was crossposted
flairPost flair tag
authorFlairAuthor's flair in the subreddit
upVotes / upVoteRatioPost score and like ratio
isSelf / isVideo / isStickied / isLocked / isSpoiler / isOriginalContentPost type flags
over18NSFW flag
videoUrl, videoDuration, videoWidth, videoHeightVideo metadata (if applicable)
thumbnailUrl, thumbnailWidth, thumbnailHeightThumbnail metadata
imageUrlsArray of image URLs (galleries and previews)
createdAtPost creation timestamp (ISO format)
scrapedAtTime the data was scraped
dataTypepost or community

Optional fields depend on the record type and what Reddit makes public. Deleted authors, unavailable media and absent profile details can have empty values. Scores and comment counts are snapshots, not permanent totals.

API, MCP and AI workflows

Use the Actor through the Apify API or select it in the Apify MCP server. An AI agent can supply the same JSON inputs shown above, then use the returned dataset for summarization, classification or research. Sentiment analysis and summaries are downstream tasks; this Actor returns source data.

Connect datasets to n8n, Make, Zapier or your own Python and JavaScript workflows. Use Apify schedules for recurring runs and webhooks to trigger processing after completion. ChatGPT, Claude and LangChain workflows can consume the exported data through their configured integrations.

Limits and frequently asked questions

Do I need a Reddit account? No Reddit login or personal Reddit API key is required. Apify API calls require your own Apify token.

How many results can I collect? The free allowance is 25 dataset rows. Paid runs honor your input and platform result limits, with a 100,000-row dataset ceiling. Per-target limits do not override the total cap. Set your Apify run timeout and budget to suit the job.

Does a requested maximum guarantee that many rows? No. Public availability, source pagination, filtering, duplicate removal and deleted content can reduce the count. This is not a complete historical archive.

Are results unique? IDs are deduplicated across the inputs in a run. Separate new runs can return the same records; use their IDs when maintaining a historical database.

Can bulk runs continue while producing results? Yes. There is no fixed internal runtime, request-count or page-count cutoff. Requested result limits still apply. Repeated failures, unavailable data or pagination without progress stop collection while preserving confirmed results.

What does resume mean? Saved checkpoints support continuation of the same run. Starting a fresh run creates a new dataset and does not automatically resume an older run.

What is the price? Check the current Pricing tab on this Actor. Your plan, result allowance and run budget determine which limits apply.