# Log your Snyk vulnerability counts to Sheets every morning

> Every weekday at 7am, four numbers land in your tracking sheet and a one line Slack ping shows what moved since yesterday.

- Workflow type: code
- Services: Snyk, Google Sheets, Slack
- Categories: Engineering
- Published: 2026-08-09

## What it does

- Checks your open Snyk vulnerabilities every weekday morning and counts them by severity: critical, high, medium, and low.
- Adds one dated row to your tracking spreadsheet with those four numbers, so the history builds itself without anyone remembering to update it.
- Posts a single line to Slack with today's counts and how each one changed since the previous entry.
- Writes the same four numbers to the same place every day, so the sheet can drive a burndown chart with no cleanup.

## What you'll need

- A Snyk account with access to the organization you want to track
- A Google account and a spreadsheet with a tab set aside for the log
- A Slack workspace and the channel where the daily line should go

## Prompt

Every weekday at 7am, snapshot our open Snyk vulnerability counts by severity, append them as one dated row in a Google Sheets tracking tab, and post a one line summary to Slack. The point is a consistent daily metrics log that can drive a burndown chart, not a written report.

Step 1, fetch the issues. Use the Snyk operation "Get issues by org ID" against the organization I connect, paging through every result until the feed is exhausted so the counts cover the whole org rather than just the first page. Count only issues that are currently open, ignoring anything resolved or ignored.

Step 2, count by severity. Group the open issues into exactly four buckets using each issue's effective severity: critical, high, medium, and low. Any severity value outside those four should be left out of all four counts rather than folded into the nearest bucket. A bucket with nothing in it is a 0, never a blank.

Step 3, read the previous row. Before writing anything, use the Google Sheets operation "Get Values" to read the existing rows in the tracking tab and pick up the most recent entry, so the four counts from the last run are available for comparison. If the tab has no data rows yet, treat this as the first run.

Step 4, append today's row. Use the Google Sheets operation "Append Values" to add exactly one row to the tracking tab, with five columns in a fixed order: date, critical, high, medium, low. Use today's date in YYYY-MM-DD format and write the counts as plain numbers so the sheet can chart them. Always append, never overwrite an existing row, and always write one row per run even when nothing changed.

Step 5, post the Slack line. Use the Slack operation "Send a Message" to post a single line to the channel I choose, showing today's date, the four counts, and the change against the previous row in parentheses, for example: Snyk 2026-08-07: 3 critical (+1), 12 high (-2), 44 medium (0), 87 low (+5). Show a signed number for every severity, including 0 when a count is unchanged. On the first run, when there is no previous row, post the four counts with no change values.

Keep this deliberately narrow. Do not summarize, prioritize, or comment on the numbers, do not name individual vulnerabilities or projects, and do not skip the run or the Slack message on a quiet day. The same four numbers written to the same place every day is the entire product.

## How to customize

- Change when it runs, from weekday mornings to every day or once a week
- Send the daily line to a different channel, or as a direct message instead
- Point it at a different spreadsheet, tab, or Snyk organization

## Example output

Snyk 2026-08-07: 3 critical (+1), 12 high (-2), 44 medium (0), 87 low (+5)

## FAQ

### Will this overwrite yesterday's numbers?

No. Each run adds a new row underneath the last one, so the sheet becomes a running history you can chart. Nothing already written is changed.

### What happens on the very first run, when the sheet is empty?

It writes the first row and posts today's counts on their own, with no comparison. From the second run onwards the Slack message shows the change against the previous row.

### Does it tell me which vulnerabilities are new or what to fix first?

No, and that is deliberate. This is a metrics log: four numbers, once a day, in a fixed format. If you want written analysis and prioritization, that belongs in a separate weekly report.

### Can I build a burndown chart from this?

Yes. Once a few rows exist, insert a line chart over the date column and the four severity columns, and it will keep updating as new rows arrive.

### Does it work if my Snyk account is hosted outside the US?

Yes. Snyk hosts accounts in several regions, and you simply pick yours when you connect the account.

Use this prompt in General Input: https://www.generalinput.com/prompts/log-your-snyk-vulnerability-counts-to-sheets-every-morning