- Situation
- A B2B corporate health broker with 81 people and a pipeline in the hundreds of millions of reais in ARR. Forecast meant exporting the whole pipeline to Excel and recalculating it cell by cell, four to five days every two weeks. A legacy dashboard existed, and nobody could trace its numbers to their origin.
- Task
- As the Revenue Operations lead, give leadership a forecast they could read in real time and audit back to the CRM, with no data team and no second database to look after.
- Action
- Audited the legacy dashboard for a week, then rebuilt instead of patching. Defined the source of truth before any screen, moved the business rules into a versioned catalog, made every chart open the exact fields behind it, turned moving assumptions into toggles, and documented for handover.
- Result
- From 4 to 5 manual days to real time. 8 panels validated in production, 20 releases with no recorded downtime, 1,000+ properties audited, 2 to 3 hours of weekly consolidation removed. The forecast meeting became a written ritual.
Axenya is a B2B corporate health benefits broker with 81 people and a pipeline in the hundreds of millions of reais in ARR. Forecast meant exporting the entire pipeline to Excel and recalculating it cell by cell. Every number lived in a different spreadsheet, and nobody could trace it back to its source.
There was a legacy dashboard. The diagnosis from the people who used it was a single sentence: the numbers are hard to trace to their origin.
What stood| Forecast cycle | From 4 to 5 manual days every two weeks to real time |
|---|---|
| Panels validated in production | 8: CRO, Forecast, Board, AE, BDR, Last 48h, Delta and Coverage |
| Releases | 20, with no recorded downtime over about 3 months |
| Properties audited | 1,000+, across 5 CRM objects |
| Manual consolidation removed | 2 to 3 hours a week |
| Since October 2026 | The panels read from the company’s own Sales and Marketing CRM, which replaced HubSpot |
- Rebuild from scratch. I spent a week auditing the legacy dashboard before concluding, with data, that starting over was faster than maintaining it. A scoping decision. I spent a week auditing the legacy dashboard before concluding, with data, that starting over was faster than maintaining it. A scoping decision, not a preference.
- Source of truth before any screen. I defined which CRM fields count, standardized how they are read and published the canonical list for the other teams to use in their own analyses.
- Auditability as architecture. Every chart opens a panel with the exact fields used in the calculation, traceable in real time. Snapshot data and historical data explicitly separated. A unique code per chart for cross-reference.
- No intermediate database. The platform reads straight from the CRM API, HubSpot at the time. Only the ARR calculation lives in the CRM, as a calculated field. Fewer points of failure and no stale data. The platform reads straight from the HubSpot API. Only the ARR calculation lives in the CRM, as a calculated field. Fewer points of failure and no stale data.
- Business rules as a catalog. Compensation logic, probabilities, filters and deduplication live in a versioned semantic catalog that generates each panel’s documentation. It exposed two conflicting probability rules coexisting in the old code. Compensation logic, probabilities, filters and deduplication live in a versioned semantic catalog that generates each panel’s documentation. It exposed two conflicting probability rules coexisting in the old code.
- A moving assumption becomes a parameter. Instead of rewriting the logic every time leadership changed an assumption, each panel got toggles: what counts as an active deal, whether a POC counts as revenue. The assumption becomes interface. Instead of rewriting the logic every time leadership changed an assumption, each panel got toggles: what counts as an active deal, whether a POC counts as revenue. The assumption becomes interface, not refactoring.
- Built to be handed over. Documentation and architecture designed so other people, and other AI agents, could continue the project. That is what made the handover possible.
A dashboard is only worth something if the executive fills in the field. And they did not, because the deal screen was cluttered with fields useful to RevOps and useless to the person selling. The answer was to design progressive fill-in by stage, and to turn the forecast meeting into a written ritual: prework per executive, named hygiene follow-up, to-dos per AE and a report with the delta.
Some fields are necessary only for me. Recognizing that was the decision that got the system used.
The snapshot is a static copy of the platform, frozen in August 2026. Account and executive names were replaced by generic identifiers; values, dates and proportions reflect the real distribution of the pipeline. The snapshot holds 7 of the 8 panels.