AI SaaS Disruption Monitor

Everyone has an opinion on whether AI is eating SaaS. This page runs the actual test, daily: read disclosed fundamentals for the fingerprint the thesis predicts — forward demand (billings, deferred revenue) softening ahead of revenue, growth decelerating faster than a company its size normally would — and check whether that deterioration lines up with how AI-exposed each of 33 software names is. Then it tries to kill its own result with permutation tests, maturity/size controls, and a predictive-lead test. The verdict below is whatever survives.

Verdict — as of 2026-08-13, updated daily

The AI-eats-SaaS fingerprint is not detectable in disclosed fundamentals yet. not validated: the headline is indistinguishable from chance and vanishes under maturity/size controls — treat as an unproven hypothesis, not a finding

Raw rank correlation between AI exposure and fundamental pressure is 0.01, but it collapses to 0.14 once company age, size, and growth level are controlled — and a permutation test puts it at p=0.93, indistinguishable from shuffled labels. What looks like AI pressure is, so far, mostly ordinary maturation. The monitor exists to catch the moment that changes.

NOT DETECTEDDisruption fingerprint
0.01Raw rank correlation
0.14Under age+size controls
0.93Permutation p
1.26Seat cohort pressure
-0.67Consumption cohort
⤓ Download the per-company diagnostic (CSV)

The fingerprint test: AI exposure vs fundamental pressure

Each point is a company. If AI were visibly eating SaaS, AI-exposed names (right) would cluster high on fundamental pressure (up), and the cloud would tilt diagonally. It doesn't — yet. The real split is pricing model: seat-priced names carry more pressure than consumption-priced ones.

Seat / subscription Consumption-priced Focal five (ADBE HUBS NOW PANW SNOW)

Pressure watchlist — who is decelerating abnormally

Ranked by fundamental pressure: growth decelerating faster than the maturation null predicts, billings gaps closing or going negative, deferred revenue softening. Given the verdict above, read this as a watchlist ordering, not an AI-causation claim — and never as a trading signal.

TickerPricingPressureRev growth (latest)Growth slopeBillings-gap slopeDeferred-rev growth
INTU seat 5.45 10.4% -0.82pp -0.10pp 10.1%
GTLB seat 3.42 23.1% -1.29pp -2.94pp 16.9%
WDAY seat 2.83 14.5% -1.30pp -2.11pp 11.7%
TENB seat 2.67 8.6% -0.51pp -0.40pp 6.5%
ADSK seat 2.24 18.4% +1.36pp -2.12pp 13.4%
HUBS seat 2.21 19.8% +0.92pp -2.02pp 18.8%
CRM seat 2.01 13.3% -0.16pp -2.11pp 14.4%
DOCU seat 1.78 8.7% -0.03pp -0.49pp 10.2%
OKTA seat 1.51 11.2% -0.24pp +0.23pp 10.7%
ESTC consumption 1.49 16.0% -0.12pp +1.62pp 20.4%

Focal five — next-quarter forecasts

The model's selection gate is strict: a learned forecaster is used only where it beat naive persistence and an AR(1) and the peer median out of sample, including a late holdout. For revenue growth and gross margin nothing qualified — so the honest forecast is calibrated persistence (~88% interval coverage). FCF margin is the one target where a seasonal ridge earned its keep.

TickerNext-Q revenue growth YoYNext-Q gross marginNext-Q FCF margin
ADBE12.7% [6%–20%]89.2% [88%–91%]38.7% [20%–57%] beat baselines
HUBS19.8% [13%–27%]82.4% [81%–84%]25.2% [7%–44%] beat baselines
NOW24.0% [17%–31%]70.7% [69%–72%]20.1% [2%–39%] beat baselines
PANW31.1% [24%–38%]67.6% [66%–69%]
SNOW33.5% [26%–40%]66.6% [65%–68%]8.5% [-10%–27%] beat baselines

Why persistence? The model grades itself

On the revenue-growth holdout (n=109), the best learned challenger scored MAE 0.0267 against naive persistence's 0.0234 — it lost, so the gate refused it. A monitor that quietly shipped the fancier model anyway would look smarter and be wronger.

Who actually discloses AI revenue

Disclosed AI ARR share and its growth, from primary-source company disclosures — the input the exposure scores lean on. Sparse, self-selected disclosure is itself a finding.

TickerAI share of ARR (disclosed)AI growth (median disclosed)Direct AI revenue metric?
ADBE1.8% 125% yes
HUBS 67% no
NOW 115% no
PANW no
SNOW 100% no

How the model works

A daily pipeline that tries to disprove the disruption thesis before reporting anything:

#StageWhat happens
1IngestPoint-in-time company financials from SEC company facts (revenue, billings, deferred revenue, margins — as they were known, no restatement leakage), plus earnings-call transcripts scored for AI language (risk, product, monetization, seat-displacement mentions per 10k words) and quantitative AI disclosures (AI ARR, AI growth). ~30 quarters deep, 33 companies.
2Maturation nullThe step most hot takes skip. Every software company decelerates as it ages and grows — that's not disruption, it's gravity. The model fits what a company of each age, size, and growth level normally does next, and only deviation from that null counts as "pressure."
3Fingerprint scoresPer company: fundamental pressure = growth decelerating faster than the null + billings−revenue gap trending down + deferred revenue softening (forward demand weakening ahead of reported revenue — the specific pattern the AI-eats-SaaS thesis predicts). AI exposure = disclosed AI-language and AI-revenue intensity. Both rank-standardized.
4Kill testsThe correlation between exposure and pressure is attacked three ways: a 5,000-draw permutation test (is it distinguishable from shuffled labels?), partial correlation stripping age/size/growth (does it survive the maturation confound?), and a split-sample predictive-lead test (does early AI language predict later deterioration?). Plus leave-one-out stability. Only what survives all of them becomes a finding; today, nothing does — so the verdict box says so.
5Gated forecastsNext-quarter forecasts come from a locked ridge + challenger models, but a challenger is only used if it beat naive persistence, AR(1), and the peer median out of sample including a late holdout. Where nothing qualifies, the page shows calibrated persistence — the honest baseline — with ~88%-coverage intervals.
6PublishEvery run appends a dated vintage (never overwrites history), publishes to the Bargo database, and re-renders this page. Forecast-vs-realized scoring accrues automatically as quarters resolve, so the model's track record is auditable, not curated.

Design principle: the model is only allowed to claim what survives its own attempts to kill the claim. That's why a monitor built to detect AI disruption currently reports there isn't any — and why it will be credible on the day it reports there is.

What would flip the verdict

The monitor recomputes daily against append-only vintages, so the day the fingerprint appears, this page will say so — and the history of it not appearing is preserved.

Methodology

Point-in-time panel across 33 software names (SEC company facts + earnings-call AI-language metrics + quantitative AI disclosures; ~30 quarters deep). Fundamental pressure = composite of growth deceleration vs a maturation null (what a company of that age/size normally does), billings−revenue gap trend, and deferred-revenue softening. AI exposure = disclosed AI-language and AI-revenue intensity. Guardrails: 5,000-draw permutation test, partial Spearman controlling age/size/growth, leave-one-out stability (most influential: GTLB), split-sample predictive lead. Every association is flagged non-causal; management chooses its own AI language. Forecasts use a locked ridge + challengers gated on out-of-sample skill vs naive/AR(1)/peer-median baselines. Data updates daily; vintages are append-only.

Companions: Token Demand Index and Compute Tightness Index.