Yahoo Finance Earnings Calendar Scraper
Pricing
from $1.99 / 1,000 search results
Yahoo Finance Earnings Calendar Scraper
Scrapes Yahoo Finance earnings calendar for upcoming and past earnings reports including EPS estimates, reported EPS, surprise percentage, and market cap.
Pricing
from $1.99 / 1,000 search results
Rating
0.0
(0)
Developer
Search API
Maintained by CommunityActor stats
0
Bookmarked
3
Total users
2
Monthly active users
12 days ago
Last modified
Categories
Security
Limited permissionsShare
Retrieve public Yahoo Finance earnings-calendar events for one date or a date range. Filter by ticker, company, earnings timing, reporting status, EPS estimates, or surprise percentage, then sort and limit the returned events.
Input
| Field | Type | Required | Default | Description |
|---|---|---|---|---|
mode | string | No | dateRange | singleDate collects fromDate; dateRange collects the inclusive date range. |
fromDate | string | No | — | Start date in YYYY-MM-DD; also used as the only date in singleDate mode. |
toDate | string | No | — | Inclusive end date in YYYY-MM-DD; ranges can span up to 31 days. |
symbols | string array | No | [] | Optional exact Yahoo ticker filter, such as AAPL or BRK-B. |
companyQuery | string | No | — | Case-insensitive company-name text filter. |
timeTypes | string array | No | [] | Filter by timing codes such as BMO, AMC, TAS, or TNS; empty means all. |
reportStatus | string | No | all | Keep all events, reported events with EPS, or upcoming events. |
minEpsEstimate | number | No | — | Minimum source EPS estimate. |
maxEpsEstimate | number | No | — | Maximum source EPS estimate. |
minSurprisePercent | number | No | — | Minimum reported surprise percentage. |
maxSurprisePercent | number | No | — | Maximum reported surprise percentage. |
sortBy | string | No | sourceRank | Sort by Yahoo rank, symbol, date, EPS estimate, or surprise percentage. |
fairPerDate | boolean | No | true | Interleave dates so busy dates do not consume the global item limit. |
maxItems | integer | No | 100 | Maximum records in the final dataset. |
maxItemsPerDate | integer | No | 1000 | Maximum matching records retained from each date. |
maxConcurrency | integer | No | 8 | Maximum concurrent one-day requests. |
maxRequestRetries | integer | No | 2 | Bounded retries for temporary network/server failures. |
requestTimeoutSecs | integer | No | 30 | Timeout for each Yahoo API request. |
language | string | No | en-US | Yahoo locale. |
region | string | No | US | Two-letter uppercase Yahoo region code. |
proxyConfiguration | object | No | Direct access | Optional Apify Residential or custom HTTP proxy settings. GOOGLE_SERP is unsupported. |
Example:
{"mode": "dateRange","fromDate": "2025-01-15","toDate": "2025-01-20","symbols": ["AAPL", "MSFT"],"maxItems": 100}
See .actor/input_schema.json for the full accepted input schema.
Output
Every dataset row follows .actor/dataset_schema.json. EPS values are numeric when Yahoo supplies them. Optional fields are omitted when unavailable; the Actor does not fill missing values with nulls, empty strings, or dashes.
How to use
Set a date or date range, add any filters, then run the Actor from the Apify Input tab. The events appear in the Output dataset. The same fields can be sent as JSON through the Apify API.
Reliability and limits
The Actor requests Yahoo's current structured calendar response one date at a time, validates it before parsing, and writes the final dataset atomically. Direct HTTP is the default; authorized Apify Residential and custom HTTP proxies are supported. Non-200, non-JSON, malformed, redirected, oversized, changed, or truncated payloads fail closed without partial dataset writes.
Yahoo currently supplies at most 1,000 structured events per requested day. If it reports a larger total than it returns, the Actor fails rather than claiming complete coverage. Available events and optional EPS fields vary by date. A small number of source events without a company name are excluded rather than assigned a fabricated name.