> Analyze SaaS company valuation compression between funding rounds. Use this skill between rounds, why the ARR multiple compressed or expanded, comparing a company's compression to macro benchmarks, or explaining what drove valuation changes for any VC-backed software company. Trigger on phrases like "valuation compression", "ARR multiple", "round-to-round valuation", "multiple change", or when the user asks to compare a company's funding rounds. Always use this skill for any multi-round SaaS valuation analysis — do not try to answer from memory alone.
npx skills add https://github.com/himself65/finance-skills --skill saas-valuation-compression
For a given SaaS company, research its funding history and compute ARR-based valuation
multiples at each round. Then explain the compression (or expansion) using a structured
framework that covers macro rates, growth trajectory, narrative shifts, and comparables.
Always render the output as an inline visualization (using the Visualizer tool) plus a
concise prose explanation. Do not just return a wall of numbers.
Search for each of the following. Run searches in parallel where possible.
For the target company:
[company] funding rounds valuation ARR revenue[company] Series [X] raised valuation for each round[company] annual recurring revenue ARR [year] for each round date[company] investors lead investor [round]For macro context:
SaaS ARR valuation multiples [year] private marketFor narrative context:
[company] AI customers product announcement [year] — AI narrative premium?[company] growth rate churn NRR [year] — fundamentals shift?For each funding round, extract or estimate:
| Field | How to get it |
|---|---|
| Round name | Direct from search |
| Date | Direct from search |
| Amount raised | Direct from search |
| Post-money valuation | Direct or compute from ownership %; if unavailable, note as estimated |
| ARR at round date | Search explicitly; if not found, estimate from customer count x ARPC or interpolate |
| ARR multiple | valuation / ARR |
| Lead investor | Direct |
ARR estimation heuristics (when not public):
For each consecutive round pair (e.g., B → C):
multiple_compression_pct = (later_multiple - earlier_multiple) / earlier_multiple × 100
valuation_growth_pct = (later_val - earlier_val) / earlier_val × 100
arr_growth_pct = (later_arr - earlier_arr) / earlier_arr × 100
Key insight: valuation_growth = arr_growth + multiple_change
If ARR grows faster than the multiple compresses, absolute valuation still rises.
Use this checklist. For each cause, rate it: Primary / Contributing / Not applicable.
Macro / Rate Environment
| Period | Approx Median ARR Multiple (private) | Context |
|---|---|---|
| 2019 | ~8–12x | Pre-pandemic baseline |
| 2020 | ~12–18x | ZIRP begins, multiple expansion |
| 2021 Q1–Q3 peak | ~35–45x | Peak bubble |
| 2022 H2 | ~15–20x | Rate hikes begin, first compression wave |
| 2023 trough | ~8–12x | Rate plateau, valuation reset |
| 2024 | ~12–18x | AI narrative recovery, selective re-rating |
| 2025 H1 | ~16–22x | Continued AI-driven recovery |
| 2025 H2–2026 Q1 | ~10–16x | Tariff shock / trade-war selloff begins |
| 2026 Q2 (Apr meltdown) | ~6–10x | Software Meltdown — broad sector crash, public SaaS down 40–86% from 52w highs |
*(These are rough private market estimates. Public SaaS multiples are ~30–50% lower. The April 2026 figures reflect the acute selloff; private marks typically lag public by 1–2 quarters.)*
Growth Deceleration
Narrative Shift
AI Premium (positive or negative)
Competitive / Market
Investor Supply / Demand
Use the Visualizer tool to render:
See design guidance: use teal for positive/growth, coral for compression/negative, gray for macro baseline, blue for valuation figures. Follow the CSS variable system throughout.
Structure as:
Always produce:
Use these as context when search results are thin or for the comparison chart.
| Company | Round pair | Earlier multiple | Later multiple | Compression % | Primary cause |
|---|---|---|---|---|---|
| Vercel | D → E (2021→2024) | ~140x | ~32x | -77% | ZIRP unwind + growth decel |
| WorkOS | B → C (2022→2026) | ~105x | ~67x | -36% | Partial ZIRP unwind; defended by AI narrative |
| Netlify | B → stalled (2021→?) | ~90x | N/A | N/A | No new round; AI narrative absent |
| Fastly | Public (2021 peak→2024) | ~35x rev | ~3x rev | -91% | No AI pivot, growth decel |
| Stripe | — | — | — | — | Private; est. flat/compressed 2021→2023 down round |
| HashiCorp | Acquired by IBM 2024 | — | — | — | Acq at ~8x ARR vs ~40x peak |
As of April 9, 2026, a broad tariff/trade-war driven selloff crushed public software valuations. Use these as reference for how private multiples will lag-compress over the following 1–2 quarters.
| Ticker | Company | Δ from 52w High | Sector relevance |
|---|---|---|---|
| FIG | Figma | -86.7% | Design/dev tools — worst hit |
| MNDY | monday.com | -80.2% | Work management SaaS |
| TEAM | Atlassian | -75.7% | Dev tools / collaboration |
| HUBS | HubSpot | -69.9% | Marketing/CRM SaaS |
| WIX | WIX | -65.1% | Website builder |
| GTLB | GitLab | -63.6% | DevOps |
| CVLT | Commvault | -61.7% | Data protection |
| WDAY | Workday | -59.1% | HR/Finance SaaS |
| NOW | ServiceNow | -57.8% | Enterprise IT workflows |
| INTU | Intuit | -56.0% | FinTech/SMB SaaS |
| SNOW | Snowflake | -52.8% | Data cloud |
| KVYO | Klaviyo | -52.9% | Marketing automation |
| DOCU | DocuSign | -52.3% | eSignature |
| MDB | MongoDB | -47.9% | Database |
| SAP | SAP | -47.6% | Enterprise ERP |
| DDOG | Datadog | -45.7% | Observability |
| APP | AppLovin | -47.6% | AdTech/mobile |
| CRM | Salesforce | -42.5% | CRM market leader |
| ADBE | Adobe | -34.6% | Creative/doc SaaS |
| ZM | Zoom | -13.9% | Video/collab (already de-rated) |
*Source: @speculator_io, April 9, 2026. Average drawdown across tracked software names: ~50–55%.*
Create new skills, modify and improve existing skills, and measure skill performance. Use when users want to create a skill from scratch, edit, or optimize an existing skill, run evals to test a skill, benchmark skill performance with variance analysis, or optimize a skill's description for better triggering accuracy.
Access NCBI GEO for gene expression/genomics data. Search/download microarray and RNA-seq datasets (GSE, GSM, GPL), retrieve SOFT/Matrix files, for transcriptomics and expression analysis.
Bayesian modeling with PyMC. Build hierarchical models, MCMC (NUTS), variational inference, LOO/WAIC comparison, posterior checks, for probabilistic programming and inference.
Multi-objective optimization framework. NSGA-II, NSGA-III, MOEA/D, Pareto fronts, constraint handling, benchmarks (ZDT, DTLZ), for engineering design and optimization problems.
Statistical modeling toolkit. OLS, GLM, logistic, ARIMA, time series, hypothesis tests, diagnostics, AIC/BIC, for rigorous statistical inference and econometric analysis.
Add unsigned integer (uint) type support to PyTorch operators by updating AT_DISPATCH macros. Use when adding support for uint16, uint32, uint64 types to operators, kernels, or when user mentions enabling unsigned types, barebones unsigned types, or uint support.
Convert PyTorch AT_DISPATCH macros to AT_DISPATCH_V2 format in ATen C++ code. Use when porting AT_DISPATCH_ALL_TYPES_AND*, AT_DISPATCH_FLOATING_TYPES*, or other dispatch macros to the new v2 API. For ATen kernel files, CUDA kernels, and native operator implementations.
Write docstrings for PyTorch functions and methods following PyTorch conventions. Use when writing or updating docstrings in PyTorch code.
Take himself65/saas-valuation-compression from the repository into ~/.claude/skills for personal
use, or into .claude/skills inside a project.
The agent identifies a skill by the name field in its header. Two skills with the
same name cannot sit side by side — one of them will be ignored.