The Best SEC Filings API for Quants: How to Actually Choose One

I am not going to rank other people's products. I am going to give you the four tests I wish somebody had given me, so you can rank them yourself, including against this one.

At a glance

Prices and features on the right-hand column change, and this page does not — check their site before you decide anything on it. The rows about method are the ones that stay true.

To Scale compared with the alternatives
  To Scale the alternatives
Resolves duplicate XBRL tags Yes — A = L + E Ask. Most do not document it
As-reported, not restated Yes, with filing dates Ask — many silently serve restated
Point-in-time queries Yes — as-of respects filing dates Ask
Publishes an accuracy figure No — the method is published instead Rare
Free tier without a call Yes Varies
Coverage 6,201 SEC filers, 1.8 million facts Ask — and ask whether it is SEC-only
Latency ~300 ms typical (measured 292–364 ms, Sep 2026) Ask, and measure it yourself
Price Free · $49/mo · $490/yr · $79.99 one-off Often quote-based
Bulk download $79.99, one CSV Varies

Why this is harder than it looks

Fundamental data feels like a solved problem. The filings are public, the format is machine-readable, and there are a dozen APIs. So the natural assumption is that they all return the same numbers and you are choosing on price and ergonomics.

They do not return the same numbers. I checked.

The reason is the duplicate-tag problem. XBRL lets a filer attach dimensions to a fact: this figure, but for this segment, this subsidiary, this geography. JPMorgan tags Assets twenty-three separate times in a single filing. Every instance is valid. The consolidated one, the number on the face of the balance sheet, is marked only by having no dimensions on it, which means the correct answer is identified by an absence, the easiest thing in the world for a parser to miss.

Taking the first match agrees with the consolidated figure about most of the time. One filing in five is wrong, silently, by whatever the largest segment happens to be.

The three questions that actually separate providers

How do you pick which tag is the right one? If the answer is vague, that is your answer. This is the entire difficulty of the category and a provider who has solved it will tell you how. To Scale uses the accounting identity: keep the combination of assets, liabilities and equity that balances, because the consolidated figures balance against each other and a segment's do not.

As-reported or restated? These are different products and the difference decides whether you can backtest. As-reported is what the company said at the time. Restated is what they said later. If a provider serves restated figures with no filing date, every backtest you run on it has lookahead bias baked in and no way to detect it.

What happens when the data is missing or wrong? A filer that does not break out receivables has not reported zero receivables. If your provider returns 0, your ratios are wrong and nothing tells you. And when a filing genuinely does not balance (it happens), you want to be told, not handed a silently adjusted number.

What To Scale is, plainly

One reconciled dataset: 6,201 SEC filers, 1.8 million as-reported facts, every one checked against A = L + E before it is stored. Every valid filing reconciles against that test, and the exceptions are flagged rather than hidden. Free tier with no card, $49 a month for 10,000 calls, or $79.99 once for the whole thing as a CSV.

I built it because I wanted this data for something else and could not find a source I trusted enough to build on. I am 17. That is a real thing to weigh: there is no SLA and no support desk, and if that matters to you, buy from somebody who can sign a contract. What there is instead is a method written down in public and a free tier so you can check it yourself against a filing you already know.

When to choose each

Choose To Scale

If the number has to be right.

  • Test 1: the JPMorgan test. Ask for JPM's total assets and check it against the 10-Q. If you get a segment instead of the consolidated figure, the provider is not resolving duplicate tags, and everything downstream inherits that.
  • Test 2: the restatement test. Find a company that revised a figure. Ask for the original period. If you get the revised number with no filing date attached, you cannot backtest with it You will be trading on information that did not exist yet.
  • Test 3: the identity test. Pull assets, liabilities and equity for fifty companies and check that A = L + E on each. Any provider selecting tags badly will fail some of them, and the failures tell you the shape of their error.
  • Test 4: the missing-data test. Find a filer that does not break out receivables. A good API says so. A bad one returns zero, and a zero is a claim.
Choose the alternatives

If any of these is you.

  • You need more than fundamentals. Prices, options, news, alternative data. A single-purpose API is the wrong shape.
  • You need non-SEC coverage.
  • You need an SLA and vendor diligence paperwork.
  • You already have a reconciler you trust. Then you want raw filing access, and there are good products for that.

The method, written out

These pages compare on METHOD because method is the part that stays true. Both of these are the method itself rather than an argument about it, so you can judge the claim rather than take it.