I built the FY2025 bridge and wrote the commentary note. The script's check that the bridge reconciles to the cent passed.

FY2025 revenue was $11,238K against $11,243K in FY2024, a change of ($5K), or (0.04%).

| Step | Amount |
| --- | --- |
| FY2024 | $11,243K |
| Timing | $53K |
| Loss | ($1,288K) |
| Decline | ($443K) |
| Upsell | $1,211K |
| New | $463K |
| FY2025 | $11,238K |

Each amount is rounded on its own, so the rows don't add exactly to FY2025. The note says this in its data notes.

Revenue was flat because upsell and new business almost exactly offset lost and declining customers. Fenwick Legal (($686K)) and Birchway Foods (($503K)) were the two biggest losses. The data doesn't show why customers left or declined, and the note says that rather than guessing.

Files are in `/tmp/spb-revenue-bridge-fy25-claude-xp7i25j_/output/`:
- `bridge.json`
- `bridge-note.md`