Phase Space AI

Financial Model Notes

Workday [WDAY]

Workday, Inc. [WDAY] — Financial Model Notes

As of 2026-07-29. Provenance, construction, adjustments, and the weaknesses in my own numbers. Reproduction scripts are committed under work/.


1. Data provenance

Item Source Retrieval
Prices Alpaca v2/stocks/snapshots, v2/stocks/{sym}/bars work/fetch_prices.py, work/gap_check.py
Fundamentals SEC XBRL companyfacts CIK 0001327811 work/edgar_pull.py, work/extract.py
Balance sheet, income statement, SBC 10-Q Q1 FY27 wday-20260430.htm, read directly work/fetch_docs.py, work/q.py
Retention-disclosure history FY23, FY24, FY25, FY26 10-Ks + Q1 FY27 10-Q, full text work/fetch_hist.py, work/censor.py
Backlog, guidance 8-K Ex-99.1 wday-04302026x991.htm, wday-01312026x991.htm work/fetch_pr.py
Multiple history own P/S by fiscal quarter work/multiple_hist3.py
Implied path assets/reverse_dcf.py work/run_paths.py, work/run_exit.py, work/tm_sens.py
Peer anchor XBRL + balance sheets, 11 comparators work/anchor.py
Option chain Alpaca options contracts + snapshots work/liquidity.py

Recency asserted. Period 2026-04-30, filed 2026-05-22 — 68 days old. Not stale. The GOOGL (485-day-stale companyfacts) and Alcon (filing history ending 2010) failures do not apply.


2. The share count — the defect, and the fix

This is the most consequential data error in the WDAY record and it comes from the exact trap the brief named.

Basis Count Status
dei:EntityCommonStockSharesOutstanding 220,000,000 @ 2018-11-30 STALE BY ~8 YEARS. What the screen used.
Diluted weighted average, Q1 FY27 (income statement) 254,313k Used for market cap
Basic weighted average, Q1 FY27 253,891k Cross-check
12 months forward (my estimate) ~243m Forward per-share work

Root cause. Workday has Class A and Class B common stock — the Q1 FY27 release states repurchases of "approximately 12.0 million shares of Class A common stock." The cover-page share count is therefore tagged dimensionally, per class, and dimensional tagging does not survive SEC's aggregation into companyfacts. The aggregated series stops at 2018-11-30 and a pipeline that takes "the latest available value" gets an eight-year-old number that is well-formed, non-null, and wrong.

The mandated cross-check catches it in one line:

Arithmetic Filed diluted EPS Result
Correct count 222 ÷ 254.313 = $0.873 $0.87 PASS ✓
Screen's count 222 ÷ 220 = $1.009 $0.87 FAIL — 16% off

Consequence: market cap $42,718m rather than $36,954m (+15.6% at the screen's own price, 13.5% understated), EV/S 4.20x rather than 3.50x, EV/EBIT 40.5x rather than 46.3x (the EV/EBIT moves the other way because the screen's net-cash figure was also low). This is load-bearing on WDAY specifically, because it moves the implied-path margin by roughly 2pp and the verdict is decided inside 3pp.

Generalisable rule this establishes: for any dual-class issuer, dei:EntityCommonStockSharesOutstanding in companyfacts must be treated as INDETERMINATE and the count read from the financial statements. The net income ÷ shares ≈ filed EPS check is not optional — it is the only cheap detector for this class of error, and it would also have caught the CRWD 4x split error in this same cluster.


3. Quarterly series construction

Workday's fiscal Q4 is not separately tagged in XBRL; only the full year is. Q4 is derived as the annual value less the three filed quarters, with contiguity enforced (consecutive period ends 80–100 days apart) before any TTM is summed.

Quarter ended Revenue ($m) Derivation
2025-04-30 2,240 filed 10-Q
2025-07-31 2,348 filed 10-Q
2025-10-31 2,432 filed 10-Q
2026-01-31 2,532 derived: FY26 9,552 − (2,240 + 2,348 + 2,432)
2026-04-30 2,542 filed 10-Q

TTM revenue = 2,348 + 2,432 + 2,532 + 2,542 = $9,854m. Matches the screen exactly. Last-FY revenue ($9,552m) would have understated the base by 3.2%.


4. Gross margin — derived, because Workday publishes no GrossProfit tag

The screen returned gross_margin_pct: null and scored quality: INDETERMINATE. That is correct D1 handling — a missing input is INDETERMINATE, never FAIL, and the screen did not repeat the nan > 0.50 → FAIL error that silently rejected NBIS and CAI. But the input is derivable from the income statement, so the criterion should have been scored on real data rather than left blank.

($m) Q1 FY27 Q1 FY26
Subscription services revenue 2,354 2,059
Costs of subscription services 412 350
Subscription gross margin 82.5% 83.0% (−0.5pp)
Professional services revenue 188 181
Costs of professional services 192 187
Professional services gross margin −2.1% −3.3%
Total gross margin 76.2% 76.0%

Two facts unavailable to the screen: subscription gross margin is compressing 0.5pp — the largest of the three "cheap" names in this cluster (ADBE −0.18pp) and the closest thing in Workday's filings to a visible AI inference cost, though the filing does not attribute it; and professional services runs at a negative gross margin by design, as deployments shift to partners (services revenue is shrinking 1% a year).


5. Net cash

Component 2026-04-30 ($m) Screen Mine
Cash and cash equivalents 559
Marketable securities (current) 3,794
Debt, current (998)
Debt, noncurrent (1,990)
Operating lease liabilities, noncurrent (686) counted as debt disclosed, excluded
Operating lease liabilities, current (131) omitted disclosed, excluded
Net cash ex-lease +1,365 +679 HEADLINE
Net cash incl. all leases +548 Alternative

Tags checked per the brief: LongTermDebt 2,988 @ 2026-04-30 — equals current 998 + noncurrent 1,990, so LongTermDebt is the TOTAL and adding it to the components would double-count $3.0bn; LongTermDebtCurrent 998 ✓; LongTermDebtNoncurrent 1,990 ✓; ConvertibleDebtNoncurrent last filed 2020-01-31 at $1,018m — stale by six years and must not be used; MarketableSecuritiesCurrent 3,794 ✓ live.

Note that Workday is the one name of the five where every debt tag is internally consistent and current, so no sign error was possible. Contrast ADBE (term debt omitted entirely because it is tagged LongTermDebt while the screen keyed on LongTermDebtNoncurrent, last filed 2015) and PANW (convertible notes and long-term investments both missed). The screen's $686m discrepancy here is a defensible lease-treatment choice, disclosed, not an error.


6. Adjustments applied, with reasons

# Adjustment Effect Why
1 Share count 220.0m → 254.313m market cap +15.6% §2. The stale dual-class dei tag.
2 Add back the prior-year $166m restructuring to the Q1 FY26 margin base headline expansion +11.5pp → +4.1pp The reported comparison is 1.8% → 13.3%; ex-restructuring it is 9.2% → 13.3%. Two-thirds of the headline expansion is a base effect. The company discloses the charge twice in the release, so this is not concealed — but the headline is what a screen reads.
3 Derive gross margin from the income statement Quality INDETERMINATE → PASS §4.
4 Reclassify archetype INFLECTION → COMPOUNDER applies level-based quality tests Research §10. Under INFLECTION, operating margin is tested as a CHANGE requiring ~+5pp — which the unadjusted +11.5pp clears and the adjusted +4.1pp does not. Getting the archetype and the one-off wrong together would have produced a spuriously confident PASS.
5 Use 13.5% run-rate rather than the 15.4% CAGR as demonstrated growth margin −1.9pp harsher The CAGR window smooths a real deceleration. Per the brief: use the run-rate.
6 Step shares to ~243m for forward work +4.7% to forward per-share values Evidenced: 12.0m repurchased in Q1 FY27 alone. Deliberately conservative against a run-rate that would retire more.
7 Exclude operating leases from headline net cash EV +$817m vs incl-lease Consistency with the peer anchor set, computed on the same basis.

No SBC adjustment. SBC is real, it is 17.0% of revenue and 226% of GAAP operating income, and the 10.4% GAAP operating margin carries it. The guided 30.5% non-GAAP operating margin is reported for reference and is never used as a terminal margin — using it would produce a required CAGR of 4.4% and a +9.1pp margin, i.e. it would manufacture a PASS out of an accounting convention. That the choice between 10.4% and 30.5% decides the verdict is stated openly in Valuation §3 rather than resolved silently.


7. What the model deliberately does not contain


8. Known weaknesses in my own numbers

Stated so a reviewer can attack them.

  1. The 20% terminal operating margin decides the verdict and I cannot defend it against 18% or 25%. The sensitivity is published in full (Valuation §3): FAIL at 15%, INSIDE NOISE at 18–20%, PASS at 25%. Today's TTM is 10.4%; the guided non-GAAP is 30.5%; the gap is SBC. This is the single largest acknowledged weakness in this memo, and it is why the verdict is INDETERMINATE rather than either PASS or FAIL. Any reader who has a view on Workday's steady-state GAAP margin has, in effect, the answer — and the analysis does not supply that view.
  2. The regime-change threshold of 5pp is my convention, not the framework's. valuation.md says to declare UNIDENTIFIED where the history "spans a regime change" without quantifying it. WDAY fails at −5.5pp; at a 6pp threshold it would pass and the 12-month target would be $372 rather than $203. The threshold is stated, applied uniformly to all five names, and not tuned per name — which is the only defence available.
  3. NTM revenue of $11,350m adds a ~$780m professional-services estimate to the guided subscription figure. Services revenue is declining ~1%/yr, so holding it flat is mildly generous. If services falls to $710m, NTM is ~$11,280m and the target moves $203 → $202. Immaterial.
  4. The forward share count of ~243m assumes buybacks continue at a reduced pace. Q1 FY27 alone retired 12.0m shares; four such quarters would take the count to ~215m and the target to ~$229. My figure is conservative, which biases the target down.
  5. The P/S history uses a 45-day post-period-end price proxy, not actual filing dates. Noise of a few percent per observation; does not move the 10th-percentile conclusion.
  6. The anchor set has six usable members after excluding WDAY itself (40.5x on an unnormalised margin) and ADP. Six is thin for a median, so the full 11.6x–27.7x range is carried through every sensitivity.
  7. I have not established what caused the 0.5pp subscription gross-margin compression. AI inference cost is the obvious candidate and Workday's filings do not attribute it. I do not assert the attribution — I record the compression and flag it as the metric to watch.