How to get short interest as data
FINRA publishes short interest for every US stock twice a month, free and keyless. The lag, the sentinel values, and why it is not daily short volume.
FINRA publishes short interest for every exchange-listed and OTC stock twice a month, free and keyless, through its Query API and as downloadable files: one row per symbol per settlement date, with FINRA's own average volume and days to cover beside it. Each figure describes the 15th or the month's last settlement day and lands seven business days later. It counts open positions, so the daily short-volume files FINRA also publishes are a different number.
The short way
FINRA's Query API serves the whole dataset without a key. Ask for one settlement date — it is the partition key, and the API refuses to sort without it — and page through it:
import json, urllib.request
URL = "https://api.finra.org/data/group/otcMarket/name/consolidatedShortInterest"
def page(settlement_date, offset):
body = {"limit": 5000, "offset": offset,
"compareFilters": [{"compareType": "equal",
"fieldName": "settlementDate",
"fieldValue": settlement_date}]}
req = urllib.request.Request(URL, data=json.dumps(body).encode(), method="POST",
headers={"Accept": "application/json",
"Content-Type": "application/json"})
with urllib.request.urlopen(req) as r:
return int(r.headers["record-total"]), json.loads(r.read() or b"[]")
rows, offset, total = [], 0, 1
while offset < total:
total, batch = page("2026-09-15", offset)
rows += batch
offset += 5000
for r in rows:
if r["symbolCode"] == "GME":
print(r["settlementDate"], r["currentShortPositionQuantity"],
r["averageDailyVolumeQuantity"], r["daysToCoverQuantity"],
r["marketClassCode"], r["revisionFlag"], r["stockSplitFlag"])
Run on 4 October 2026, that is 22,595 rows for the 15 September settlement date: 9,559 OTC
securities and the rest exchange-listed, coded NNM, SC, NYSE, ARCA, BZX and AMEX. GameStop
shows 39,069,126 shares short against 9,105,968 shares of average daily volume, which FINRA turns
into 4.29 days to cover. For one symbol across time, filter on symbolCode instead: GameStop
returns 210 settlement dates from 29 December 2017 onward, unsorted.
Each row also carries the previous cycle's position, the change, a revisionFlag that reads R
when the prior cycle was corrected, and a stockSplitFlag that reads S when a split fell inside
the cycle. Those two flags are the most important fields in the file, and they are the ones a
quick join drops.
What the options are
The source. FINRA collects the figure from its member firms under Rule 4560 and publishes it for every exchange-listed and OTC equity, free, as an interactive grid, as downloadable files and through the API above. There is no card for FINRA in this catalogue because there is nothing to choose: it is the only place the official number originates, and everyone below is either redistributing it or replacing it.
The filing, beside your prices. Massive documents a short-interest endpoint on every Stocks plan, keyed by ticker and settlement date, with records from 29 December 2017 on the paid plans and two years of them on free Basic — the same start as FINRA's own API. If you already pull prices from it, this is one more call against the same key rather than a second integration.
The filing plus the daily files, joined for you. ChartExchange serves FINRA's semi-monthly figure, credited as such, beside the daily Reg SHO short-volume files, SEC fails-to-deliver and Interactive Brokers' borrow fee, over a REST API priced at $29.95, $49.50 and $89.65 a month for 60, 250 and 1,000 requests a minute. It also sells a daily short-interest series it does not explain anywhere public; treat that one as a separate product.
An estimate instead of the filing. ORTEX models daily and intraday short interest from securities-lending inventory and shows the official figure beside it. Its API runs on credits from $49 a month for single-stock endpoints; bulk and universe endpoints start on the $149 Quant tier, and redistribution only on contact-priced Enterprise. S3 goes further and presents its custody-and-prime-broker figure as revised short interest, a replacement for FINRA's rather than a supplement, delivered by contract through terminals, cloud marketplaces and SFTP. Fintel carries short data among ownership and insider pages for thirty-odd markets, with an API whose price is not published. The rest of the shelf is in insider, 13F and congressional trade trackers.
Where this breaks
A figure is a snapshot of one day, two weeks old when you get it. Positions are measured on two settlement dates a month — the 15th, or the business day before it, and the last settlement day of the month. Firms report by 6pm Eastern on the second business day after, and FINRA publishes on the seventh. FINRA's 2026 calendar puts the 15 September figures out on 24 September and the 30 September figures on 9 October. Anything that happened between snapshots is invisible, and anything you backtest has to be keyed on the publication date, not the settlement date it describes — otherwise the model trades on a number that did not exist yet.
Settled positions only. Rule 4560 counts gross short positions from short sales that have settled or reached settlement date by the close of the designated day. Under the one-day settlement cycle, a short sale executed on the settlement date itself is in the next cycle, not this one. The rule asks for gross positions per account, so a firm long in one account and short in another reports the short.
Short interest is not short volume. FINRA also publishes a daily short-sale volume file, and the two are routinely printed under one headline. On 15 September 2026 that file shows GameStop with 1,281,008 shares sold short out of 2,042,372 shares of volume — 63% — while short interest on the same date was 39 million shares. One is a flow of trades on a day, most of it market makers who are flat by the close; the other is a stock of open positions. The volume file also covers only trades reported to FINRA's facilities, not exchange prints, so a percentage computed from it is a share of off-exchange volume. Its quantities carry six decimal places, because fractional shares are reported too. Short interest sets out the difference in full.
Days to cover depends on whose volume. FINRA's averageDailyVolumeQuantity is its own figure
over the reporting cycle, roughly ten trading days, and excludes non-media trades. A vendor
dividing the same short position by thirty- or ninety-day volume gets a different and equally
correct number. Days to cover works through how far apart they land.
There are sentinels in the numbers. Where FINRA has no volume, averageDailyVolumeQuantity
is 0 and days to cover reads 999.99: 3,158 rows on 15 September, and 4,004 rows in all at that
value. Where there is no previous position, changePercent reads 100, on 516 rows. Average
either column without filtering them and the mean is a property of the placeholder.
A correction replaces the past without telling you when. FINRA's own page says that when it
revises a figure a revision flag appears, and that only the most recent data is made available.
On 15 September, 17 rows carried R. A series you stored last month and a series you download
today can disagree, and there is no archive of the version you first saw — so store what you
fetched, with the date you fetched it.
Splits break the series twice. A split multiplies the short position, and changePercent is
computed against the unadjusted previous figure, so the cycle containing a split shows a jump that
is not a change in positioning; 54 rows on 15 September carried the S flag. The same problem
hits any join to an unadjusted price series — see corporate action.
The metadata and the data disagree. The API's own dataset description still calls this OTC short interest with one rolling year online; the catalogue page says all equities and five rolling years; the data itself returned NYSE and Nasdaq symbols back to 2017 on the day this was written. Plan around the catalogue page, check the earliest date you actually receive, and do not assume history past five years will stay.
The SEC's new short data is postponed, not live. Rule 13f-2 and Form SHO, under which large managers would report short positions to the SEC and the SEC would publish them aggregated per security, and Rule 10c-1a, which would make securities-lending data public, were both deferred after a court remand. The SEC's December 2025 order exempts Form SHO reporting until 2 January 2028 and pushes public dissemination of the lending data to 29 March 2029. Until then FINRA's twice-monthly file is the only official series, and every daily figure on sale is somebody's model.
If you outgrow this
When twice a month is too slow, the choice is between estimates, not between sources: ORTEX for a self-serve API, S3 for an institutional feed. Both are modelled from lending data and neither is the official number. S3 says its own series is restated, so a backtest over it can see figures that were not available on the day.
When the question is the cost of shorting rather than how much is short, that is borrow fee and availability, a different dataset. iBorrowDesk republishes Interactive Brokers' figures free, with a year of history, and ChartExchange serves the same broker's fee over its API — one broker's book in both cases, not a market-wide rate.
When the question is who is short, no public US dataset answers it, and Form SHO will not either when it arrives: the SEC would publish it per security, aggregated across managers, not per holder.
The tools that do this
In the order this page recommends trying them. Paid placement does not affect this order.
Massive
FINRA's twice-monthly figure as a REST endpoint on every Stocks plan, records from December 2017 on the paid ones, beside the prices you are already pulling.
Full-tick US equities, options and futures from a direct exchange feed.
$29/moFree tier
ChartExchange
The FINRA filing, the daily short-volume files and SEC fails-to-deliver over one REST API, from $29.95 a month at 60 requests a minute.
The official short interest, IBKR's borrow fee and SEC fails, sold feature by feature.
$4.95/moFree tier
ORTEX
A daily and intraday estimate modelled from securities lending, beside the official delayed figure. API from $49 a month; redistribution on Enterprise.
Short interest estimated daily from the lending pool, with cost to borrow beside it.
$49/moFree tier
S3 Short Interest Data
Revised short interest built from custody and prime-broker data, updated hourly by feed, and restated afterwards. Contract pricing only.
Revised short interest and three-sided borrow rates, delivered by contract only.
—
FAQ
Is FINRA short interest data free?
Yes. FINRA's Query API answers the consolidated short interest dataset without a key or an account, and the same figures are on its website as a grid and as downloadable files. The API's documented window is five rolling years; on 4 October 2026 it returned records back to December 2017. One settlement date is about 22,600 rows, 9,559 of them OTC.
How old is the latest short interest figure?
At least seven business days, and up to about three weeks. Positions are measured on the 15th and on the last settlement day of the month, firms report by 6pm Eastern two business days later, and FINRA publishes on the seventh business day. The 15 September 2026 figures appeared on 24 September; the 30 September ones are due on 9 October.
Why does days to cover differ between sites?
Because the denominator is a choice. FINRA divides short interest by average daily volume over its own reporting cycle, roughly ten trading days, excluding non-media trades. Vendors use ten-, thirty- or ninety-day windows, or a lending-based estimate instead of the filing. Where FINRA has no volume it prints 999.99, which is a placeholder rather than a ratio.
Sources
- Equity Short Interest Data — Financial Industry Regulatory Authority, read
- Short Interest Reporting — reporting and publication dates — Financial Industry Regulatory Authority, read
- FINRA Rule 4560 — Short-Interest Reporting — Financial Industry Regulatory Authority, read
- Short Sale Volume Data — Financial Industry Regulatory Authority, read
- Order Granting Temporary Exemptive Relief from Rule 13f-2, Form SHO and Rule 10c-1a (90 FR 56813) — Securities and Exchange Commission,
- Short Interest — Stocks REST API — Massive, read
The catalogue next door
This page names a handful of cards. The rest of them are in Insider, 13F & Congressional Trade Trackers, each filled in against the same schema, with the fields to narrow it yourself.
Last updated . Corrected in place: this is a reference page, not a dated post.