Revenue was flat: $11.2M in FY2024 and $11.2M in FY2025, a change of ($5K) or (0.04%). Price and mix almost exactly offset a volume decline. The script reconciled to the cent in total and for every family and segment.

| Step | Amount |
| --- | --- |
| FY2024 | $11.2M |
| Volume | ($395K) |
| Mix | $135K |
| Price | $256K |
| FY2025 | $11.2M |

- **Price:** Paper drove the $256K price gain with $167K, led by Paper Mid-Market at $75K and Paper Enterprise at $63K. The data doesn't show why Paper priced up. Price lists or contract terms would answer that.
- **Mix:** This is mostly a segment shift. Enterprise lost ($627K) to mix, while SMB gained $399K and Mid-Market $362K. Paper Enterprise alone cost ($300K) of mix. Sales would need to say whether that volume moved to lower-tier accounts or was lost.
- **Volume:** Total units fell (3.5%). Print Consumables Enterprise had the largest volume loss at ($79K).
- **Print Consumables:** The family still added $83K, because price added $125K and mix $86K against volume of ($128K).
- **Weakest families:** Writing Instruments fell ($90K) and Desk Accessories fell ($35K). Price was negative in both, at ($36K) and ($44K).

The note has the by-family table and the data notes. The input was `products_fy24_fy25.csv`, 18 rows.

Files are in `output/`:
- `pvm.json`
- `pvm-note.md`