Phase Space AI

Valuation

SPS Commerce [SPSC]

SPS Commerce, Inc. [SPSC] — Valuation

Two outputs, both required (valuation.md): a 12-month target and the implied-path test.

Spot $70.02 (2026-07-29 close). Shares 36,712,702 (10-Q cover, verified). Net cash $154,271k (cash only; zero debt, no marketable securities). TTM revenue $762,077k. TTM EBIT $116,906k (FY2025 $118,303k − Q1-2025 $25,956k + Q1-2026 $24,559k).

Market cap $2,570.6m · EV $2,416.3m · EV/TTM Sales 3.17x · EV/TTM EBIT 20.67x.


Part 1 — The implied-path test (the Valuation Criteria)

Terminal value is 100% of modelled EV by construction, so the reverse DCF is the primary long-horizon output.

The required parameter

Solved for: 5-year revenue CAGR. Held fixed and named: terminal EBIT margin 15.34% (= TTM realised); exit multiple 22.6x EBIT (as inherited from the screen); WACC 10.0%; horizon 5 years; net cash $154.3m; shares 36.713m.

EV implied by today's price      $2,416m   (3.17x TTM revenue)
>>> THE MARKET REQUIRES: revenue CAGR of 8.1%

The margin: demonstrated − required. This is where the name breaks.

Demonstrated basis Rate Margin vs 8.1% required
3-year revenue CAGR FY2022→FY2025 ($450.9m → $751.5m) — what the screen used 18.57% +10.5pp
4-year CAGR FY2021→FY2025 18.18% +10.1pp
FY2025 pro forma ex-Carbon6 (company's own audited pro forma: $680.9m → $755.7m) 11.0% +2.9pp
FY2026 company revenue guidance, midpoint ($799m) 6.5% −1.6pp
Q1-2026 actual 5.8% −2.3ppprimary
Q2-2026 company guidance, midpoint 4.5% −3.6pp

Primary margin: −2.3pp.

The screen's +11.5pp was arithmetically correct and analytically meaningless. It used a trailing three-year CAGR to characterise a business whose growth rate has fallen from +22.0% to +5.8% over four quarters and whose own management guides the current year to 6–7%. There is no input error to correct here — shares, net cash and TTM revenue all verify exactly. The failure is that a backward-looking average was used as a forward-looking capability estimate on a name where the two have diverged by twelve percentage points.

The exit multiple problem — the screen solved at a multiple above today's

valuation.md requires the implied compression to be stated as a number precisely so this cannot pass silently. A five-year exit multiple set above the current trading multiple, on a business decelerating from 22% to 6%, is anti-conservative and mechanically lowers the required CAGR. Provenance: exit_multiple_basis: GROWTH_MATCHED, exit_multiple_peer_n: 476. A 476-member comparator set cannot be growth-matched to a specific name in any meaningful sense, and I could not verify its composition.

At SPSC's own current 20.67x, the required CAGR is 10.0% — against a 6.5% guide, a margin of −3.5pp.

Sensitivity — over the exit multiple, never over scenario probabilities

Exit multiple (x EBIT) Required 5y revenue CAGR vs today's 20.67x Margin vs 6.5% FY26 guide
14.0x 18.9% −32.3% −12.4pp
17.0x 14.4% −17.8% −7.9pp
20.67x (today's own) 10.0% 0.0% −3.5pp
22.6x (screen) 8.1% +9.3% −1.6pp
26.0x 5.1% +25.8% +1.4pp
30.0x 2.1% +45.1% +4.4pp

The test only passes at an exit multiple of ~25x or above — a 21% expansion from today's 20.67x, on a business whose growth is one-third of what it was a year ago. There is no evidenced argument for that, and criteria.md is explicit that narrative does not qualify.

Terminal-margin cross-check. Holding growth at the FY2026 guide midpoint of 6.5%, the price requires a terminal EBIT margin of 16.5% against 15.3% realised — and against 12.8% in the latest quarter, where GAAP operating income fell year-on-year. The margin requirement is modest in isolation but points the wrong way against the current trend.

Result

FAIL.

Per criteria.md: "FAIL — the price requires materially more than demonstrated and the argument is narrative." The price requires 8.1% (or 10.0% at an honest exit multiple). The company guides 6–7%. The gap is not bridged by anything specific and evidenced in the filings — the named candidate is MAX, the AI capability set announced 2026-04-30, for which no revenue, pricing, customer count or timeline is disclosed anywhere. That is narrative.

Recorded for the calibration watch: this FAIL rests on management's own guidance, not on a house forecast and not on a haircut. If the framework is too strict elsewhere, it is not being strict here — it is reading the company's numbers.


Part 2 — The 12-month target: UNIDENTIFIED

valuation.md: "Anchor the multiple on the name's OWN trading range, with the current percentile stated … If the history is too short or spans a regime change, declare it UNIDENTIFIED rather than substituting a peer median."

The multiple history, and why it cannot be used

EV/TTM-Sales computed daily from Alpaca SIP closes over 866 sessions (2023-02-14 → 2026-07-29).

Window Low P25 Median P75 High Current 3.17x sits at
Full (866 sessions) 2.25x 5.65x 11.46x 12.33x 14.87x 13th percentile
Trailing 24 months 2.25x 3.96x 6.99x 10.75x 14.09x 23rd percentile
Trailing 12 months 2.25x 2.62x 3.97x 5.37x 7.64x 46th percentile

This is a textbook regime change, and the numbers say so without interpretation. The full-history median is 11.46x; the trailing-12-month median is 3.97x; today is 3.17x. The multiple has fallen by roughly 72% from its own median. The trailing-12-month window does not escape the problem — it is the transition itself, spanning 7.64x to 2.25x.

Applying each of those anchors to the same forward revenue gives:

Anchor Multiple Implied per share vs spot
12m P25 2.62x $62.86 −10.2%
Current, held unchanged 3.17x $75.20 +7.4%
12m median 3.97x $93.09 +32.9%
12m P75 5.37x $124.44 +77.7%
(full-history median 11.46x) 11.46x $260 +271%

A defensible range that spans $63 to $124 — a 98% width — carries no information. That is the evidence for declaring the anchor UNIDENTIFIED, and it is stated rather than resolved by picking a point.

12-month target: UNIDENTIFIED.

What can be said instead — the mechanical carry

The one number that does not require a multiple judgement is what the price does if the multiple does not change:

Forward revenue build (company guidance; no consensus available — Consensus Criteria INDETERMINATE):

Quarter $m Basis
Q2-2026 195.5 Company guidance $194.5–196.5m, midpoint (+4–5% YoY)
Q3-2026 204.5 derived: FY2026 guide $799m midpoint less Q1 actual and Q2 guide, split H2
Q4-2026 206.9 same derivation
Q1-2027 203.6 extrapolation at +6.0%
Q2-2027 207.2 extrapolation at +6.0%
TTM at 2027-06-30 (Q3-26…Q2-27) 822.2 the revenue base a 12-month multiple would apply to

At an unchanged 3.17x EV/Sales, the 12-month value is $75.20 — +7.4%. That +7.4% is simply the 6–7% revenue growth flowing through. There is no multiple expansion in it and no alpha in it.

Earnings-based cross-check (not a target)

FY2026 guidance Multiple at $70.02
GAAP diluted EPS $2.66–2.69 26.2x
Non-GAAP diluted EPS $4.73–4.76 14.8x
Adjusted EBITDA $262.8–267.3m 9.1x EV/adj. EBITDA

The non-GAAP figure is 108% above GAAP, bridged by $69.8m of guided share-based compensation and $37.4m of acquired-intangible amortisation. Both are consequences of the acquisition strategy, and adding them back to justify the multiple is circular: the acquisitions produced the growth that justified the old multiple, and their costs are then excluded to justify the new one.

Sanity band. No external professional target was available for this name in this run, so the required external cross-check is not performed. Stated rather than skipped.


Part 3 — Screen vs verified, summary

Screen Verified Status
Shares (m) 36.713 36.713
Net cash ($m) 154.3 154.3 (zero debt; −6.6 if operating leases deducted)
TTM revenue ($m) 762.1 762.1
EV / TTM Sales 3.09x 3.10x @$68.50 · 3.17x @$70.02
Operating margin 15.7% (FY25) 15.3% TTM · 12.8% latest quarter stale
Op margin Δ +1.8pp (FY25 v FY24) −1.5pp (Q1-26 v Q1-25) wrong sign, currently
Demonstrated CAGR 18.6% 5.8% latest quarter; 6–7% guided ✗ four quarters stale
Required CAGR 7.0% 8.1% @22.6x · 10.0% @today's 20.67x
Margin +11.5pp −2.3pp
Valuation Criteria PASS FAIL