The details of this engagement have been anonymised at the client’s request, but the numbers are real.
The situation
A mid-sized professional services firm with 22 staff had three recurring operational problems that kept surfacing in our initial assessment:
Client reporting was eating Mondays. The firm sent weekly status updates to 18 active clients. Each report was assembled manually: a team member pulled data from the project management tool, the time-tracking system, and the billing platform, then formatted everything into a Word document using a template and emailed it. Average time: 45 minutes per client per week. With 18 clients, that was 13.5 hours of reporting labour every Monday morning, handled by three different team members depending on who had availability.
Proposal generation was inconsistent. When a qualified lead came in, a senior consultant would spend 3 to 5 hours assembling a proposal: pulling relevant case studies, writing service descriptions, preparing a fee estimate, and formatting the document. The firm had no centralised content repository, so every proposal started from scratch. Quality varied. Win rates were harder to analyse because no two proposals followed the same structure.
Intake processing had a 4-hour lag. New enquiries came in through the website form, email, and occasionally LinkedIn messages. Someone had to read each one, judge its quality, enter it into the CRM, assign it to the right person, and send an acknowledgement. That someone was usually the office manager, and during busy periods, enquiries would sit unprocessed for several hours.
What we built
After a two-week discovery and assessment phase, we built three interconnected automations in n8n.
1. Automated client reporting
We integrated n8n with the firm’s project management tool, time-tracking system, and billing platform via their respective APIs. The workflow runs every Friday at 4 PM, pulling the week’s data for each active client project.
For each client, the workflow:
- Fetches completed tasks, hours logged, and billing status for the reporting period
- Calculates progress against milestones and budget
- Populates a Google Docs report template with the structured data
- Generates a brief narrative summary using Claude, based on the week’s activity and any flagged items
- Routes the draft to the responsible team member for a 5-minute review
- Delivers the final report to the client on Monday morning at 9 AM
The team member’s job shifted from 45 minutes of assembly to 5 minutes of review. The narrative summary Claude generates is based on factual inputs — hours logged, tasks completed, milestones reached — and is reviewed before delivery, so there’s no risk of the model fabricating details.
Time saving: From 13.5 hours per week to approximately 1.5 hours per week. Annual saving: roughly 625 hours across the team.
2. Proposal generation assistant
We built a structured content repository in Notion containing approved service descriptions, case study summaries, and fee schedule templates. When a new proposal request comes in (triggered by a CRM stage change), the n8n workflow:
- Pulls the client’s industry, service interests, and context from the CRM
- Retrieves the relevant service descriptions and case studies from the Notion repository
- Generates a first-draft proposal document in Google Docs, populated with the retrieved content and a customised introduction
- Notifies the assigned consultant via Slack with a link to the draft
The consultant’s job is now to review, refine, and personalise the draft — not assemble it from scratch. Average consultant time per proposal dropped from 3.5 hours to 45 minutes.
Time saving: At 4 proposals per month, approximately 11 hours saved monthly. Annual saving: 130 hours of senior consultant time.
Secondary benefit: Proposal quality became more consistent. All proposals follow the same structure, use approved language, and draw from the same validated case study library. Win rate analysis became possible because proposals are now comparable.
3. Intake routing and acknowledgement
We connected the website contact form, the shared inquiry inbox, and LinkedIn message notifications to a single n8n intake workflow. When any of these triggers fires, the workflow:
- Extracts contact information and the substance of the inquiry
- Uses a Claude classification step to assess inquiry type and urgency
- Creates or updates a CRM record with the structured intake data
- Assigns to the appropriate team member based on service type and current capacity
- Sends a personalised acknowledgement email to the prospect within 2 minutes of inquiry
- Posts a Slack notification to the assigned team member with a summary
Average intake processing lag dropped from 4 hours to under 2 minutes. The office manager now reviews the intake log once per day rather than monitoring the queue continuously.
Time saving: 30 to 45 minutes daily of intake processing time. Annual saving: roughly 130 to 195 hours.
The total picture
Combined, the three automations save approximately 900 to 950 hours per year — the equivalent of roughly half a full-time position.
Total build cost across all three automations: $6,800 in design, build, and testing. Monthly operating cost: approximately $85 in hosting and API costs.
Payback period, based on the blended hourly cost of the staff time saved: under 6 weeks.
The firm did not reduce headcount. The team members who previously handled these tasks redirected their time to business development, client relationship work, and higher-complexity projects. Revenue grew 18% in the six months following deployment. Whether that growth was directly attributable to the automations or to other factors is impossible to isolate — but the team had more capacity to pursue it.
What made this work
A few things made this engagement deliver unusually clean results:
The processes were well-defined before we started. The firm had consistent existing workflows — they were just manual. Automating a well-defined process is much faster than automating an ambiguous one.
The team was willing to change how they work. The reporting automation only delivers its full saving if the team members trust the draft reports and don’t rebuild them from scratch. There was a two-week transition period where team members reviewed the outputs carefully before shifting to the lighter-touch review model. Trust in the system built from demonstrated accuracy.
We started with the highest-cost process. The weekly reporting was the obvious priority: the most hours lost, the most predictable structure, the clearest path to automation. Starting with a clear win made the second and third automations easier to fund and approve.
Every professional services firm has a version of this situation. See our workflow automation service for more on how we approach these builds, or book an Automation Discovery Call and we’ll help you find yours.