{"version":2,"generated_at":"2026-10-05T11:00:32+00:00","sections":[{"id":"security","title":"Security","description":"The advisories we track and how fast fixes reach the fleet. Only completed fleet-wide work at least seven days old is counted, so nothing here reveals a fix still rolling out.","metrics":["advisories_tracked","new_advisories","advisories_weekly","exploited_advisories_weekly","patch_time","days_within_patch_promise","fleet_fixes","advisories_fixed","exploited_advisories_fixed","recent_fixes"]},{"id":"fleet","title":"Fleet","description":"The servers we manage and how reliably we keep them current, backed up and up.","metrics":["servers_managed","servers_current","rebuilds","rebuild_success","rebuilds_to_date","rebuild_self_rollbacks","fleet_rollouts","backup_runs","restores","uptime","uptime_servers","milestones"]},{"id":"deploys","title":"Deploys","description":"How customers ship through Strackt: deploys, rollbacks and preview environments.","metrics":["deploys","deploy_success","deploys_weekly","rollbacks","rollback_time","commit_to_live","previews_created","preview_teardowns","teams_deployed"]},{"id":"money","title":"Money","description":"Revenue, customers and where signups come from.","metrics":["mrr","paying_customers","revenue","churned_teams","funnel","signup_sources"]},{"id":"building","title":"Building in public","description":"How Strackt itself is built: releases, tests and documentation.","metrics":["releases","tests","assertions","changelog_entries","docs_pages"]}],"metrics":{"advisories_tracked":{"section":"security","title":"Advisories tracked","description":"Every security advisory we have taken in and checked against the packages our servers run.","type":"number","unit":"count","scope":"fleet","source":"advisories","window":{"start":null,"end":"2026-10-05"},"delay_days":0,"recorded_since":null,"as_of":"2026-10-05","status":"observed","value":119855},"new_advisories":{"section":"security","title":"New advisories","description":"Security advisories that reached us in the last 30 days.","type":"number","unit":"count","scope":"fleet","source":"advisories","window":{"start":"2026-09-05","end":"2026-10-05"},"delay_days":0,"recorded_since":null,"as_of":"2026-10-05","status":"observed","value":30781},"advisories_weekly":{"section":"security","title":"Advisories per week, by feed","description":"New security advisories per week, split by the feed that reported them. The newest week is still in progress.","type":"series","unit":"count","scope":"fleet","source":"advisories","dimensions":[{"id":"osv","label":"OSV.dev"},{"id":"cisa_kev","label":"CISA KEV"},{"id":"nixpkgs_issue","label":"nixpkgs security issue"},{"id":"manual","label":"Manual"},{"id":"kernel_cna","label":"Kernel CNA"}],"interval":"week","window":{"start":"2026-07-20","end":"2026-10-05"},"delay_days":0,"recorded_since":null,"as_of":"2026-10-05","status":"observed","value":[{"date":"2026-07-20","values":{"osv":0,"cisa_kev":0,"nixpkgs_issue":0,"manual":0,"kernel_cna":0}},{"date":"2026-07-27","values":{"osv":0,"cisa_kev":0,"nixpkgs_issue":0,"manual":0,"kernel_cna":0}},{"date":"2026-08-03","values":{"osv":241,"cisa_kev":0,"nixpkgs_issue":0,"manual":0,"kernel_cna":0}},{"date":"2026-08-10","values":{"osv":30144,"cisa_kev":0,"nixpkgs_issue":0,"manual":0,"kernel_cna":0}},{"date":"2026-08-17","values":{"osv":9492,"cisa_kev":0,"nixpkgs_issue":0,"manual":0,"kernel_cna":0}},{"date":"2026-08-24","values":{"osv":29070,"cisa_kev":1626,"nixpkgs_issue":0,"manual":0,"kernel_cna":0}},{"date":"2026-08-31","values":{"osv":19142,"cisa_kev":9,"nixpkgs_issue":0,"manual":0,"kernel_cna":0}},{"date":"2026-09-07","values":{"osv":10407,"cisa_kev":13,"nixpkgs_issue":0,"manual":0,"kernel_cna":0}},{"date":"2026-09-14","values":{"osv":5229,"cisa_kev":4,"nixpkgs_issue":0,"manual":0,"kernel_cna":0}},{"date":"2026-09-21","values":{"osv":12672,"cisa_kev":11,"nixpkgs_issue":0,"manual":0,"kernel_cna":0}},{"date":"2026-09-28","values":{"osv":1789,"cisa_kev":6,"nixpkgs_issue":0,"manual":0,"kernel_cna":0}},{"date":"2026-10-05","values":{"osv":0,"cisa_kev":0,"nixpkgs_issue":0,"manual":0,"kernel_cna":0}}]},"exploited_advisories_weekly":{"section":"security","title":"Actively exploited advisories per week","description":"New advisories per week that were known to be exploited in the wild. The newest week is still in progress.","type":"series","unit":"count","scope":"fleet","source":"advisories","interval":"week","window":{"start":"2026-07-20","end":"2026-10-05"},"delay_days":0,"recorded_since":null,"as_of":"2026-10-05","status":"observed","value":[{"date":"2026-07-20","value":0},{"date":"2026-07-27","value":0},{"date":"2026-08-03","value":0},{"date":"2026-08-10","value":59},{"date":"2026-08-17","value":20},{"date":"2026-08-24","value":1791},{"date":"2026-08-31","value":44},{"date":"2026-09-07","value":99},{"date":"2026-09-14","value":12},{"date":"2026-09-21","value":45},{"date":"2026-09-28","value":12},{"date":"2026-10-05","value":0}]},"patch_time":{"section":"security","title":"Time to patch the fleet","description":"How long a security fix took from the moment we started it to the moment every affected server ran it, over fixes completed in the 90 days before the disclosure horizon.","type":"distribution","unit":"seconds","scope":"fleet","source":"remediations","window":{"start":"2026-06-30","end":"2026-09-28"},"delay_days":0,"recorded_since":null,"as_of":"2026-10-05","status":"empty","value":null},"days_within_patch_promise":{"section":"security","title":"Days the 24-hour promise has held","description":"Days since a fleet-wide fix last took longer than 24 hours, or since the first fix if none has. Counted to the disclosure horizon, not to today.","type":"number","unit":"days","scope":"fleet","source":"remediations","window":{"start":null,"end":"2026-09-28"},"delay_days":0,"recorded_since":null,"as_of":"2026-10-05","status":"empty","value":null},"fleet_fixes":{"section":"security","title":"Fleet-wide fixes","description":"Security fixes rolled out to every affected server.","type":"number","unit":"count","scope":"fleet","source":"remediations","window":{"start":null,"end":"2026-09-28"},"delay_days":0,"recorded_since":null,"as_of":"2026-10-05","status":"observed","value":0},"advisories_fixed":{"section":"security","title":"Advisories fixed","description":"Advisories closed by fleet-wide fixes, counted per fix: an advisory fixed on two version branches counts twice.","type":"number","unit":"count","scope":"fleet","source":"remediations","window":{"start":null,"end":"2026-09-28"},"delay_days":0,"recorded_since":null,"as_of":"2026-10-05","status":"observed","value":0},"exploited_advisories_fixed":{"section":"security","title":"Actively exploited advisories fixed","description":"Advisories known to be exploited in the wild that fleet-wide fixes closed, counted per fix.","type":"number","unit":"count","scope":"fleet","source":"remediations","window":{"start":null,"end":"2026-09-28"},"delay_days":0,"recorded_since":null,"as_of":"2026-10-05","status":"observed","value":0},"recent_fixes":{"section":"security","title":"Recent fixes","description":"The ten newest fleet-wide security fixes completed before the disclosure horizon.","type":"records","unit":null,"scope":"fleet","source":"remediations","fields":{"package":{"type":"string","description":"The package that was fixed."},"from_version":{"type":"string","description":"The version the fleet ran before the fix."},"to_version":{"type":"string","description":"The fixed version."},"servers":{"type":"integer","unit":"count","description":"Servers the fix reached."},"advisories":{"type":"integer","unit":"count","description":"Advisories the fix closed."},"exploited_advisories":{"type":"integer","unit":"count","description":"Of those, advisories known to be exploited in the wild."},"patch_time":{"type":"integer","unit":"seconds","description":"From starting the fix to every affected server running it."}},"window":{"start":null,"end":"2026-09-28"},"delay_days":0,"recorded_since":null,"as_of":"2026-10-05","status":"empty","value":null},"servers_managed":{"section":"fleet","title":"Servers managed","description":"Servers Strackt manages today, split into customer servers and our own.","type":"breakdown","unit":"count","scope":"fleet","source":"servers","dimensions":[{"id":"customer","label":"Customer servers"},{"id":"internal","label":"Our own servers"}],"window":null,"delay_days":0,"recorded_since":null,"as_of":"2026-10-05","status":"observed","value":{"customer":2,"internal":2}},"servers_current":{"section":"fleet","title":"Servers on the current version","description":"The share of customer servers running the current platform version. Published seven days after it was observed.","type":"number","unit":"basis_points","scope":"customers","source":"servers","window":null,"delay_days":7,"recorded_since":null,"as_of":null,"status":"unavailable","value":null},"rebuilds":{"section":"fleet","title":"Server rebuilds","description":"Configuration rebuilds that changed a customer server, finished in the 30 days before the disclosure horizon.","type":"number","unit":"count","scope":"customers","source":"operations","window":{"start":"2026-08-29","end":"2026-09-28"},"delay_days":0,"recorded_since":null,"as_of":"2026-10-05","status":"observed","value":47},"rebuild_success":{"section":"fleet","title":"Rebuild success rate","description":"The share of those rebuilds that completed without an error.","type":"number","unit":"basis_points","scope":"customers","source":"operations","window":{"start":"2026-08-29","end":"2026-09-28"},"delay_days":0,"recorded_since":null,"as_of":"2026-10-05","status":"observed","value":9574},"rebuilds_to_date":{"section":"fleet","title":"Server rebuilds to date","description":"Configuration rebuilds that changed a customer server since July 2026, to the disclosure horizon.","type":"number","unit":"count","scope":"customers","source":"operations","window":{"start":"2026-07-01","end":"2026-09-28"},"delay_days":0,"recorded_since":null,"as_of":"2026-10-05","status":"observed","value":47},"rebuild_self_rollbacks":{"section":"fleet","title":"Rebuilds that rolled themselves back","description":"Rebuilds a customer server reverted on its own because the new configuration failed its health check.","type":"number","unit":"count","scope":"customers","source":"operations","window":{"start":null,"end":"2026-10-05"},"delay_days":0,"recorded_since":"2026-10-03","as_of":"2026-10-05","status":"observed","value":0},"fleet_rollouts":{"section":"fleet","title":"Fleet rollouts","description":"Platform updates rolled out across the whole fleet, finished in the 30 days before the disclosure horizon.","type":"number","unit":"count","scope":"fleet","source":"operations","window":{"start":"2026-08-29","end":"2026-09-28"},"delay_days":0,"recorded_since":null,"as_of":"2026-10-05","status":"observed","value":0},"backup_runs":{"section":"fleet","title":"Backup runs","description":"Customer backup runs started in the last 30 days, by outcome.","type":"breakdown","unit":"count","scope":"customers","source":"backups","dimensions":[{"id":"succeeded","label":"Succeeded"},{"id":"failed","label":"Failed"}],"window":{"start":"2026-09-05","end":"2026-10-05"},"delay_days":0,"recorded_since":null,"as_of":"2026-10-05","status":"observed","value":{"succeeded":0,"failed":0}},"restores":{"section":"fleet","title":"Restores","description":"Customer restores from a backup or checkpoint finished in the last 30 days, by outcome.","type":"breakdown","unit":"count","scope":"customers","source":"operations","dimensions":[{"id":"completed","label":"Completed"},{"id":"failed","label":"Failed"}],"window":{"start":"2026-09-05","end":"2026-10-05"},"delay_days":0,"recorded_since":null,"as_of":"2026-10-05","status":"observed","value":{"completed":0,"failed":0}},"uptime":{"section":"fleet","title":"Server uptime","description":"The share of minutes customer servers were reachable over the last 30 days, weighted by how long each has been managed. Servers adopted in the last 24 hours are left out.","type":"number","unit":"basis_points","scope":"customers","source":"monitoring","window":{"start":"2026-09-05","end":"2026-10-05"},"delay_days":0,"recorded_since":null,"as_of":"2026-10-05","status":"observed","value":10000},"uptime_servers":{"section":"fleet","title":"Servers in the uptime figure","description":"How many customer servers the uptime share was measured over.","type":"number","unit":"count","scope":"customers","source":"monitoring","window":null,"delay_days":0,"recorded_since":null,"as_of":"2026-10-05","status":"observed","value":2},"milestones":{"section":"fleet","title":"Platform milestones","description":"Major platform upgrades rolled out across the fleet.","type":"records","unit":null,"scope":"fleet","source":"editorial","fields":{"date":{"type":"string","description":"The day the rollout finished."},"label":{"type":"string","description":"What changed."}},"window":null,"delay_days":0,"recorded_since":null,"as_of":"2026-10-05","status":"observed","value":[{"date":"2026-07-04","label":"NixOS 25.11 \u2192 26.05"},{"date":"2026-07-18","label":"Kernel 6.12 \u2192 6.18 LTS"}]},"deploys":{"section":"deploys","title":"Deploys","description":"Customer deploys that finished in the last 30 days, successful or not.","type":"number","unit":"count","scope":"customers","source":"operations","window":{"start":"2026-09-05","end":"2026-10-05"},"delay_days":0,"recorded_since":null,"as_of":"2026-10-05","status":"observed","value":16},"deploy_success":{"section":"deploys","title":"Deploy success rate","description":"The share of those deploys that went live without an error.","type":"number","unit":"basis_points","scope":"customers","source":"operations","window":{"start":"2026-09-05","end":"2026-10-05"},"delay_days":0,"recorded_since":null,"as_of":"2026-10-05","status":"observed","value":8125},"deploys_weekly":{"section":"deploys","title":"Deploys per week","description":"Customer deploys finished per week. The newest week is still in progress.","type":"series","unit":"count","scope":"customers","source":"operations","interval":"week","window":{"start":"2026-07-20","end":"2026-10-05"},"delay_days":0,"recorded_since":null,"as_of":"2026-10-05","status":"observed","value":[{"date":"2026-07-20","value":0},{"date":"2026-07-27","value":0},{"date":"2026-08-03","value":0},{"date":"2026-08-10","value":0},{"date":"2026-08-17","value":0},{"date":"2026-08-24","value":0},{"date":"2026-08-31","value":1},{"date":"2026-09-07","value":0},{"date":"2026-09-14","value":6},{"date":"2026-09-21","value":0},{"date":"2026-09-28","value":10},{"date":"2026-10-05","value":0}]},"rollbacks":{"section":"deploys","title":"Rollbacks","description":"Times a customer rolled an application back to an earlier release in the last 30 days.","type":"number","unit":"count","scope":"customers","source":"operations","window":{"start":"2026-09-05","end":"2026-10-05"},"delay_days":0,"recorded_since":null,"as_of":"2026-10-05","status":"observed","value":0},"rollback_time":{"section":"deploys","title":"Time to roll back","description":"How long a rollback took from the click to the earlier release serving traffic, over the last 30 days.","type":"distribution","unit":"seconds","scope":"customers","source":"operations","window":{"start":"2026-09-05","end":"2026-10-05"},"delay_days":0,"recorded_since":null,"as_of":null,"status":"unavailable","value":null},"commit_to_live":{"section":"deploys","title":"Commit to live","description":"How long a successful deploy took from the commit being made to it serving traffic, over the last 30 days.","type":"distribution","unit":"seconds","scope":"customers","source":"operations","window":{"start":"2026-09-05","end":"2026-10-05"},"delay_days":0,"recorded_since":"2026-10-03","as_of":"2026-10-05","status":"empty","value":null},"previews_created":{"section":"deploys","title":"Preview environments created","description":"Preview environments Strackt has created for customer pull requests.","type":"number","unit":"count","scope":"customers","source":"previews","window":{"start":null,"end":"2026-10-05"},"delay_days":0,"recorded_since":null,"as_of":"2026-10-05","status":"observed","value":0},"preview_teardowns":{"section":"deploys","title":"Preview environments torn down","description":"Customer preview environments removed automatically in the last 30 days, by the reason they were removed.","type":"breakdown","unit":"count","scope":"customers","source":"previews","dimensions":[{"id":"pr_merged","label":"Pull request merged"},{"id":"pr_closed_unmerged","label":"Pull request closed without merging"},{"id":"idle_timeout","label":"Idle too long"}],"window":{"start":"2026-09-05","end":"2026-10-05"},"delay_days":0,"recorded_since":"2026-10-03","as_of":"2026-10-05","status":"observed","value":{"pr_merged":0,"pr_closed_unmerged":0,"idle_timeout":0}},"teams_deployed":{"section":"deploys","title":"Teams that have deployed","description":"Customer teams that have deployed at least one application.","type":"number","unit":"count","scope":"customers","source":"operations","window":{"start":null,"end":"2026-10-05"},"delay_days":0,"recorded_since":"2026-10-01","as_of":"2026-10-05","status":"observed","value":1},"mrr":{"section":"money","title":"Monthly recurring revenue","description":"What paying customers are billed per month today.","type":"number","unit":"eur_cents","scope":"company","source":"billing","window":null,"delay_days":0,"recorded_since":null,"as_of":"2026-10-05","status":"observed","value":500,"history":[{"date":"2026-10-03","value":500},{"date":"2026-10-04","value":500},{"date":"2026-10-05","value":500}]},"paying_customers":{"section":"money","title":"Paying customers","description":"Teams with an active paid subscription today.","type":"number","unit":"count","scope":"company","source":"billing","window":null,"delay_days":0,"recorded_since":null,"as_of":"2026-10-05","status":"observed","value":1},"revenue":{"section":"money","title":"Revenue to date","description":"Everything customers have paid us, excluding VAT.","type":"number","unit":"eur_cents","scope":"company","source":"billing","window":{"start":null,"end":"2026-10-05"},"delay_days":0,"recorded_since":null,"as_of":"2026-10-05","status":"observed","value":500},"churned_teams":{"section":"money","title":"Teams that stopped paying","description":"Paying teams that cancelled in the last 30 days.","type":"number","unit":"count","scope":"company","source":"billing","window":{"start":"2026-09-05","end":"2026-10-05"},"delay_days":0,"recorded_since":null,"as_of":"2026-10-05","status":"observed","value":0},"funnel":{"section":"money","title":"From signup to paying","description":"Accounts at each step: signed up, created an application, went live, and pay for Strackt.","type":"breakdown","unit":"count","scope":"company","source":"signups","dimensions":[{"id":"signed_up","label":"Signed up"},{"id":"created_app","label":"Created an application"},{"id":"live","label":"Went live"},{"id":"paying","label":"Paying"}],"window":{"start":null,"end":"2026-10-05"},"delay_days":0,"recorded_since":null,"as_of":"2026-10-05","status":"observed","value":{"signed_up":2,"created_app":2,"live":2,"paying":1}},"signup_sources":{"section":"money","title":"Where signups came from","description":"New accounts in the last 30 days by where they came from. A source with fewer than three signups is counted under other.","type":"breakdown","unit":"count","scope":"company","source":"signups","dimensions":[{"id":"search","label":"Search engines"},{"id":"the_log","label":"The Log"},{"id":"reddit","label":"Reddit"},{"id":"x","label":"X"},{"id":"hacker_news","label":"Hacker News"},{"id":"indie_hackers","label":"Indie Hackers"},{"id":"github","label":"GitHub"},{"id":"linkedin","label":"LinkedIn"},{"id":"direct","label":"Direct"},{"id":"other","label":"Other"}],"window":{"start":"2026-09-05","end":"2026-10-05"},"delay_days":0,"recorded_since":null,"as_of":"2026-10-05","status":"observed","value":{"search":0,"the_log":0,"reddit":0,"x":0,"hacker_news":0,"indie_hackers":0,"github":0,"linkedin":0,"direct":0,"other":1}},"releases":{"section":"building","title":"Releases","description":"Production releases of Strackt itself.","type":"number","unit":"count","scope":"company","source":"releases","window":{"start":null,"end":"2026-10-05"},"delay_days":0,"recorded_since":null,"as_of":"2026-10-05","status":"observed","value":66},"tests":{"section":"building","title":"Automated tests","description":"Tests in the automated suite that runs before every change ships.","type":"number","unit":"count","scope":"company","source":"test_suite","window":null,"delay_days":0,"recorded_since":null,"as_of":"2026-10-05","status":"observed","value":12052},"assertions":{"section":"building","title":"Assertions","description":"Individual checks those tests make.","type":"number","unit":"count","scope":"company","source":"test_suite","window":null,"delay_days":0,"recorded_since":null,"as_of":"2026-10-05","status":"observed","value":67460},"changelog_entries":{"section":"building","title":"Changelog entries","description":"Entries in the public changelog.","type":"number","unit":"count","scope":"company","source":"content","window":null,"delay_days":0,"recorded_since":null,"as_of":"2026-10-05","status":"observed","value":190},"docs_pages":{"section":"building","title":"Documentation pages","description":"Pages in the public documentation.","type":"number","unit":"count","scope":"company","source":"content","window":null,"delay_days":0,"recorded_since":null,"as_of":"2026-10-05","status":"observed","value":76}},"sources":{"advisories":{"title":"Security advisories","description":"Every security advisory Strackt has taken in from public feeds (OSV.dev, the CISA Known Exploited Vulnerabilities catalogue, nixpkgs security issues, the Linux kernel CNA) or entered by hand, whether or not it affected a managed server."},"remediations":{"title":"Fleet-wide security fixes","description":"One record per security fix rolled out across the fleet: the package, the version moved from and to, how many servers and advisories it covered, when the fix was started and when every affected server had it. A per-server fix is not a remediation."},"servers":{"title":"Managed servers","description":"The servers Strackt manages, with the team that owns each one and whether it runs the current platform version."},"operations":{"title":"Operation log","description":"The log of every operation Strackt runs: deploys, rollbacks, configuration rebuilds, restores and fleet rollouts, each with its start, finish and outcome."},"backups":{"title":"Backup runs","description":"Every scheduled and manual backup run, with its outcome."},"previews":{"title":"Preview environments","description":"Preview environments created for pull requests, and the reason each one was torn down."},"monitoring":{"title":"Server monitoring","description":"Minute-by-minute reachability of each managed server as seen by our monitoring."},"billing":{"title":"Billing","description":"Subscriptions and payments from our payment provider, at list price, excluding VAT."},"signups":{"title":"Signups","description":"New accounts and where they said they came from, reduced to a fixed set of categories. Raw referrers and campaign tags are never published."},"releases":{"title":"Releases","description":"Tagged platform releases. Each release is one production deploy of Strackt itself."},"test_suite":{"title":"Test suite","description":"The automated test suite, as counted by the newest complete, passing run on the main development branch."},"content":{"title":"Published content","description":"Changelog entries and documentation pages published from the product repository."},"editorial":{"title":"Editorial","description":"Written by hand by the Strackt team."}},"units":{"count":"A number of things.","basis_points":"A share in hundredths of a percent: 9740 is 97.40%.","seconds":"A duration in seconds.","days":"A number of whole days.","eur_cents":"An amount in euro cents, at list price, excluding VAT."},"types":{"number":"A single integer.","breakdown":"An object of integers, one per declared dimension, in the declared order.","distribution":"An object with the median, the 90th percentile and the number of samples they were measured over.","series":"A list of points, oldest first. Each point has the first day of its interval as `date`, and either a `value`, or `values` with one integer per declared dimension.","records":"A list of rows. Each row has exactly the fields the metric declares."},"scopes":{"customers":"Customer teams only. Our own teams and platform maintenance are left out.","fleet":"Every server Strackt manages, customers and our own alike.","company":"Strackt the business and the product: revenue, signups and how the product is built."}}