Skip to main content

Topics / Earnings, estimates and analyst ratings

Earnings, estimates and analyst ratings

Ten years of earnings surprises, quarterly consensus estimates, analyst ratings and price targets, and earnings-call transcripts for the largest US companies.

Event-driven and earnings strategies, sell-side coverage tracking.

9 listings on earnings, estimates and analyst ratings

US Earnings Surprises — Actual Vs Estimate, 10y (2016–2025)

Unknown

Free

Ten years of US earnings surprises — actual EPS and revenue versus consensus estimate at the time — for every USD-reporting US-listed issuer FMP indexes. 313,626 reported earnings events as a single gzipped CSV. Computed surprise columns (epssurprise, epssurprisepct, revenuesurprise, revenuesurprisepct) are derived in the build for convenience. Read with pandas.readcsv(path, compression='gzip', parsedates=['reportdate', 'lastupdated']) or duckdb.readcsv('earnings2016_2025.csv.gz'). Foundational dataset for: post-earnings-announcement-drift (PEAD) studies, beat / miss base-rate research, earnings-quality scoring, surprise-magnitude factor construction, and tracking which sectors / size buckets systematically beat or disappoint.

Dataset313,626 rowsA
FinanceEarningsEPS+5
1d ago

US Analyst Estimates Consensus — Quarterly, 10y (2016–2025)

Unknown

Free

Ten years of sell-side consensus quarterly estimates for 8,480 US-listed issuers, covering 175,834 quarter-periods. Each row carries low / avg / high consensus values across six fundamental lines — revenue, EBITDA, EBIT, net income, EPS, SG&A — plus analyst-coverage counts. Read with pandas.readcsv(path, compression='gzip', parsedates=['date']). Useful for: pairing with the Earnings Surprises listing for analyst-accuracy / drift research, tracking estimate revisions over time, building consensus-bias factors, training models on the dispersion (high − low) as a proxy for fundamental uncertainty.

Dataset175,834 rowsA
FinanceAnalystEstimates+3
1d ago

US Earnings Call Transcripts (Top 1,000 Companies, 2021–2025)

Unknown

Free

Five years of full-text earnings call transcripts from the top ~1,000 US public companies by reporting frequency (plus Tesla and Meta, which IPO'd more recently), covering Q1 2021 through Q4 2025. 19,677 transcripts across 1002 symbols, packaged as 10 gzipped JSONL files — one file per half-year (H1 = Q1+Q2, H2 = Q3+Q4) to stay under platform per-file size limits. Each line is one transcript with fields: symbol, fiscalyear, fiscalquarter, date, content (full prepared remarks + Q&A, speaker labels preserved). Sourced from Financial Modeling Prep. Read natively with pandas.readjson(path, lines=True, compression='gzip') or duckdb.readjson('file.jsonl.gz', lines=true) — concatenate all files for the full 5-year corpus. Industry-grade NLP corpus: ~25 KB per transcript average. Ideal for sentiment models, topic modeling, executive language change-detection, earnings-drift research keyed off transcript embedding similarity, and LLM fine-tuning on real corporate disclosure language.

Dataset19,677 rowsA
FinanceEarningsTranscripts+5
1d ago

US Analyst Activity — Ratings, Price Targets & Monthly Consensus (Top 3K, 5y)

Unknown

Free

Five years of sell-side analyst activity for the top 3,000 US-listed issuers, delivered as three complementary files: 85,777 individual upgrade/downgrade events, 73,147 individual price target changes, and 144,410 monthly aggregate strong-buy / buy / hold / sell / strong-sell counts. Each event row carries the analyst firm, previous and new grade or target, the stock price at the time of the call, and a link back to the originating news item. Read with pandas.readcsv(path, compression='gzip', parsedates=['publishedDate']). Useful for: analyst-momentum factors, upgrade/downgrade event studies, calibrating analyst accuracy by firm, building target-change feature stacks, and reconstructing consensus drift around earnings.

Dataset303,334 rowsA
FinanceAnalystRatings+4
1d ago

US ESG Scores — Disclosures, Ratings & Sector Benchmarks (Top 1,000)

Unknown

Free

Environmental, Social, and Governance scores for the top 1,000 US-listed issuers by market cap (approximating the Russell 1000). Three complementary files: (1) esgdisclosures — 68,097 per-filing E/S/G/composite scores across 978 companies, linked back to the originating SEC form. (2) esgratings — 18,099 per-fiscal-year ESG risk-rating letters (A–F scale) plus industry rank, across 967 companies. (3) esgsectorbenchmark — 6,640 sector-level annual averages for benchmarking. ESG data of this quality is typically paywalled by MSCI / Sustainalytics; this dataset gives you an open, reproducible alternative. Read with pandas.readcsv(path, compression='gzip', parsedates=['date']). Useful for: ESG-tilted portfolio construction, sustainability research, regulatory disclosure analysis, and training models that need ESG features.

Dataset92,836 rowsA
FinanceESGSustainability+3
1d ago

US Insider Trades — SEC Form 4 (Top ~1,000 Companies, 2021–2025)

Unknown

Free

Five years of SEC Form 4 insider transaction filings for the top 918 US-listed companies by reporting history, covering 2021-01-04 through 2026-09-04. 601,965 transactions as a single gzipped CSV — one row per filed transaction. Columns include the filing date, transaction date, reporting insider name and role, transaction type (open-market buy/sell, option exercise, RSU vest, gift, etc.), shares transacted, price per share, total shares owned after the transaction, and a direct link to the EDGAR filing. Sourced from Financial Modeling Prep (Form 4 mirror of EDGAR). Read with pandas.readcsv(path, compression='gzip', parsedates=['filingDate', 'transactionDate']) or duckdb.read_csv('file.csv.gz'). Useful for: tracking insider sentiment, building cluster-buying signals, identifying executives unloading positions ahead of weakness, screen for management vs. board behavior divergence.

Dataset601,965 rowsA
FinanceInsidersForm 4+5
1d ago

SEC XBRL Annual Fundamentals — 15 US-GAAP Concepts For Every Filer, Calendar Years 2009–2025

Unknown

Free

1,152,906 filer-concept-year facts for 16,041 SEC registrants across 15 US-GAAP concepts (revenue, cost of revenue, gross profit, operating income, net income, total assets, liabilities, shareholders' equity, cash, long-term debt, operating cash flow, capital expenditure, diluted EPS and shares outstanding) for calendar years 2009 to 2025, from the SEC's XBRL frames API as of 2026-09-06. Long format: one row per company, concept and calendar-year frame with CIK, entity name, state or country of incorporation, unit, period start and end, value and the accession number of the filing the fact came from, 250 frames fetched. Join to the SEC Company Tickers set on CIK.

Dataset1,152,906 rowsA
SECXbrlFundamentals+4
6h ago

US Key Ratios & Metrics — Quarterly, Top 3,000, 10y (2016–2026)

Unknown

Free

Ten years of pre-computed quarterly financial ratios and metrics for the top 3,000 US-listed issuers, covering 103,013 ratio-period rows across 2,973 companies and 102,983 key-metric rows across 2,973 companies. Two complementary files in one listing: (1) keyratiosquarterly — profitability margins, turnover ratios, liquidity, solvency, leverage, valuation multiples (P/E, P/B, P/S, P/FCF, EV/EBITDA), per-share book values, dividend metrics, and tax/interest burdens. (2) keymetricsquarterly — market cap, enterprise value, EV multiples, return-on-capital family (ROA, ROE, ROIC, ROCE), working-capital cycles (DSO, DPO, DIO, cash conversion cycle), and capex/R&D/SBC intensity. Saves buyers weeks of feature engineering on top of raw IS/BS/CFS statements. Read with pandas.readcsv(path, compression='gzip', parsedates=['date']). Useful for: fundamental factor models, multi-factor backtests, screening by financial health, training ML models on pre-computed financial features.

Dataset205,996 rowsA
FinanceRatiosMetrics+4
1d ago

US Stock News Archive — Top 1,500 Companies, 5y (2021–2026)

Unknown

Free

Five years of ticker-tagged news articles for the top 1,500 US-listed issuers by market cap, covering 1,453,949 articles across 1,453 companies. Each row carries publication timestamp, publisher, site domain, headline, article body snippet, canonical URL, and image URL — all linked back to the underlying ticker symbol. Split into one CSV.GZ file per calendar quarter (21 files) for partial-history loading. Read with pandas.readcsv(path, compression='gzip', parsedates=['publishedDate']). Useful for: training news-sentiment models, event-study backtests around news catalysts, building ticker-mention frequency time series, fine-tuning LLMs on financial-news prose, and reconstructing the news flow around earnings, M&A, regulatory events, and macro shocks.

Dataset1,453,949 rowsA
FinanceNewsSentiment+3
1d ago

Get this data into your agent

Point any MCP client (Claude, Cursor, your own agent) at https://dagentbase.com/api/mcp with an API key as the bearer token and it can search, preview and claim every listing above in one call. The REST API, the TypeScript and Python SDKs and per-listing markdown pages (/listing/{id}.md) cover everything else.

Related topics