Reddit Keywords
Pricing
from $1.00 / 1,000 results
Reddit Keywords
Welcome to Reddit Keywords Scraper. Scrape Posts from Reddit through Reddit search engine by providing your desired keyword, the crawler will return post urls, number of comments, score, title, content, thumbnail and much more. Be sure to leave a review and provide feedback.
Pricing
from $1.00 / 1,000 results
Rating
5.0
(3)
Developer
Crawler Bros
Maintained by CommunityActor stats
10
Bookmarked
262
Total users
17
Monthly active users
15 days ago
Last modified
Categories
Share
Reddit Keywords Scraper (Reddit Search)
Search Reddit by keyword and scrape posts, comments, communities and users with full data — 70+ post fields, 50+ comment fields, 70+ community fields, 25+ user fields. No API key, no login required from you; the actor authenticates with Reddit's public search on your behalf.
What this actor does
- Searches Reddit by keyword and returns posts, comments, communities and users — pick any combination via
searchPosts/searchComments/searchCommunities/searchUsers - Supports Reddit's full search syntax inside each keyword: exact phrases,
AND/OR/NOT,-exclusions, and field operators (author:,subreddit:,flair:,selftext:,site:) - 5 sort orders (Relevance, Hot, Top, New, Comment count), 6 time filters, and 30+ optional filters — score, karma, flair, author, domain, awards, NSFW, subreddit access type, and creation-date windows
- Scope a search to one or more subreddits at once (
withinCommunity), or leave it unset to search all of Reddit - Empty fields are omitted from every record — the output never contains null or blank values
Output: per-post
Each post record starts with dataType: "post" and includes:
subreddit, subreddit_prefixed, subreddit_id, subreddit_subscribers, subreddit_type, post_id, post_name, title, author, author_id, author_flair, author_flair_background_color, author_flair_text_color, author_flair_type, author_flair_css_class, author_flair_richtext, author_flair_template_id, author_premium, author_is_blocked, author_patreon_flair, content, content_html, content_url, content_categories, url (reddit permalink), permalink, url_overridden_by_dest, domain, post_hint, is_self, post_type (self/link/image/video/gallery/poll), score, ups, downs, upvote_ratio, num_comments, link_flair, link_flair_background_color, link_flair_text_color, link_flair_type, link_flair_css_class, link_flair_richtext, link_flair_template_id, thumbnail_url, thumbnail_width, thumbnail_height, created_utc, created_at, edited, edited_at, is_stickied, is_locked, is_archived, is_pinned, is_nsfw, is_spoiler, is_original_content, is_crosspost, is_crosspostable, is_meta, is_robot_indexable, is_reddit_media_domain, media_only, no_follow, send_replies, allow_live_comments, contest_mode, hide_score, suggested_sort, quarantine, num_crossposts, num_duplicates (link posts only), gilded, total_awards_received, awards (award-type breakdown — name, count, coin price, icon URL — for every award given), removed_by_category, distinguished, hidden, media_type, has_media, images[], gallery_images[], gallery_count, video_url, poll_data, crosspost_parent_id, search_term, crawled_at, source
Output: per-comment
Each comment record starts with dataType: "comment" and includes:
post_id, post_url, post_title, comment_id, comment_name, author, author_id, author_flair, author_flair_css_class, author_flair_template_id, author_flair_type, author_flair_text_color, author_flair_background_color, author_flair_richtext, author_premium, author_is_blocked, author_patreon_flair, body, body_html, score, ups, downs, score_hidden, subreddit, subreddit_prefixed, subreddit_id, subreddit_type, link_id, created_utc, created_at, edited, edited_at, archived, can_gild, depth, parent_id, parent_kind, is_op, is_stickied, is_locked, distinguished, controversiality, collapsed, collapsed_reason, collapsed_because_crowd_control, collapsed_reason_code, comment_type, unrepliable_reason, no_follow, send_replies, gilded, total_awards_received, awards, removed_by_category, permalink, search_term, crawled_at, source
Output: per-community
Each community record starts with dataType: "community" and includes:
subreddit, subreddit_prefixed, subreddit_id, url, title, description, description_html, public_description, public_description_html, submit_text, submit_text_html, submit_text_label, submit_link_label, subscribers, active_user_count, created_utc, created_at, subreddit_type, submission_type, restrict_posting, restrict_commenting, over18, quarantine, wiki_enabled, lang, advertiser_category, community_icon, icon_img, banner_img, banner_background_image, banner_background_color, mobile_banner_image, header_img, header_title, banner_width, banner_height, header_width, header_height, icon_width, icon_height, primary_color, key_color, allow_images, allow_videos, allow_videogifs, allow_galleries, allow_polls, allow_predictions, allow_predictions_tournament, allow_prediction_contributors, allow_talks, allow_discovery, allowed_media_in_comments, spoilers_enabled, original_content_tag_enabled, all_original_content, is_crosspostable_subreddit, link_flair_enabled, link_flair_position, user_flair_enabled_in_sr, user_flair_position, user_flair_type, user_flair_text, user_flair_richtext, user_flair_template_id, user_flair_background_color, user_flair_text_color, can_assign_link_flair, can_assign_user_flair, suggested_comment_sort, accept_followers, emojis_enabled, comment_score_hide_mins, collapse_deleted_comments, free_form_reports, hide_ads, public_traffic, community_reviewed, has_menu_widget, disable_contributor_requests, should_archive_posts, show_media, show_media_preview, should_show_media_in_comments_setting, user_sr_theme_enabled, search_term, crawled_at, source
Output: per-user
Each user record starts with dataType: "user" and includes:
username, user_id, profile_url, post_karma, comment_karma, total_karma, awardee_karma, awarder_karma, is_gold, is_mod, is_employee, has_verified_email, verified, has_subscribed, is_blocked, is_friend, pref_show_snoovatar, icon_img, snoovatar_img, snoovatar_size, accept_followers, hide_from_robots, user_subreddit (the account's profile subreddit: display name, title, subscribers, icon, banner, bio, NSFW flag, type, URL), created_utc, created_at, search_term, crawled_at, source
Fields that don't apply to a given record (no media, no flair, no poll, no gallery, etc.) are omitted entirely — the output never contains null or empty values.
Input
| Field | Type | Default | Description |
|---|---|---|---|
keywords | string[] | required | Search terms. Each keyword is searched separately and results are tagged with search_term. Supports Reddit's search syntax: exact phrases ("machine learning"), boolean (python AND rust, python OR django, python NOT snake, (python OR django) AND framework), exclusion (-javascript), and field operators (author:name, subreddit:name, flair:tag, selftext:"phrase", site:domain) |
searchPosts | boolean | true | Include posts in the results |
searchComments | boolean | false | Include comments in the results |
searchCommunities | boolean | false | Include subreddits in the results (community discovery) |
searchUsers | boolean | false | Include Reddit accounts whose username matches the keyword (user discovery) |
withinCommunity | string | – | Restrict the search to one or more subs — bare name (technology), r/technology, a full URL, or a comma-separated list (technology,programming) to search several subreddits at once. Applies to posts, comments and communities; user search is always global |
sort | enum | relevance | relevance, hot, top, new, comments |
timeFilter | enum | all | hour, day, week, month, year, all (applies to the Top sort, as in Reddit's own search UI) |
resultLimit | integer | 100 | Maximum posts per keyword (1–1,000) |
maxComments | integer | 100 | Maximum comments per keyword, when searchComments is on (0–100,000) |
maxCommunities | integer | 10 | Maximum subreddits per keyword, when searchCommunities is on (0–1,000) |
maxUsers | integer | 25 | Maximum accounts per keyword, when searchUsers is on (0–100 — Reddit serves a single results page for account search, so 100 is the reliable ceiling) |
maxItems | integer | 100000 | Hard cap on the total number of records for the whole run (all keywords, all types combined); the run stops as soon as this budget is spent (1–1,000,000) |
includeNSFW | boolean | false | Include 18+ posts |
onlyWithFlair | boolean | false | Keep only posts that have a link flair set; drop unflaired posts |
postType | enum | – | Keep only posts of one content type: self, link, image, video, gallery, poll. Leave unset to keep all types |
minScore | integer | – | Keep only posts with a score (upvotes minus downvotes) at or above this value |
maxScore | integer | – | Keep only posts with a score at or below this value — useful for finding overlooked/low-visibility posts |
minComments | integer | – | Keep only posts with at least this many comments |
minAwards | integer | – | Keep only posts (and comments, when searchComments is on) with at least this many total awards |
titleContains | string | – | Keep only posts whose title contains this text (case-insensitive substring match) |
contentContains | string | – | Keep only self (text) posts whose body contains this text (case-insensitive substring match) |
flairContains | string | – | Keep only posts whose link flair text contains this text (case-insensitive substring match) |
authorFlairContains | string | – | Keep only posts (and comments, when searchComments is on) whose author flair text contains this text (case-insensitive substring match) |
authors | string[] | – | Keep only results submitted by one of these usernames (bare name or u/-prefixed); applies to posts and, when searchComments is on, comments |
domain | string | – | Keep only posts whose link domain contains this text (e.g. youtube.com, self.python) |
distinguished | enum | – | Keep only moderator, admin, or special (Reddit-team) results, or none to keep only regular results. Applies to posts and, when searchComments is on, comments |
subredditType | enum | – | Keep only results whose community has this access type: public, restricted, private, gold_only, archived, user. Applies to posts, comments and communities alike |
minUpvoteRatio | number | – | Keep only posts with an upvote ratio (0–1) at or above this value |
excludeStickied | boolean | false | Drop posts pinned by moderators (and comments stickied by a moderator, when searchComments is on) |
excludeCrossposts | boolean | false | Drop posts that are crossposted from another subreddit |
excludeArchived | boolean | false | Drop content Reddit has archived (locked from voting/commenting), for posts and, when searchComments is on, comments |
excludeLocked | boolean | false | Drop content a moderator has locked from further comments/replies, for posts and, when searchComments is on, comments |
excludeDeleted | boolean | false | Drop posts and comments whose author was deleted or whose content was removed by a moderator/admin |
excludeSpoilers | boolean | false | Drop posts marked as a spoiler by their author |
onlyOriginalContent | boolean | false | Keep only posts the author tagged as original content (OC) |
minCommentScore | integer | – | Keep only comments with a score at or above this value, when searchComments is on |
commentContains | string | – | Keep only comments whose body contains this text, when searchComments is on |
onlyOPComments | boolean | false | Keep only comments written by the post's original poster, when searchComments is on |
minCommunitySubscribers | integer | – | Keep only communities with at least this many subscribers, when searchCommunities is on |
minUserKarma | integer | – | Keep only accounts with at least this much total karma, when searchUsers is on |
minPostKarma | integer | – | Keep only accounts with at least this much post (link) karma, when searchUsers is on |
minCommentKarma | integer | – | Keep only accounts with at least this much comment karma, when searchUsers is on |
postedAfter | date | – | Keep only results created on or after this date (UTC, YYYY-MM-DD). Applies to posts, comments, communities (subreddit creation date) and users (account creation date) |
postedBefore | date | – | Keep only results created on or before this date (UTC, inclusive of the whole day) |
Example: basic keyword search
{"keywords": ["notion alternative", "best productivity app"],"searchPosts": true,"sort": "top","timeFilter": "month","resultLimit": 50}
Example: advanced search syntax with quality filters
{"keywords": ["\"machine learning\" AND python -tutorial"],"searchPosts": true,"postType": "self","minScore": 50,"minComments": 10,"excludeStickied": true,"resultLimit": 100}
Example: scoped subreddit search
{"keywords": ["AI agents"],"searchPosts": true,"withinCommunity": "r/MachineLearning,r/artificial","sort": "new","resultLimit": 30}
Example: multi-type search (posts, comments, communities and users)
{"keywords": ["notion"],"searchPosts": true,"searchComments": true,"searchCommunities": true,"searchUsers": true,"resultLimit": 30,"maxComments": 30,"maxCommunities": 10,"maxUsers": 10,"postedAfter": "2026-01-01","maxItems": 200}
Use cases
- Brand monitoring — track mentions of your product or competitors across Reddit, scheduled to run daily
- Lead generation — find posts with purchase intent or "recommend me a tool" requests in your niche
- Market research — mine opinions and sentiment across relevant communities
- Content ideation — discover trending questions and discussion topics before you write
- Community discovery — find every subreddit that matters for a given topic, with subscriber counts and rules-relevant metadata
- Influencer/account discovery — find Reddit accounts whose username matches a brand or topic keyword
FAQ
Do I need a Reddit API key or login? No — the actor searches Reddit's public data on your behalf; you don't need your own Reddit account or credentials.
Does this actor need a proxy configured? No — Reddit blocks plain datacenter IP addresses on its search pages (including Apify's free proxy group), so the actor automatically routes every request through Apify's RESIDENTIAL proxy group. This happens internally with zero setup; there is no proxy field to configure.
Why did I get fewer results than my resultLimit / maxItems? Reddit's own search index caps each query at roughly 1,000 results, and in practice it often serves noticeably fewer than that — commonly around 200–300 — for broad or generic keywords. This is a limitation of Reddit's search index itself, not a bug in the actor: the actor paginates through everything Reddit's search exposes and returns every result it can reach. Narrower, more specific keywords (or scoping with withinCommunity) typically surface a higher share of the available results.
Which sort orders and time filters are available? Relevance, Hot, Top, New and Comment count, matching Reddit's own search UI. The time filter (past hour/day/week/month/year/all time) applies to the Top sort, exactly as it does on reddit.com.
Can I search inside one or more specific subreddits? Yes — set withinCommunity to a bare name, r/name, a full URL, or a comma-separated list to search several subreddits in one query. This applies to posts, comments and communities; account search is always global.
Can I find Reddit users by keyword? Yes — enable searchUsers to get accounts whose username matches the keyword, along with karma breakdown, verification/moderator/gold status and their profile subreddit. Account search always searches globally and returns up to 100 accounts per keyword.
How fresh is the data? Every run scrapes Reddit live at the time it executes — there is no cached or delayed data. Each record includes a crawled_at timestamp.
Why are gilded/awards/total_awards_received usually empty or zero? Reddit retired most of its public award program, so award data is now rare on individual posts and comments. The actor still returns these fields whenever Reddit's data does include them.
Is this actor affiliated with Reddit? No — this is an independent, third-party actor that reads Reddit's publicly accessible search results. It is not endorsed by or affiliated with Reddit, Inc.
How much does it cost to run? Pricing is pay-per-result — see the Pricing tab on the actor's page for current rates.
