Stock Short Interest Scraper (US Tickers, History) avatar

Stock Short Interest Scraper (US Tickers, History)

Pricing

from $11.34 / 1,000 short interest records

Go to Apify Store
Stock Short Interest Scraper (US Tickers, History)

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

Scrapers Lat

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

6 days ago

Last modified

Share

Stock Short Interest Scraper (US Tickers, History)

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

Platform Coverage Output Billing

Table of contents

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

NameTypeRequiredDescriptionExample
tickersarray of stringsyesUS stock tickers to pull short interest for. Works for Nasdaq and NYSE listed stocks.["AAPL", "TSLA", "GME"]
historyPeriodsintegernoHow many recent bi-monthly settlement periods to include in the history series (newest first). Default 12, max 60.12
maxResultsintegernoMaximum number of stock records to collect across the run. Free plans are capped at 10.10
aiShortSignalbooleannoAttach 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

NameTypeDescription
tickerstringStock ticker symbol
companyNamestringCompany name
exchangestringListing exchange code, e.g. NASDAQ-GS or NYSE
stockTypestringSecurity type, e.g. Common Stock
lastSalePricenumberMost recent quoted share price in USD
settlementDatestringSettlement date of the latest reported period (MM/DD/YYYY)
sharesShortnumberShares sold short at the latest settlement date
avgDailyVolumenumberAverage daily share volume for the latest period
daysToCovernumberDays to cover (short interest ratio) for the latest period
priorSettlementDatestringSettlement date of the prior reported period
priorSharesShortnumberShares short at the prior settlement date
changeVsPriornumberChange in shares short versus the prior period
pctChangeVsPriornumberPercent change in shares short versus the prior period
historyCountnumberNumber of periods included in the history series
historyarrayFull short-interest history, newest first. Each item has settlementDate, sharesShort, avgDailyVolume and daysToCover.
aiSqueezeRiskstringAI add-on: squeeze-risk rating (low, moderate, elevated, high)
aiTrendstringAI add-on: short-interest trend (rising, falling, flat)
aiInterpretationstringAI add-on: one-line interpretation
urlstringPublic short-interest page for the ticker
sourcestringData source
observedAtstringISO timestamp when the record was collected
errorstringError 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.