Skip to content

Help

Most questions about this data are really questions about how disclosure works. Start here — and if the answer isn't on this page, say so and we'll fix the page.

Why a trade you see today may be weeks old

Nothing here is a live feed of the market. Every row is a disclosure document, and the law decides when that document has to exist. The two sources are not on the same clock.

SEC Form 42 business days

Corporate insiders. Officers, directors and large shareholders file almost immediately.

Congressional PTR45 days

House & Senate members. The STOCK Act gives members up to 45 days. A trade can be six weeks old the first time anyone outside Congress sees it.

That gap is the statutory deadline, not our ingestion — we publish within minutes of a filing appearing. Coverage & freshness shows how current each source is right now.

Reading the data

What the numbers on a row do and don't mean.

Why is an amount shown as a range instead of a number?

Congress does not disclose exact amounts. Members report each trade in a bracket — $1,001–$15,000, $15,001–$50,000, and so on — so a range is the most precise figure that exists.

Corporate insiders filing SEC Form 4 do report share counts and prices, so those rows show an exact value.

What does the LATE badge mean?

The STOCK Act requires a member of Congress to disclose a trade within 45 days. LATE marks a trade whose disclosure date is more than 45 days after the transaction date.

It is a factual comparison of two dates on the filing, not an accusation — late filings are common and are usually amended paperwork rather than anything deliberate.

Why does a row show a name like “US Treasury Note” instead of a ticker?

Not every disclosed holding is a listed stock. Treasuries, municipal and corporate bonds, private funds, LPs and crypto have no ticker symbol at all, so the filing's own description is the only identifier there is.

These rows carry an asset-class label instead — Bond, Crypto, Fund — and they are roughly one in seven congressional trades. They used to be hidden entirely, which quietly understated how much of a portfolio you were seeing.

Is the data ever wrong?

Sometimes. Filings are PDFs, often scanned, and the parsing is imperfect. A filing we cannot parse confidently is held back rather than published, and known-implausible values are flagged and excluded.

Always check the original filing before acting on anything. Every trade detail page links to its source document.

See parse rates and what's held back

Why is Senate data so much older than House data?

The Senate's electronic filing system does not currently give us reliable automated access, so Senate coverage lags well behind the House and SEC feeds.

The coverage page reports the real lag for every source, updated continuously rather than by hand.

Check current source lag

Membership & billing

What's free, what's paid, and how to change it.

What can I see without paying?

A free account sees trades disclosed between 48 hours and 90 days ago, and can reveal 3 individual trades in full.

A membership removes both limits: filings appear as soon as they're ingested, and the full history is searchable.

Compare plans

What does a membership cost?

The Harpoonist membership is $20 a month, or $200 a year. The Developer API is a separate $39 a month, or $390 a year. Both start with a 7-day free trial.

Pricing

Where are my invoices?

Every charge appears under Billing in your settings, with a receipt you can download. Plan changes, card updates and cancellation are handled in the Stripe billing portal, reachable from the same place.

Billing settings

What happens if I cancel?

You keep member access until the end of the period you've already paid for, then the account reverts to the free tier. Nothing is deleted — watchlists and alert rules are still there if you come back.

Alerts

Getting told when something happens.

What can I get alerted on?

Four kinds of rule: trades matching a filter (ticker, minimum amount), a specific filer's activity, unusual options flow, and cluster buying — several different filers trading the same ticker in the same direction within a window.

Each rule delivers to a webhook, a Discord channel, or your email address. You can have up to 20 rules.

Your alert rules

My alert never fired. What do I check?

Recent activity on the alerts page shows every delivery attempt, including failures. A rule that fired but could not deliver shows there with the error.

Use Send test on the rule to push a message through the real channel immediately — that separates “the rule never matched” from “the channel is broken”.

Check recent activity

Can I get one email a day instead of one per trade?

Yes. Turn on the daily digest in your preferences and you'll get a single summary of the previous day's firings instead of individual messages.

Preferences

API & data export

Programmatic access.

How do I get an API key?

API access is a separate subscription from the membership. Once it's active you can mint keys under API keys in your settings — up to 5 active at a time. A key is shown once and cannot be recovered, so store it when you create it.

API documentation

What are the limits?

50,000 requests a month, and 120 requests a minute per key by default. Every response carries the remaining quota in its headers, and exceeding the rate limit returns a 429 with a Retry-After.

Endpoints and rate limits

Can I download the data in bulk?

Yes. The trades explorer has a download button for the current filter, and the API exposes a bulk NDJSON export of everything matching a query.

Trades explorer

Account & security

Signing in and keeping the account yours.

How do I turn on two-factor authentication?

Under Security in your settings. Scan the QR code with any authenticator app, then enter a code to confirm it works — two-factor only switches on once that code verifies.

Save the backup codes shown during setup. They are the only way back in if you lose your phone, and they are displayed exactly once.

Security settings

I signed up with Google and can't turn on two-factor.

Two-factor enrolment confirms your password, and a Google sign-in doesn't create one. Set a password on the account and enrolment will work — your Google sign-in keeps working either way.

How do I change my email address?

Change it under Profile in your settings. A confirmation link goes to the new address, and the change only takes effect once you click it.

Profile settings

How do I delete my account?

Under Danger in your settings. Deletion cancels any active subscription first, then removes the account and its data. It cannot be undone.

Delete account

Still stuck?

Email support@harpoonist.com. Include the trade or filer you were looking at — it makes an answer much faster, and it tells us which part of this page to rewrite.

Harpoonist reports public disclosure filings. It is not investment advice, and nothing here is a recommendation to buy or sell anything.