Stock sentiment API for traders and fintech apps. Track Reddit buzz scores, mentions, bullish %, and trend direction. Spot trending tickers before the market moves.
| # | Ticker | Company | Buzz | Mentions | Bullish | Trend |
|---|---|---|---|---|---|---|
| Loading trending stocks... | ||||||
The Trending API allows developers and traders to retrieve all trending tickers, sectors & countries.
Retail investors share ideas across dozens of subreddits. Trending tickers surface and fade within hours. Scanning r/wallstreetbets, r/stocks, and r/investing takes time and you still miss signals in niche communities.
50+ active trading subreddits with thousands of daily posts. Impossible to track manually.
Sarcasm, memes, and duplicate posts make raw mention counts unreliable.
You need a single score to compare $TSLA buzz vs $PLTR buzz objectively.
Discover what's trending, analyze any ticker in detail, and get AI-powered explanations. RESTful JSON endpoints that integrate into trading bots, dashboards, or research tools.
Posts and comments scraped hourly from 50+ subreddits. Trends calculated on rolling 24h windows.
VADER enhanced with 1000+ finance terms like "moon", "tendies", "bearish", plus emoji analysis.
Mention volume, sentiment, upvotes, subreddit spread, and momentum combined into one 0-100 score.
Access real-time stock sentiment analytics from Reddit for your trading algorithms, fintech apps, or market research tools.
Fill out the form below. We'll send you a secure link to retrieve your API key.
RESTful JSON API. All requests require authentication via X-API-Key header. View full documentation → · BuzzScore Whitepaper →
https://api.adanos.org/reddit/stocks
X-API-Key: sk_live_...
/v1/trending
Returns stocks with highest buzz on Reddit, ranked by buzz score. Combines mention volume, sentiment, engagement (upvotes), and trend direction.
days | Time period in days (1-30 free, 1-90 paid; default: 1) |
limit | Maximum results (1-100, default: 20) |
offset | Skip first N results for pagination (default: 0) |
type | Filter by asset type: stock, etf, or all (default: all) |
[
{
"ticker": "TSLA",
"company_name": "Tesla, Inc.",
"buzz_score": 87.5,
"trend": "rising",
"trend_history": [85.2, 82.1, 79.5, 81.3, 84.0, 86.2, 87.5],
"mentions": 342,
"unique_posts": 45,
"subreddit_count": 8,
"sentiment_score": 0.23,
"bullish_pct": 45,
"bearish_pct": 18,
"total_upvotes": 15234
}
]
ticker | Stock ticker symbol |
company_name | Company name (null if not found) |
buzz_score | Overall buzz score (0-100) |
trend | rising, falling, or stable (rolling 24h window) |
trend_history | Array of daily buzz scores (oldest to newest, min 7 days, 0.0 for missing data) |
mentions | Total number of mentions |
unique_posts | Number of unique posts |
subreddit_count | Number of subreddits with mentions |
sentiment_score | Average sentiment (-1 bearish to +1 bullish) |
bullish_pct | Percentage of bullish mentions |
bearish_pct | Percentage of bearish mentions |
total_upvotes | Total upvotes across all mentions |
/v1/trending/sectors
Returns sectors with highest aggregated buzz on Reddit, ranked by buzz score. Combines all stock mentions per sector and includes the top 5 tickers per sector.
days | Time period in days (1-30 free, 1-90 paid; default: 1) |
limit | Maximum results (1-100, default: 20) |
offset | Skip first N results for pagination (default: 0) |
[
{
"sector": "Technology",
"buzz_score": 78.4,
"trend": "rising",
"mentions": 4523,
"unique_tickers": 34,
"subreddit_count": 15,
"sentiment_score": 0.28,
"bullish_pct": 54,
"bearish_pct": 22,
"total_upvotes": 128450,
"top_tickers": ["NVDA", "AAPL", "MSFT", "AMD", "GOOGL"]
}
]
sector | Industry sector name |
buzz_score | Aggregated buzz score (0-100) |
trend | rising, falling, or stable |
mentions | Total mentions across all tickers in sector |
unique_tickers | Number of unique tickers mentioned |
subreddit_count | Number of subreddits with mentions |
sentiment_score | Weighted average sentiment (-1 to +1) |
bullish_pct | Percentage of bullish mentions |
bearish_pct | Percentage of bearish mentions |
total_upvotes | Total upvotes across all mentions |
top_tickers | Top 5 tickers by mention count |
/v1/trending/countries
Returns countries with highest aggregated buzz on Reddit, ranked by buzz score. Combines all stock mentions per country and includes the top 5 tickers per country.
days | Time period in days (1-30 free, 1-90 paid; default: 1) |
limit | Maximum results (1-100, default: 20) |
offset | Skip first N results for pagination (default: 0) |
[
{
"country": "United States",
"buzz_score": 82.3,
"trend": "stable",
"mentions": 8934,
"unique_tickers": 156,
"subreddit_count": 18,
"sentiment_score": 0.21,
"bullish_pct": 48,
"bearish_pct": 26,
"total_upvotes": 245000,
"top_tickers": ["NVDA", "TSLA", "AAPL", "AMD", "PLTR"]
}
]
country | Country name |
buzz_score | Aggregated buzz score (0-100) |
trend | rising, falling, or stable |
mentions | Total mentions across all tickers from country |
unique_tickers | Number of unique tickers mentioned |
subreddit_count | Number of subreddits with mentions |
sentiment_score | Weighted average sentiment (-1 to +1) |
bullish_pct | Percentage of bullish mentions |
bearish_pct | Percentage of bearish mentions |
total_upvotes | Total upvotes across all mentions |
top_tickers | Top 5 tickers by mention count |
/v1/stock/{ticker}
Returns detailed sentiment analysis for a specific stock ticker. Includes daily trend data, top mentions by upvotes, and top subreddits.
ticker | Stock ticker symbol (1-5 uppercase letters, e.g., TSLA) |
days | Time period in days (1-30 free, 1-90 paid; default: 7) |
{
"ticker": "TSLA",
"company_name": "Tesla, Inc.",
"found": true,
"buzz_score": 87.5,
"trend": "rising",
"total_mentions": 342,
"sentiment_score": 0.23,
"bullish_pct": 45,
"bearish_pct": 18,
"positive_count": 154,
"negative_count": 62,
"neutral_count": 126,
"total_upvotes": 15234,
"unique_posts": 45,
"subreddit_count": 8,
"period_days": 7,
"daily_trend": [
{ "date": "2024-12-27", "mentions": 52, "sentiment": 0.31, "buzz_score": 87.5 },
{ "date": "2024-12-26", "mentions": 48, "sentiment": 0.18, "buzz_score": 85.2 }
],
"top_subreddits": [
{ "subreddit": "wallstreetbets", "count": 89 },
{ "subreddit": "stocks", "count": 67 }
],
"top_mentions": [
{
"text_snippet": "TSLA looking strong after...",
"sentiment_score": 0.85,
"sentiment_label": "positive",
"upvotes": 1234,
"subreddit": "wallstreetbets",
"created_utc": "2024-12-27T10:30:00"
}
]
}
ticker | Stock ticker symbol |
company_name | Company name (null if not found) |
found | Whether mentions were found |
buzz_score | Overall buzz score (0-100) |
trend | rising, falling, or stable (rolling 24h window) |
total_mentions | Total number of mentions |
sentiment_score | Average sentiment (-1 to +1) |
bullish_pct | Percentage of bullish mentions |
bearish_pct | Percentage of bearish mentions |
positive_count | Number of positive mentions |
negative_count | Number of negative mentions |
neutral_count | Number of neutral mentions |
total_upvotes | Total upvotes across all mentions |
unique_posts | Number of unique posts |
subreddit_count | Number of subreddits with mentions |
period_days | Analysis period in days |
daily_trend | Array of daily mentions, sentiment, and buzz_score |
top_subreddits | Top subreddits by mention count |
top_mentions | Top mentions by upvotes |
404 | No mentions found for ticker in the specified period |
401 | Missing or invalid API key |
/v1/stock/{ticker}/explain
Returns an AI-generated explanation of why a stock is trending based on recent Reddit user-comments.
ticker | Stock ticker symbol (1-5 uppercase letters, e.g., TSLA) |
{
"ticker": "TSLA",
"company_name": "Tesla, Inc.",
"explanation": "Tesla is trending due to strong Q4 delivery numbers and renewed investor optimism about EV demand.",
"cached": false,
"generated_at": "2025-01-14T12:30:00Z",
"model": "llama-3.1-8b-instant"
}
ticker | Stock ticker symbol |
company_name | Company name (null if not found) |
explanation | 1-2 sentence AI-generated summary of why the stock is trending |
cached | Whether the response was served from cache |
generated_at | ISO timestamp when the explanation was generated |
model | LLM model used for generation (null if unavailable) |
404 | No mentions found for ticker |
401 | Missing or invalid API key |
503 | Explanation service temporarily unavailable |
/v1/search
Search for stocks by ticker symbol or company name. Returns matching stocks with their mention counts.
q | Search query (ticker or company name, required) |
{
"query": "tesla",
"count": 1,
"results": [
{
"ticker": "TSLA",
"name": "Tesla Inc.",
"aliases": ["Tesla", "Elon"],
"mention_count": 342
}
]
}
query | Original search query |
count | Number of results found |
results | Array of matching stocks |
results[].ticker | Stock ticker symbol |
results[].name | Company name |
results[].aliases | Alternative names/aliases |
results[].mention_count | Total mentions in database |
/v1/compare
Compare sentiment metrics for up to 10 stocks side by side.
tickers | Comma-separated list of tickers (max 10, required) |
days | Time period in days (1-30 free, 1-90 paid; default: 7) |
{
"period_days": 7,
"stocks": [
{
"ticker": "TSLA",
"company_name": "Tesla, Inc.",
"buzz_score": 87.5,
"mentions": 342,
"sentiment": 0.23,
"upvotes": 15234
},
{
"ticker": "NVDA",
"company_name": "NVIDIA Corporation",
"buzz_score": 72.3,
"mentions": 189,
"sentiment": 0.45,
"upvotes": 8921
}
]
}
period_days | Analysis period in days |
stocks | Array of stock comparison data |
stocks[].ticker | Stock ticker symbol |
stocks[].company_name | Company name (null if not found) |
stocks[].buzz_score | Overall buzz score (0-100) |
stocks[].mentions | Total number of mentions |
stocks[].sentiment | Average sentiment (-1 to +1) |
stocks[].upvotes | Total upvotes across all mentions |
400 | Maximum 10 tickers allowed |
401 | Missing or invalid API key |
All plans include access to the same powerful API.
Perfect for quick tests, API exploration, and early prototypes.
For professional traders, personal trading bots, academic research & side projects
For hedge funds, fintech startups, trading platforms & commercial applications
Non-profit & Education: Free access for qualifying organizations. Get in touch →
Everything you need to know about the Reddit Stock Sentiment API.
We monitor 50+ subreddits including r/wallstreetbets, r/stocks, r/investing, r/stockmarket, r/options, r/Finanzen, and r/mauerstrassenwetten. These communities represent the most active retail trading discussions on Reddit.
We use VADER sentiment analysis enhanced with a finance-specific lexicon of 1000+ terms. Examples: moon (+3.5), tendies (+2.5), bearish (-3.0), short squeeze (+3.5). Emojis are also analyzed: 🚀 (+3.0), 🐻 (-2.5), 💎🙌 (+2.0). Scores range from -1.0 (bearish) to +1.0 (bullish).
Buzz score (0-100) combines five weighted factors: volume (log₁₀(mentions + 1) × 20), mood (sentiment × 20), quality (log₁₀(upvotes/mentions + 1) × 10), diversity (log₁₀(subreddits + 1) × 14), and momentum (trend boost from -10 to +20). Scores above 50 use asymptotic scaling to prevent ceiling clustering.
Trend compares rolling 24h windows using a weighted activity score: 60% mentions ratio, 25% upvotes ratio, 15% subreddit spread. Result: rising (>+10%), falling (<-10%), or stable (±10%).
Our scraper runs every 60 minutes, processing posts and comments from all tracked subreddits. The worker health endpoint shows scrape status, success rate, and last scrape timestamp. Historical data is available for up to 90 days.
The free tier includes 250 API calls per month, 100 requests per minute, access to all endpoints (trending, stock details, compare, search, explain), and 30 days historical data. Perfect for personal projects and prototyping. Upgrade for unlimited monthly usage and higher per-minute limits.
All responses are JSON (UTF-8). The /v1/stock/{ticker} endpoint returns the richest data: daily_trend (per-day breakdown), top_subreddits (where it's discussed), top_mentions (actual Reddit comments with sentiment labels), and sentiment distribution (positive_count, negative_count, neutral_count).
Yes. Free tier keys are limited to 100 requests per minute and 250 requests per month. Paid tiers allow 1000 requests per minute with unlimited monthly usage. Rate limit headers (X-RateLimit-Remaining, X-RateLimit-Reset) are included in every response. Exceeding limits returns HTTP 429.
The /v1/stock/{ticker}/explain endpoint uses Groq's llama-3.1-8b-instant model to analyze top mentions and generate a 1-2 sentence explanation of why a stock is trending. Explanations are cached for 6 hours. Only available for tickers with ≥10 mentions.
Our data is for informational purposes only. Sentiment is one signal among many—it reflects retail discussion, not institutional activity or fundamentals. Many traders use it as a contrarian indicator or for timing. Past sentiment is not indicative of future performance. Always do your own research.
Running a hedge fund, building a fintech product, or need high-volume access for your trading platform? Our Enterprise plan offers significantly higher rate limits for professional use cases.