Reddit Intelligence API avatar

Reddit Intelligence API

Pricing

from $59.00 / 1,000 thread analyzeds

Go to Apify Store
Reddit Intelligence API

Reddit Intelligence API

Research any topic on Reddit. Returns sentiment analysis, theme clusters, key concerns, and ranked threads as structured JSON. Ready for AI agents and LLM pipelines. No API keys required.

Pricing

from $59.00 / 1,000 thread analyzeds

Rating

0.0

(0)

Developer

Jim Giganti

Jim Giganti

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

2

Monthly active users

13 hours ago

Last modified

Share

Research any topic on Reddit and get structured analysis your AI agent can reason over directly. Input a topic, product name, or company — get back sentiment, theme clusters, key concerns, notable quotes, and ranked threads as clean JSON.

No API keys required. No login. Uses Reddit's public data only.


Who this is for

AI agent developers — Give your agent the ability to research public opinion on any topic in one tool call. The intelligence output mode returns a single structured record with a plain-English summary, sentiment score, and clustered themes. Your agent reads it and reasons. No parsing, no post-processing.

Developers building research tools — Product feedback pipelines, brand monitoring, market research dashboards, competitive intelligence tools. Pull structured Reddit signal on any topic and pipe it into your stack.

LLM pipeline builders — Feed clean, ranked, relevance-scored Reddit content into RAG systems, evaluation datasets, or fine-tuning pipelines. The raw mode returns explicit nulls on every field — no undefined surprises.


What makes this different from a Reddit scraper

Most Reddit scrapers return a raw dump — post text, upvotes, comment text. You still have to figure out what it means. This actor does that work for you:

  • Relevance scoring — posts are ranked by a composite signal (engagement quality, discussion depth, recency, content richness, community signals). Low-quality and controversial posts are filtered before they reach your output.
  • Sentiment analysis — weighted across posts and comments, with negation handling. Knows that "not great" is different from "great."
  • Theme clustering — groups discussion into eight topic-agnostic categories (pricing, performance, usability, support, features, alternatives, experience, security). Each cluster has its own sentiment score.
  • Notable quotes — extracts high-signal short excerpts (40–280 chars) from highly-voted comments. The kind of thing you'd actually want to cite.
  • Narrative summary — one plain-English sentence synthesizing the overall finding. Designed to be the first thing an AI agent reads.

Output modes

Returns one record containing the full analysis. This is the MCP-ready mode. An agent calls the tool, reads the intelligence.summary field first, then drills into clusters, keyConcerns, and notableQuotes as needed.

{
"query": "Rust programming language",
"mode": "intelligence",
"fetchedAt": "2026-04-04T14:23:11.000Z",
"intelligence": {
"overallSentiment": "positive",
"sentimentScore": 0.52,
"sentimentBreakdown": { "positive": 38, "negative": 9, "neutral": 21 },
"summary": "Reddit discussion about \"Rust programming language\" is generally positive across 14 threads from 2024-02-01 to 2026-03-28. The most discussed theme is personal experience (positive sentiment). Key concerns include: slow, difficult, compile.",
"clusters": [
{ "id": "experience", "label": "Personal experience", "mentionCount": 47, "sentiment": "positive", "sentimentScore": 0.41 },
{ "id": "performance", "label": "Performance & reliability", "mentionCount": 31, "sentiment": "positive", "sentimentScore": 0.58 },
{ "id": "usability", "label": "Ease of use", "mentionCount": 28, "sentiment": "mixed", "sentimentScore": -0.12 }
],
"keyConcerns": [
{ "term": "slow", "count": 12 },
{ "term": "difficult", "count": 9 },
{ "term": "compile", "count": 7 }
],
"keyPraises": [
{ "term": "fast", "count": 24 },
{ "term": "reliable", "count": 18 },
{ "term": "great", "count": 15 }
],
"notableQuotes": [
{
"text": "Once it clicks, you never want to go back. The compiler is your pair programmer.",
"commentScore": 847,
"sentimentScore": 0.8,
"postTitle": "Six months with Rust — honest review"
}
]
},
"coverage": {
"threadCount": 14,
"topSubreddits": [
{ "subreddit": "rust", "threadCount": 6 },
{ "subreddit": "programming", "threadCount": 4 },
{ "subreddit": "learnprogramming", "threadCount": 3 }
],
"dateRange": { "oldest": "2024-02-01", "newest": "2026-03-28" }
},
"topThreads": [
{
"id": "1abc23",
"subreddit": "rust",
"title": "Six months with Rust — honest review",
"url": "https://reddit.com/r/rust/comments/1abc23/six_months_with_rust_honest_review/",
"score": 2341,
"numComments": 187,
"relevanceScore": 84.2,
"createdAt": "2026-01-15T09:42:00.000Z"
}
]
}

threads — one record per post

Returns ranked posts with metadata, signal quality rating, and top comments. Use this when you want to display or browse results rather than feed them into an agent.

{
"rank": 1,
"id": "1abc23",
"subreddit": "rust",
"title": "Six months with Rust — honest review",
"url": "https://reddit.com/r/rust/comments/1abc23/",
"score": 2341,
"upvoteRatio": 0.97,
"numComments": 187,
"createdAt": "2026-01-15T09:42:00.000Z",
"relevanceScore": 84.2,
"signalQuality": "high",
"topComments": [
{
"author": "some_rustacean",
"body": "Once it clicks, you never want to go back. The compiler is your pair programmer.",
"score": 847
}
]
}

raw — explicit nulls, no analysis

Pure data. Every field present on every record, null when absent. No internal scoring fields. Use this for custom pipelines that do their own processing.


Input

FieldTypeDefaultDescription
querystringTopic, product, company, or question to research. Required unless subreddit is set.
subredditstringRestrict to a specific subreddit (without r/). Can be combined with query.
subredditsstring[]Search across multiple subreddits. Used with query.
outputModestringintelligenceintelligence | threads | raw
timeRangestringyearhour | day | week | month | year | all
maxPostsinteger30Posts to fetch before scoring (5–50). More = broader coverage, higher cost.
maxResultsinteger15Records in output after scoring (1–50).
budgetUsdnumberOptional spend cap. Actor exits cleanly when reached.

At least one of query, subreddit, or subreddits is required.


Pricing

EventPriceWhen
reddit-thread-analyzed$0.05 / threadIntelligence mode — per thread analyzed
reddit-record-returned$0.01 / recordThreads and raw modes — per post returned

A typical intelligence run analyzing 15 threads costs $0.75. A threads run returning 15 posts costs $0.15.

Use the budgetUsd input to cap spend on scheduled runs.


Using with AI agents

Claude Desktop / Claude Code (MCP)

Add Apify to your MCP config, then ask Claude directly:

What do developers think about Bun vs Node.js? Use the Reddit Intelligence API to find out.

Claude will call the actor automatically, read the intelligence.summary, and reason over the clusters and concerns in context.

LangGraph

from apify_client import ApifyClient
client = ApifyClient("YOUR_APIFY_TOKEN")
run = client.actor("YOUR_USERNAME/reddit-intelligence").call(
run_input={
"query": "Next.js vs Remix 2025",
"outputMode": "intelligence",
"timeRange": "year",
"maxPosts": 30,
}
)
result = client.dataset(run["defaultDatasetId"]).list_items().items[0]
# Feed directly into your LLM context
summary = result["intelligence"]["summary"]
clusters = result["intelligence"]["clusters"]
concerns = result["intelligence"]["keyConcerns"]

CrewAI

from crewai_tools import ApifyActorsTool
reddit_research = ApifyActorsTool(actor_name="YOUR_USERNAME/reddit-intelligence")
result = reddit_research.run(run_input={
"query": "Supabase vs Firebase",
"outputMode": "intelligence",
"timeRange": "year",
})

n8n / Make

Set the actor ID to YOUR_USERNAME/reddit-intelligence, pass JSON input, and connect the dataset output to any downstream node. Works out of the box with Apify's native n8n and Make integrations.


Common use cases

Product research before building — Before starting a new project, ask what developers are saying about the tools you're considering. Get a structured view of real-world pain points and praise in under a minute.

Competitive intelligence — Run queries on your competitors and your own product. Compare sentiment scores and cluster themes to understand where you're winning and where users are frustrated.

Market research for AI applications — Feed Reddit signal into your RAG pipeline as grounded, community-sourced context. Useful for applications that need to answer questions about public opinion.

Brand monitoring — Schedule runs on your product name weekly. Track sentiment score over time. The dateRange field on coverage lets you see if you're looking at recent or historical discussion.

Due diligence — Researching a vendor, tool, or technology before committing? Pull the last year of Reddit discussion and get a structured view of what practitioners actually think.


Technical notes

No authentication required. Uses Reddit's public JSON API endpoints — the same data available at reddit.com/search.json. No Reddit account, no OAuth, no API keys.

Rate limiting. The actor enforces a 1.1-second minimum between requests to stay within Reddit's unauthenticated rate limits. Retries use exponential backoff with jitter. Rate-limit responses (429) back off longer.

Relevance scoring. Posts are scored on five weighted factors before reaching your output: engagement quality (upvote ratio × log score), discussion depth, recency, content richness, and community signals (awards, virality). Posts below the minimum relevance threshold are filtered. Controversial posts with low upvote ratios are penalized.

Sentiment analysis. Weighted across all text units (titles, post bodies, comments). Higher-voted content carries more weight. Negation handling ("not great" scores differently from "great"). No LLM dependency — pure signal processing.

Budget cap. If budgetUsd is set, the actor estimates spend before pushing records and truncates output cleanly if the cap would be exceeded. The run exits with a log message rather than an error.


Issues and feedback

Found a bug or have a feature request? Open an issue on the Issues tab. Response time is typically within 24 hours.

Common requests welcome: additional output fields, new theme cluster categories, language filtering, support for specific subreddit types.