Stryker [SYK]
Workbook: SYK_Financial_Model.xlsx · Built: 2026-07-28 · Six tabs, live formulas throughout
| Tab | Contents |
|---|---|
| 1. Assumptions | Scenario switch (C5: 1=Bear, 2=Base, 3=Bull) driving the entire workbook via CHOOSE; an 18-row scenario input grid; market and valuation inputs; a live WACC build |
| 2. Income Statement | FY2023A–FY2025A actuals + FY2026E–FY2030E, GAAP and the company's non-GAAP measures side by side, with the adjusted-vs-GAAP gap computed as a row |
| 3. Balance Sheet | Working-capital days drivers, cash as the cash-flow plug, an equity roll-forward, and a hard balance check |
| 4. Cash Flow | Full three-section statement with the working-capital change derived from the balance sheet, plus FCF, FCF conversion and M&A-as-%-of-CFO memos |
| 5. DCF | Unlevered FCF, WACC discounting, perpetuity terminal value — and a reverse DCF that solves for the growth the current price implies |
| 6. Scenarios & Comps | Scenario grid, the Valuation Criteria expected-return test with flip point, comparables, SYK's own NTM P/E history, and the required base-rate check |
Formatting convention (standing user preference): the top line of each statement block carries the $;
rows beneath are plain. Blue = hardcoded input, black = formula.
Excel was unavailable. A concurrent agent held the Microsoft Excel application with another ticker's
workbook open; closing it (as the standard verification recipe requires) would have destroyed that agent's work.
The workbook was instead verified with the formulas Python package — an independent implementation that
re-parses and re-evaluates every formula in the file from scratch. This is arguably a stronger check than an
Excel readback, because it does not share Excel's evaluation engine.
That check caught a real bug. Scenarios & Comps!C28 (the Valuation Criteria flip-point cell) had a mismatched
parenthesis; the engine refused to compile the workbook and named the cell. Excel would have shown a dialog. The
cell was repaired and the workbook recompiled clean. A second pass found and fixed two cells referencing
Assumptions!$C$50 (share count) where $C$49 (share price) was intended.
Every FY2025A line reproduces the filed 10-K figure exactly:
| Line | Model | Filed | |
|---|---|---|---|
| Net sales | 25,116 | 25,116 | ✔ |
| Gross profit | 16,065 | 16,065 | ✔ |
| Total operating expenses | 11,176 | 11,176 | ✔ |
| Operating income | 4,889 | 4,889 | ✔ |
| Earnings before income taxes | 4,514 | 4,514 | ✔ |
| Net earnings | 3,246 | 3,246 | ✔ |
| Diluted EPS | $8.40 | $8.40 | ✔ |
| Total assets | 47,844 | 47,844 | ✔ |
| Total liabilities | 25,424 | 25,424 | ✔ |
| Shareholders' equity | 22,420 | 22,420 | ✔ |
| Cash from operations | 5,044 | 5,044 | ✔ |
One line is derived and is flagged rather than hidden. "Other income, net" of $207m is a plug
(4,514 − 4,889 + 582). The filed NonoperatingIncomeExpense tag reads $232m; the $25m difference is not
separately tagged in the SEC's company-facts dataset. The plug ties the statement to the filed pretax income,
which is the authoritative figure.
FY2026E–FY2030E: 0.0 / 0.0 / −0.0 / 0.0 / 0.0. The sheet balances and ties. Per the TWST lesson recorded in the skill, the balance check alone would prove nothing; it is the tie-out above that does the work.
| Bear | Base | Bull | |
|---|---|---|---|
| FY2026E revenue | $27,041m | $27,555m | $28,011m |
| FY2027E revenue | $28,934m | $30,172m | $31,232m |
| FY2030E revenue | $33,975m | $38,113m | $41,644m |
| FY2026E adjusted EPS | $14.16 | $15.07 | $15.68 |
| FY2027E adjusted EPS | $15.45 | $17.08 | $18.33 |
| FY2026E GAAP EPS | $9.65 | $10.42 | $10.97 |
| FY2026E free cash flow | $4,682m | $4,918m | $5,077m |
| DCF value per share | $278.48 | $330.80 | $381.14 |
Other verified outputs: WACC 7.53%; terminal value 82.6% of enterprise value; reverse-DCF implied perpetual FCF growth 3.22%; Valuation Criteria net E[R] +9.55%; flip point P(Bear) = 38.2%; break-even Base exit multiple 20.03x; E[R] holding the multiple at today's 20.73x +6.42%.
FY2026E revenue = 6,020 (Q1 2026 actual) + 19,250 (Q2–Q4 2025 base) × (1 + organic + FX + net M&A) + cyber
recovery
The cyber recovery is its own input line (Bear $0m / Base $225m / Bull $450m) rather than being buried in the growth rate. This matters because it is the single largest uncertainty in FY2026 and the entire house-vs-Street gap comes from it — consensus embeds essentially none of it. Making it a separate driver means Exhibit 29's bridge is honest and the sensitivity is visible.
Stryker's adjusted-vs-GAAP EPS gap has ranged from 28% to 77% of GAAP over six years and re-widened from 28% (FY2023) to 62% (FY2025). Deriving one from the other with a fixed spread would have hidden that. Both are built from their own margin and tax assumptions, and the gap is a computed row.
Note the FY2026 crossover: GAAP EPS is modelled up +24% while adjusted EPS is up only +11%, because FY2025 carried heavy Inari acquisition and integration charges that roll off. Q1-2026 already showed this — reported EPS +14.2% against adjusted EPS −8.5%.
Cash is the honest cash-flow plug (prior cash + net change in cash). The residual that makes the sheet balance goes into other non-current assets — deferred tax, equity investments, right-of-use assets — which is where a real modelling residual would actually sit. Plugging cash and forcing a balance would have double-counted. The line is relabelled in the workbook to say so.
Stryker spent $14.9bn on M&A over 2019-2025. Modelling zero future acquisitions would produce a company that does not exist. $1.5bn/yr is roughly the seven-year median ex-Wright/Inari, allocated 70% goodwill / 28% intangibles / 2% net tangible — consistent with the observed Inari allocation (95% of the $4.96bn went to goodwill and intangibles). This is why modelled tangible book value only turns positive around FY2029.
The DCF uses GAAP operating income with amortisation added back inside D&A — the standard treatment. Using adjusted operating income would capitalise the add-backs twice and would embed the assumption that a "structural optimization" charge now in its fourteenth consecutive quarter is genuinely non-recurring. It is not.
Measured beta versus SPY is 0.60 (3-year) and 0.23 (252-day) from Alpaca daily bars. The 252-day figure is implausibly low and reflects SYK trading on idiosyncratic news (the cyber incident) rather than market factors. 0.75 is used — above both measured values, deliberately conservative, and flagged in the Assumptions tab as judgement rather than measurement. At the measured 0.60, WACC falls to ~7.03% and the DCF rises to roughly $370.