SPS COMMERCE INC
SPSC · Services-Prepackaged Software · 36.7M shares · +1%/yr ↑ shares · EDGAR filings ↗
Reference price $57.03 · est. market cap ~$2.1B — last insider sale, 2026-05-07 (estimated from the dated SEC Form 4 price × shares outstanding — not a live quote)
Grade
B78Retail supply-chain SaaS network with strong growth, profitability, and recurring revenue.
Strengths
- Strong growth and earnings — revenue +17.8%, net income +21.1% (76th)
- Solid margins and returns — operating margin 15.7% (78th), ROA 8.0% (79th)
- Strong FCF — $152.3M, FCF margin 20.3%
Risks
- Retail-IT-spending cyclicality — per 10-K
- Competition in EDI/supply-chain networks — per 10-K
- Premium valuation — per 10-K
Notable findings
- Fund exitedNotable fund(s) exited this quarter: VANGUARD GROUP INC, Bridgewater Associates, LP
- Customer concentration~100% of revenue from one customer/distributor — Results of Operations Year Ended December 31, 2025 Compared to Year Ended December 31, 2024 The following table presents our results of operations for the periods indicated: Year Ended December
- Exec changeRecent 8-K item 5.02 8-K ↗
- Strong balance sheetStrong balance sheet — $151M cash & investments
- Notable holderHeld by 5 notable fund(s): STATE STREET CORP, GOLDMAN SACHS GROUP INC, CITADEL ADVISORS LLC +2 more (as of 2026-03-31)
- New fund positionNotable fund(s) opened this quarter: RENAISSANCE TECHNOLOGIES LLC
- Insider sellingInsider selling — 14 open-market sale(s) by 4 insider(s) (cluster of 4 insiders, ~$2M, last 6mo) Form 4 ↗
Quarterly revenue
Last 4 quarters · from SEC filings.
Key metrics
Gross margin
69.2%
Operating margin
15.7%
Net margin
12.4%
Return on equity
9.6%
Return on assets
8.0%
Revenue growth (QoQ)
-0.3%
Net-income growth
21.1%
Current ratio
2.2×
Free cash flow
$152M
EBITDA
$139M
Tangible book value
$216M
Cash & investments
$151M
Stock comp / revenue
7.1%
Insider transactions · last 18 months
| Date | Insider | Type | Shares | Price |
|---|---|---|---|---|
| 2026-05-28 | Partin Mark | Grant | 3.7K | — |
| 2026-05-28 | Reaume Marty M | Grant | 3.7K | — |
| 2026-05-28 | Reller Tami | Grant | 3.7K | — |
| 2026-05-28 | SORAN PHILIP | Grant | 3.7K | — |
| 2026-05-28 | Chima Fumbi F. | Grant | 3.7K | — |
| 2026-05-28 | Ward Anne Sempowski | Grant | 3.7K | — |
| 2026-05-28 | Gaurav Razat | Grant | 3.7K | — |
| 2026-05-28 | McConnell Michael J | Grant | 3.7K | — |
| 2026-05-08 | THINGELSTAD JAMIE | Grant | 39K | — |
| 2026-05-07 | Del Preto Joseph | Grant | 108K | — |
| 2026-05-07 | Reaume Marty M | Option exercise | 1.0K | $51.80 |
| 2026-05-07 | Reaume Marty M | Sell | 1.0K | $57.03 |
| 2026-05-07 | Del Preto Joseph | Grant | 33K | — |
| 2026-04-07 | Reaume Marty M | Sell | 1.0K | $57.90 |
| 2026-04-07 | Reaume Marty M | Option exercise | 1.0K | $51.80 |
| 2026-03-13 | Reller Tami | Option exercise | 5.7K | $51.80 |
| 2026-03-09 | Reaume Marty M | Option exercise | 1.0K | $51.80 |
| 2026-03-09 | Reaume Marty M | Sell | 1.0K | $62.73 |
| 2026-02-24 | THINGELSTAD JAMIE | Sell | 1.9K | $54.80 |
| 2026-02-24 | THINGELSTAD JAMIE | Sell | 518 | $55.47 |
| 2026-02-20 | Collins Chadwick | Grant | 102K | — |
| 2026-02-20 | Collins Chadwick | Sell | 7.8K | $58.09 |
| 2026-02-20 | Collins Chadwick | Sell | 2.8K | $59.18 |
| 2026-02-20 | Collins Chadwick | Sell | 2.8K | $59.72 |
| 2026-02-20 | Nelson Kimberly K. | Sell | 3.7K | $58.09 |
| 2026-02-20 | Nelson Kimberly K. | Sell | 1.2K | $59.19 |
| 2026-02-20 | Nelson Kimberly K. | Sell | 1.4K | $59.70 |
| 2026-02-20 | Nelson Kimberly K. | Grant | 40K | — |
| 2026-02-20 | Rosini Eduardo | Grant | 29K | — |
| 2026-02-20 | Chima Fumbi F. | Grant | 3.5K | — |
| 2026-02-20 | McConnell Michael J | Grant | 3.5K | — |
| 2026-02-20 | THINGELSTAD JAMIE | Grant | 23K | — |
| 2026-02-09 | Reaume Marty M | Sell | 1.0K | $79.92 |
| 2026-02-09 | Reaume Marty M | Option exercise | 1.0K | $51.80 |
| 2026-01-07 | Reaume Marty M | Option exercise | 1.7K | $51.80 |
| 2026-01-07 | Reaume Marty M | Sell | 400 | $91.40 |
| 2026-01-07 | Reaume Marty M | Sell | 1.3K | $92.52 |
| 2025-12-01 | Rosini Eduardo | Grant | 81K | — |
| 2025-11-18 | SORAN PHILIP | Option exercise | 5.7K | $51.80 |
| 2025-11-18 | SORAN PHILIP | Tax withheld | 3.7K | $79.89 |
| 2025-11-06 | Partin Mark | Grant | 2.5K | — |
| 2025-11-04 | THINGELSTAD JAMIE | Option exercise | 8.1K | $54.54 |
| 2025-11-04 | THINGELSTAD JAMIE | Tax withheld | 6.6K | $82.53 |
| 2025-05-13 | Gaurav Razat | Grant | 1.3K | — |
| 2025-05-13 | SORAN PHILIP | Grant | 1.3K | — |
| 2025-05-13 | Ward Anne Sempowski | Grant | 1.3K | — |
| 2025-05-13 | WEHRWEIN SVEN | Grant | 1.3K | — |
| 2025-05-13 | Reaume Marty M | Grant | 1.3K | — |
| 2025-05-13 | Reller Tami | Grant | 1.3K | — |
| 2025-03-26 | Reller Tami | Option exercise | 6.6K | $37.22 |
| 2025-02-26 | Nelson Kimberly K. | Sell | 495 | $137.03 |
| 2025-02-26 | Nelson Kimberly K. | Sell | 1.1K | $138.33 |
| 2025-02-26 | Nelson Kimberly K. | Sell | 1.3K | $139.34 |
| 2025-02-26 | Nelson Kimberly K. | Sell | 2.6K | $136.29 |
| 2025-02-20 | Collins Chadwick | Sell | 510 | $144.56 |
| 2025-02-20 | Collins Chadwick | Sell | 1.1K | $143.92 |
| 2025-02-20 | Collins Chadwick | Sell | 100 | $145.58 |
| 2025-02-20 | Nelson Kimberly K. | Sell | 856 | $144.01 |
| 2025-02-20 | Nelson Kimberly K. | Sell | 500 | $144.54 |
| 2025-02-20 | Nelson Kimberly K. | Sell | 100 | $145.58 |
| 2025-02-20 | Juckniess Dan | Sell | 447 | $143.94 |
| 2025-02-20 | Juckniess Dan | Sell | 216 | $144.67 |
| 2025-02-20 | Juckniess Dan | Sell | 72 | $145.59 |
| 2025-02-20 | THINGELSTAD JAMIE | Sell | 555 | $143.99 |
| 2025-02-20 | THINGELSTAD JAMIE | Sell | 185 | $145.20 |
| 2025-02-19 | Juckniess Dan | Sell | 447 | $143.94 |
| 2025-02-19 | Juckniess Dan | Sell | 1.2K | $148.98 |
| 2025-02-19 | Juckniess Dan | Sell | 216 | $144.67 |
| 2025-02-19 | Juckniess Dan | Sell | 72 | $145.59 |
| 2025-02-19 | THINGELSTAD JAMIE | Sell | 555 | $143.99 |
| 2025-02-19 | Juckniess Dan | Sell | 991 | $146.75 |
| 2025-02-19 | Juckniess Dan | Sell | 400 | $148.26 |
| 2025-02-19 | Juckniess Dan | Sell | 1.2K | $148.98 |
| 2025-02-19 | THINGELSTAD JAMIE | Sell | 400 | $149.24 |
| 2025-02-19 | THINGELSTAD JAMIE | Sell | 910 | $148.65 |
| 2025-02-19 | THINGELSTAD JAMIE | Sell | 906 | $146.74 |
| 2025-02-19 | THINGELSTAD JAMIE | Sell | 906 | $146.74 |
| 2025-02-19 | THINGELSTAD JAMIE | Sell | 910 | $148.65 |
| 2025-02-19 | THINGELSTAD JAMIE | Sell | 400 | $149.24 |
| 2025-02-19 | Collins Chadwick | Sell | 1.0K | $146.74 |
| 2025-02-19 | Collins Chadwick | Sell | 312 | $147.97 |
| 2025-02-19 | Collins Chadwick | Sell | 1.3K | $148.96 |
| 2025-02-19 | Collins Chadwick | Sell | 200 | $150.01 |
| 2025-02-19 | Collins Chadwick | Sell | 1.1K | $143.92 |
| 2025-02-19 | Collins Chadwick | Sell | 510 | $144.56 |
| 2025-02-19 | Collins Chadwick | Sell | 100 | $145.58 |
| 2025-02-19 | Nelson Kimberly K. | Sell | 1.5K | $146.84 |
| 2025-02-19 | Nelson Kimberly K. | Sell | 880 | $148.40 |
| 2025-02-19 | Nelson Kimberly K. | Sell | 1.4K | $149.07 |
| 2025-02-19 | Nelson Kimberly K. | Sell | 300 | $150.05 |
| 2025-02-19 | Nelson Kimberly K. | Sell | 856 | $144.01 |
| 2025-02-19 | Nelson Kimberly K. | Sell | 500 | $144.54 |
| 2025-02-19 | Nelson Kimberly K. | Sell | 100 | $145.58 |
| 2025-02-19 | Collins Chadwick | Sell | 1.0K | $146.74 |
| 2025-02-19 | Collins Chadwick | Sell | 312 | $147.97 |
| 2025-02-19 | Collins Chadwick | Sell | 1.3K | $148.96 |
| 2025-02-19 | Collins Chadwick | Sell | 200 | $150.01 |
| 2025-02-19 | Juckniess Dan | Sell | 400 | $148.26 |
| 2025-02-19 | Juckniess Dan | Sell | 991 | $146.75 |
| 2025-02-19 | Nelson Kimberly K. | Sell | 1.5K | $146.84 |
| 2025-02-19 | Nelson Kimberly K. | Sell | 880 | $148.40 |
| 2025-02-19 | Nelson Kimberly K. | Sell | 1.4K | $149.07 |
| 2025-02-19 | Nelson Kimberly K. | Sell | 300 | $150.05 |
| 2025-02-19 | THINGELSTAD JAMIE | Sell | 185 | $145.20 |
| 2025-02-18 | Collins Chadwick | Grant | 36K | — |
| 2025-02-18 | THINGELSTAD JAMIE | Grant | 9.2K | — |
| 2025-02-18 | THINGELSTAD JAMIE | Grant | 12K | — |
| 2025-02-18 | Juckniess Dan | Grant | 1.4M | — |
| 2025-02-18 | THINGELSTAD JAMIE | Grant | 1.7M | — |
| 2025-02-18 | Juckniess Dan | Grant | 12K | — |
| 2025-02-18 | Juckniess Dan | Grant | 9.2K | — |
| 2025-02-18 | Collins Chadwick | Grant | 5.2M | — |
| 2025-02-18 | Nelson Kimberly K. | Grant | 16K | — |
| 2025-02-18 | Nelson Kimberly K. | Grant | 2.3M | — |
| 2025-02-05 | Nelson Kimberly K. | Sell | 5.4K | $181.07 |
| 2025-02-05 | Nelson Kimberly K. | Sell | 2.0K | $180.33 |
| 2025-02-05 | Nelson Kimberly K. | Sell | 1.7K | $181.87 |
| 2025-02-05 | Nelson Kimberly K. | Sell | 200 | $182.74 |
| 2025-01-31 | Juckniess Dan | Sell | 200 | $186.34 |
| 2025-01-31 | THINGELSTAD JAMIE | Sell | 68 | $184.78 |
| 2025-01-31 | Juckniess Dan | Sell | 1.0K | $184.32 |
| 2025-01-31 | Juckniess Dan | Sell | 1.2K | $185.04 |
| 2025-01-30 | Juckniess Dan | Sell | 1.3K | $186.43 |
| 2025-01-30 | Juckniess Dan | Sell | 501 | $187.46 |
| 2025-01-30 | Juckniess Dan | Sell | 299 | $188.29 |
| 2025-01-30 | Nelson Kimberly K. | Sell | 4.5K | $183.46 |
| 2025-01-30 | Nelson Kimberly K. | Sell | 900 | $184.19 |
| 2025-01-30 | Nelson Kimberly K. | Sell | 1.6K | $185.29 |
| 2025-01-30 | Nelson Kimberly K. | Sell | 1.3K | $186.38 |
| 2025-01-30 | Nelson Kimberly K. | Sell | 655 | $187.54 |
| 2025-01-30 | Nelson Kimberly K. | Sell | 245 | $188.35 |
| 2025-01-30 | THINGELSTAD JAMIE | Sell | 2.3K | $183.47 |
| 2025-01-30 | Juckniess Dan | Sell | 4.4K | $183.41 |
| 2025-01-30 | Juckniess Dan | Sell | 1.4K | $184.25 |
| 2025-01-30 | Juckniess Dan | Sell | 1.9K | $185.35 |
| 2025-01-30 | THINGELSTAD JAMIE | Sell | 100 | $188.55 |
| 2025-01-30 | THINGELSTAD JAMIE | Sell | 700 | $187.58 |
| 2025-01-30 | THINGELSTAD JAMIE | Sell | 700 | $186.57 |
| 2025-01-30 | THINGELSTAD JAMIE | Sell | 626 | $185.52 |
| 2025-01-30 | THINGELSTAD JAMIE | Sell | 316 | $184.27 |
| 2025-01-29 | Juckniess Dan | Grant | 12K | — |
| 2025-01-29 | THINGELSTAD JAMIE | Grant | 12K | — |
| 2025-01-29 | Nelson Kimberly K. | Grant | 19K | — |
| 2024-12-31 | Juckniess Dan | Sell | 700 | $185.17 |
| 2024-12-31 | Juckniess Dan | Sell | 2.8K | $184.14 |
| 2024-12-31 | Juckniess Dan | Sell | 200 | $183.11 |
All non-derivative Form 4 activity (SEC), newest first.
Notable events (8-K)
| Date | Items | |
|---|---|---|
| 2026-05-28 | Shareholder voteExhibits | filing ↗ |
| 2026-05-21 | Exec/director change | filing ↗ |
| 2026-04-30 | ResultsExhibits | filing ↗ |
| 2026-04-14 | Exec/director changeExhibits | filing ↗ |
| 2026-02-12 | Material agreementExec/director changeReg FDExhibits | filing ↗ |
| 2026-02-12 | ResultsExec/director changeReg FDOtherExhibits | filing ↗ |
| 2025-10-30 | ResultsExec/director changeOtherExhibits | filing ↗ |
| 2025-08-20 | Exec/director change | filing ↗ |
Recent filings
| Form | Filed | Period | Accession |
|---|---|---|---|
| 8-K | 2026-05-28 | 2026-05-28 | 0001092699-26-000054 ↗ |
| 8-K | 2026-05-21 | 2026-05-20 | 0001092699-26-000051 ↗ |
| 10-Q | 2026-04-30 | 2026-03-31 | 0001092699-26-000043 ↗ |
| 8-K | 2026-04-30 | 2026-04-30 | 0001092699-26-000042 ↗ |
| 8-K | 2026-04-14 | 2026-04-10 | 0001092699-26-000028 ↗ |
| 10-K | 2026-02-19 | 2025-12-31 | 0001092699-26-000012 ↗ |
| 8-K | 2026-02-12 | 2026-02-10 | 0001092699-26-000007 ↗ |
| 8-K | 2026-02-12 | 2026-02-12 | 0001092699-26-000008 ↗ |
| 8-K | 2025-10-30 | 2025-10-29 | 0001092699-25-000062 ↗ |
| 10-Q | 2025-10-30 | 2025-09-30 | 0001092699-25-000064 ↗ |
| 8-K | 2025-08-20 | 2025-08-18 | 0001092699-25-000056 ↗ |
| 8-K | 2025-07-30 | 2025-07-30 | 0001092699-25-000047 ↗ |