# 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.

*https://stockmarketstack.com/how-to/get-short-interest-as-data · next to Insider, 13F & Congressional Trade Trackers*

**Answer:** 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 tools that do this

*In the order this page recommends trying them. Paid placement does not affect this order.*

1. [Massive](https://stockmarketstack.com/tools/massive.md) — 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.
2. [ChartExchange](https://stockmarketstack.com/tools/chartexchange.md) — 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.
3. [ORTEX](https://stockmarketstack.com/tools/ortex.md) — A daily and intraday estimate modelled from securities lending, beside the official delayed figure. API from $49 a month; redistribution on Enterprise.
4. [S3 Short Interest Data](https://stockmarketstack.com/tools/s3-partners.md) — Revised short interest built from custody and prime-broker data, updated hourly by feed, and restated afterwards. Contract pricing only.

## 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:

```python
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](https://stockmarketstack.com/tools/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](https://stockmarketstack.com/tools/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](https://stockmarketstack.com/tools/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](https://stockmarketstack.com/tools/s3-partners)
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](https://stockmarketstack.com/tools/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](https://stockmarketstack.com/categories/insider-13f-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](https://stockmarketstack.com/glossary/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](https://stockmarketstack.com/glossary/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](https://stockmarketstack.com/glossary/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](https://stockmarketstack.com/tools/ortex) for a self-serve API, [S3](https://stockmarketstack.com/tools/s3-partners) 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](https://stockmarketstack.com/tools/iborrowdesk) republishes Interactive
Brokers' figures free, with a year of history, and [ChartExchange](https://stockmarketstack.com/tools/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.

## 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

1. [Equity Short Interest Data](https://www.finra.org/finra-data/browse-catalog/equity-short-interest) — Financial Industry Regulatory Authority, read 2026-10-04
2. [Short Interest Reporting — reporting and publication dates](https://www.finra.org/filing-reporting/regulatory-filing-systems/short-interest) — Financial Industry Regulatory Authority, read 2026-10-04
3. [FINRA Rule 4560 — Short-Interest Reporting](https://www.finra.org/rules-guidance/rulebooks/finra-rules/4560) — Financial Industry Regulatory Authority, read 2026-10-04
4. [Short Sale Volume Data](https://www.finra.org/finra-data/browse-catalog/short-sale-volume-data) — Financial Industry Regulatory Authority, read 2026-10-04
5. [Order Granting Temporary Exemptive Relief from Rule 13f-2, Form SHO and Rule 10c-1a (90 FR 56813)](https://www.federalregister.gov/documents/2025/12/08/2025-22158/order-granting-temporary-exemptive-relief-pursuant-to-sections-13f3-and-36a1-of-the-securities) — Securities and Exchange Commission, 2025-12-08
6. [Short Interest — Stocks REST API](https://massive.com/docs/rest/stocks/fundamentals/short-interest) — Massive, read 2026-10-04

*Last updated 2026-10-04. A reference page, corrected in place — not a dated post.*
