How a 340-Person B2B SaaS Firm Cut Monthly Reporting from 14 Days to 36 Hours

Background: A 340-Person B2B SaaS Firm in the Scaling Phase

This case study is a composite drawn from patterns observed across multiple engagements. No named customer is represented. The company described here is a fictional but plausible B2B SaaS firm operating in the USA, with 340 employees, a Microsoft Dynamics 365 ERP, and a Zendesk helpdesk. It sells a project-management platform to mid-market logistics and manufacturing clients. The operations team of 28 people handles monthly reporting, ticket triage, and supply-chain coordination. The company is in the scaling phase: it has outgrown its manual processes but has not yet standardized AI tooling across departments.

Challenge: 14-Day Reporting Cycles and Misrouted Tickets

The operations director flagged two problems. First, the monthly operations report took 14 business days to compile. Analysts pulled data from Dynamics 365, cross-referenced it with Zendesk ticket logs, and assembled a 40-page deck by hand. Second, ticket triage was inconsistent: 22% of tickets were routed to the wrong queue, and first-response time averaged 4.2 hours. The company was also preparing for a GDPR audit because it processes EU customer data through its US-based infrastructure. The operations team had no dedicated data engineer and no internal AI capability. The deadline was tight: the next board review was in 11 weeks, and the director needed a measurable improvement in reporting cycle time before that meeting.

Approach: Process Audit, pgvector Build, and a 12-Week Pilot

The engagement followed a three-phase structure. Phase one, weeks one through four, was a process audit. The team mapped the monthly reporting workflow end-to-end, identified which data points came from Dynamics 365, which came from Zendesk, and which required manual judgment. They also audited the ticket triage process and measured the baseline: 4.2-hour first response, 22% misrouting rate. Phase two, weeks five through eight, was the build. The team embedded the company’s operations runbooks, policy documents, and historical reports into a pgvector table in PostgreSQL. They wired the assistant to Dynamics 365 through its REST API and to Zendesk through its webhook endpoints. The assistant was configured to draft the monthly report and propose ticket routing, with a human approval step before any output was finalized. Phase three, weeks nine through twelve, was the pilot run. The assistant handled the monthly report and ticket triage in parallel with the existing manual process, so the team could compare before/after metrics directly.

Outcome: 36-Hour Reports and a 7% Misrouting Rate

The pilot ran for four weeks, covering one full monthly reporting cycle and approximately 1,800 support tickets. The monthly report cycle time dropped from 14 business days to 36 hours. The assistant drafted 85% of the report content, and the analyst spent the remaining time verifying figures and adding narrative context. The error rate on the drafted report was 3.1%, compared to 6.8% in the manual baseline. For ticket triage, first-response time fell from 4.2 hours to 1.1 hours, and the misrouting rate dropped from 22% to 7%. The assistant proposed routing for 94% of tickets; a human approved or adjusted the remaining 6%. The GDPR audit found no violations in the assistant’s data handling, because PII was scrubbed from documents before embedding and all queries were logged. The company decided to extend the assistant to two additional departments in the following quarter.

Lessons for Teams Scaling AI Across Departments

  • Start with the process audit, not the model. The audit revealed that 40% of the reporting delay was not data retrieval but manual reconciliation between two ERP modules. Automating the retrieval without fixing the reconciliation would have saved only two days. The audit also identified which data points required human judgment, which shaped the approval workflow.
  • pgvector is sufficient for most B2B SaaS corpora. The document corpus was 120,000 chunks. pgvector handled the similarity search in under 18 ms at p95 latency. A separate vector database would have added operational complexity without a measurable performance gain.
  • Human-in-the-loop is not optional for regulated data. The GDPR audit required that no automated decision touched a customer’s personal data without human review. The approval step was not a formality; it was a compliance requirement.
  • Measure the baseline before you build. The 4.2-hour first-response time and 22% misrouting rate were measured in week one, not assumed. Without that baseline, the pilot outcome would have been uninterpretable.
  • Managed operations matters after the pilot. The company did not have an internal ML engineer. The managed operations model, which included monthly embedding re-indexing and prompt tuning, was the difference between a working pilot and a system that degraded over time.

Comments

Leave a Reply

Your email address will not be published. Required fields are marked *