Stock Short Interest Scraper (US Tickers, History)
Pricing
from $11.34 / 1,000 short interest records
Stock Short Interest Scraper (US Tickers, History)
Scrape bi-monthly short interest for US stocks (Nasdaq + NYSE) by ticker: shares short, days to cover, average daily volume, change vs prior period and the full reported history. Export to JSON, CSV or Excel.
Pricing
from $11.34 / 1,000 short interest records
Rating
0.0
(0)
Developer
Scrapers Lat
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
6 days ago
Last modified
Categories
Share
Stock Short Interest Scraper (US Tickers, History)
Here is one real result, with every field the actor returns:
{"ticker": "AAPL","companyName": "Apple Inc. Common Stock","exchange": "NASDAQ-GS","stockType": "Common Stock","lastSalePrice": 316.5101,"settlementDate": "07/31/2026","sharesShort": 141606163,"avgDailyVolume": 58400983,"daysToCover": 2.42,"priorSettlementDate": "07/15/2026","priorSharesShort": 146547784,"changeVsPrior": -4941621,"pctChangeVsPrior": -3.37,"historyCount": 12,"history": [{ "settlementDate": "07/31/2026", "sharesShort": 141606163, "avgDailyVolume": 58400983, "daysToCover": 2.42 },{ "settlementDate": "07/15/2026", "sharesShort": 146547784, "avgDailyVolume": 47952794, "daysToCover": 3.06 },{ "settlementDate": "06/30/2026", "sharesShort": 140526320, "avgDailyVolume": 81121306, "daysToCover": 1.73 },{ "settlementDate": "06/15/2026", "sharesShort": 144248476, "avgDailyVolume": 52343843, "daysToCover": 2.76 },{ "settlementDate": "05/29/2026", "sharesShort": 155886024, "avgDailyVolume": 46064146, "daysToCover": 3.38 },{ "settlementDate": "05/15/2026", "sharesShort": 138782718, "avgDailyVolume": 50565316, "daysToCover": 2.74 }],"aiSqueezeRisk": null,"aiTrend": null,"aiInterpretation": null,"url": "https://www.nasdaq.com/market-activity/stocks/aapl/short-interest","source": "nasdaq.com","observedAt": "2026-08-20T14:40:00.000Z","error": null}
The most complete short interest scraper available for US equities. It returns every field the official bi-monthly short interest report exposes for a ticker (shares short, average daily volume, days to cover, settlement date), plus derived fields the raw report does not give you (change and percent change versus the prior period), and the full reported history as one clean time series. Works for both Nasdaq and NYSE listed stocks, so you get consolidated coverage in a single run.
📥 Input · 📤 Output · 💰 Pricing · ▶️ Examples
Table of contents
- What it does
- Quickstart
- Input reference
- Output reference
- Example output record
- Run via API and CLI
- Fetch results
- Billing and limits
- FAQ and troubleshooting
- More scrapers at scrapers.lat
What it does
Give it a list of US stock tickers and it returns the reported short interest for each one: the latest bi-monthly settlement period plus the full history series. For every ticker you get:
- Shares sold short at the most recent settlement date
- Average daily share volume for that period
- Days to cover (the short interest ratio)
- The change and percent change in shares short versus the prior period
- The complete reported history as an array of periods, newest first, so you can chart the trend
- Company name, listing exchange, security type and the most recent quoted price
- An optional AI short-squeeze signal (squeeze risk, trend label, one-line interpretation)
Short interest is published roughly twice a month, so the history lets you track how bearish positioning is building or unwinding on a name over time.
Quickstart
Real input example:
{"tickers": ["AAPL", "TSLA", "GME"],"historyPeriods": 12,"maxResults": 10}
Run it and you get one record per ticker, each with the latest short interest and the history series. Add "aiShortSignal": true (paid plans) to attach an AI read of squeeze risk and trend.
Input reference
| Name | Type | Required | Description | Example |
|---|---|---|---|---|
tickers | array of strings | yes | US stock tickers to pull short interest for. Works for Nasdaq and NYSE listed stocks. | ["AAPL", "TSLA", "GME"] |
historyPeriods | integer | no | How many recent bi-monthly settlement periods to include in the history series (newest first). Default 12, max 60. | 12 |
maxResults | integer | no | Maximum number of stock records to collect across the run. Free plans are capped at 10. | 10 |
aiShortSignal | boolean | no | Attach an AI squeeze-risk rating, trend label and one-line interpretation. Off by default, paid plans only, charged only on a usable result. | false |
Output reference
| Name | Type | Description |
|---|---|---|
ticker | string | Stock ticker symbol |
companyName | string | Company name |
exchange | string | Listing exchange code, e.g. NASDAQ-GS or NYSE |
stockType | string | Security type, e.g. Common Stock |
lastSalePrice | number | Most recent quoted share price in USD |
settlementDate | string | Settlement date of the latest reported period (MM/DD/YYYY) |
sharesShort | number | Shares sold short at the latest settlement date |
avgDailyVolume | number | Average daily share volume for the latest period |
daysToCover | number | Days to cover (short interest ratio) for the latest period |
priorSettlementDate | string | Settlement date of the prior reported period |
priorSharesShort | number | Shares short at the prior settlement date |
changeVsPrior | number | Change in shares short versus the prior period |
pctChangeVsPrior | number | Percent change in shares short versus the prior period |
historyCount | number | Number of periods included in the history series |
history | array | Full short-interest history, newest first. Each item has settlementDate, sharesShort, avgDailyVolume and daysToCover. |
aiSqueezeRisk | string | AI add-on: squeeze-risk rating (low, moderate, elevated, high) |
aiTrend | string | AI add-on: short-interest trend (rising, falling, flat) |
aiInterpretation | string | AI add-on: one-line interpretation |
url | string | Public short-interest page for the ticker |
source | string | Data source |
observedAt | string | ISO timestamp when the record was collected |
error | string | Error message for a failed ticker (null on success) |
Example output record
This GameStop record is served from the consolidated FINRA short-interest dataset, which the actor uses automatically for NYSE listed tickers:
{"ticker": "GME","companyName": "GameStop Corp. Class A","exchange": "NYSE","stockType": null,"lastSalePrice": null,"settlementDate": "07/31/2026","sharesShort": 53736062,"avgDailyVolume": 3150012,"daysToCover": 17.06,"priorSettlementDate": "07/15/2026","priorSharesShort": 55426276,"changeVsPrior": -1690214,"pctChangeVsPrior": -3.05,"historyCount": 12,"aiSqueezeRisk": null,"aiTrend": null,"aiInterpretation": null,"source": "finra.org","observedAt": "2026-08-20T14:45:00.000Z","error": null}
Run via API and CLI
Start a run with the Apify API:
curl -X POST "https://api.apify.com/v2/acts/scrapers_lat~stock-short-interest-scraper/runs?token=YOUR_TOKEN" \-H "Content-Type: application/json" \-d '{"tickers":["AAPL","TSLA","GME"],"historyPeriods":12,"maxResults":10}'
Or with the Apify CLI:
apify call scrapers_lat/stock-short-interest-scraper \--input '{"tickers":["AAPL","TSLA","GME"],"historyPeriods":12,"maxResults":10}'
Fetch results
Read the dataset items once the run finishes:
$curl "https://api.apify.com/v2/actor-runs/RUN_ID/dataset/items?token=YOUR_TOKEN&clean=true&format=json"
Swap format=json for format=csv or format=xlsx to export to CSV or Excel.
Billing and limits
- Pay per result. You are charged for the actor start and for each ticker record returned.
- The AI short-squeeze signal is an optional add-on, off by default, and is charged only when a usable signal is returned.
- Empty and failed runs are never charged. Unknown or delisted tickers return an error row with no charge.
- Free Apify plans are capped at 10 records per run, and paid add-ons are disabled on free plans.
- The actor respects your spend limit: once your configured maximum charge is reached it stops returning and charging further records.
FAQ and troubleshooting
Which stocks are covered? US equities listed on Nasdaq and NYSE. Provide the plain ticker symbol.
How often is short interest updated? Short interest is reported on a bi-monthly schedule (roughly twice a month), a few business days after each settlement date. The history series reflects every reported period available.
Why is a ticker returning an error row? The symbol is likely unknown, delisted, or not a reporting equity. Error rows are never charged.
Can I get more history? Yes. Raise historyPeriods up to 60 to include more past settlement periods in the series.
What is days to cover? The short interest ratio: shares short divided by average daily volume, an estimate of how many trading days it would take to buy back all short positions.
More scrapers at scrapers.lat
Building market and finance datasets? Pair this with our Finviz stock fundamentals scraper, European net short positions scraper, and other finance and company data actors on scrapers.lat.
This is an independent scraper of public data and is not affiliated with, endorsed by, or connected to Nasdaq, NYSE, FINRA, or any exchange.
