DataSignals for Google Sheets

Free Google Sheets formulas for SEC insider clusters, congressional trades, 13D/G stakes, Form D raises, FDA actions and hiring signals. =DS_EVENTS(\"NVDA\") and the filings are in your sheet. No add-on store, no code.

Filing events in a spreadsheet formula. Type =DS_EVENTS("NVDA") and you get every insider cluster, 8-K, 13D/G stake, congressional trade and hiring signal we hold for Nvidia: one row per event, with a date, a score and a link to the original filing. No Python, no cron job, no add-on store.

Other data vendors give you prices and fundamentals in Sheets. This is the layer nobody else puts there: SEC Form 4 insider buying clusters, Form 144 sale notices, 13D/G activist stakes, 13F holdings, Form D private raises, FDA actions, trial readouts, NIH grants, federal contract awards, House trading disclosures and hiring signals from company career sites. Twelve streams, one key, one formula family.

Get it in two minutes

  1. Add the script to a sheet. Open a new or existing Google Sheet, choose Extensions > Apps Script, paste the two script files and the sidebar from the source, save, and reload the sheet. The DataSignals menu appears on the next open.
  2. Get a key. Open the DataSignals menu and choose Get a free key, or request one here. The key arrives by e-mail.
  3. Paste the key. DataSignals > Set API key. It is stored on your Google account, not in the sheet, so sharing the sheet never shares your key.

Then type a formula such as =DS_INSIDERS("NVDA") and watch the table build. Tables refresh every 10 minutes; DataSignals > Refresh forces it. A ready-made template sheet you can copy is on its way; this page will link to it as soon as it is published.

The formulas

Formula What you get
=DS_EVENTS("NVDA") Every stream for one ticker, last 90 days
=DS_EVENTS("NVDA", "material_event", 30) One stream, your own window
=DS_INSIDERS("AAPL", 180) Form 4 insider buying clusters: how many insiders, how much, and whether it was open-market conviction or a mechanical plan
=DS_CONGRESS("NVDA") House members who traded the ticker, with the amount band and how late they filed
=DS_CONGRESS("Pelosi", 365) The same, by member name
=DS_RAISES(14) Form D private raises of the last two weeks, biggest first per day
=DS_HIRING("TSLA") Net roles opened on the company career site against its own baseline
=DS_HEALTH() How fresh each stream is. Works without a key

Every table has the same seven columns: Date, Stream, Ticker, Company, Title, Score, Source URL. The score is the same 0 to 100 the API returns, and every row links back to the filing at the SEC, openFDA, USAspending or the House Clerk so you can check it yourself.

Stream names for the second argument of DS_EVENTS: insider_cluster, insider_sale_notice, activist_stake, institutional_holding, material_event, private_raise, fda_action, biotech_catalyst, nih_grant, gov_contract_award, congress_trade, hiring_signal.

Three sheets people actually build

A watchlist that tells you why. Column A holds your tickers, =DS_EVENTS(A2, , 30) next to each. Sort by Score and the sheet reads like a morning note: which of your names had an insider cluster, an activist filing or a material 8-K this month.

A congress tracker. =DS_CONGRESS("NVDA", 365) in one tab, =DS_CONGRESS("Pelosi") and =DS_CONGRESS("Gottheimer") in the next. It takes a ticker or part of a member's name. The Title column shows purchase or sale and the amount band; the filing lag is in the source record.

A raise radar. =DS_RAISES(7) every Monday. Form D filings land at the SEC before any press release; the Title column shows sold against offered and the industry.

What the free key covers, honestly

A free key is permanent, not a trial. It covers one stream of your choice, 250 events a month, delivered 24 hours behind. That is enough to run one of the sheets above for one stream and to check whether the scores earn your trust.

It also means one wide formula can spend the month. =DS_RAISES(30) pulls every Form D of the month; with a free key that is likely the whole allowance in one go, and the next call returns an empty table with a note saying so. Nothing is lost: the quota resets monthly, and the formulas pick up where they left off.

If you want all twelve streams in one sheet, more volume or a shorter delay, the Events API plans start at $29 a month and the same key works in Sheets, in the API and in the MCP server. No sales call.

Errors are text, not red cells

Anything that goes wrong shows up as a sentence in the cell: no key set, unknown stream, key bound to another stream, monthly limit reached, API unreachable. A broken formula never breaks the rest of the sheet.

Privacy

The script calls only datasignalslab.com. It reads the arguments you give a formula and nothing else in your spreadsheet. Your key lives in your own Google account properties. What we log on our side is in the privacy policy.

Source

The add-on is four small files: Code.gs (menu, key handling, fetching with a 10 minute cache), Format.gs (turning events into rows), Sidebar.html (the help panel) and appsscript.json (the manifest, with only three scopes: the current sheet, external requests to datasignalslab.com, and the menu). They are in the template sheet under Extensions > Apps Script; copy them from there into any sheet of your own.

Questions or a stream you want in Sheets first: support@datasignalslab.com.

FAQ

Does this need the Google Workspace Marketplace?

No. The script is bound to the template sheet, so File > Make a copy is the whole installation. A Marketplace listing is planned, but you do not have to wait for it.

Why does Google show a warning the first time?

Because it is a script you copied, not a store add-on. Google asks once whether you trust it; the script only talks to datasignalslab.com and only reads the formula arguments.

Can I use a paid key from the API in Sheets?

Yes, it is the same key. Set it once with DataSignals > Set API key.

How fresh is the data?

Sources are refreshed daily (House trades weekly, 13F quarterly). `=DS_HEALTH()` shows the last ingest per stream without needing a key.

Is this investment advice?

No. It is filing data for research, screening and monitoring. Every row links to the primary source.