Monday, one tab at a time
It usually starts first thing on a Monday. Someone logs into the CRM and exports last week's deals. Then the accounts package for invoiced sales, then the helpdesk for ticket counts, then the ad platforms for spend. Each export lands in a downloads folder with a name like report (7).csv.
Those files get pasted into a master spreadsheet with a tab per source. The columns never quite line up, so there is a round of deleting blank rows, fixing dates that came through as text, and working out why the totals are off by one customer. By mid-afternoon the numbers exist. Then comes the formatting, the charts, the commentary and the email to the directors.
Nobody designed it to take this long. It grew one request at a time, and the person who owns it is usually too busy producing it to step back and change it.
The writing is not what takes the time
When people describe this problem they often ask for a better template or a nicer dashboard tool. Neither touches the real cost. The slow part is moving data out of systems that each hold a piece of the picture and forcing it into one shape by hand.
Three things make it worse every month. New sources get added because someone asked a question once. The manual fixes are never written down, so they live in one person's head. And every source changes its export format now and then, which breaks the paste-in routine quietly.
- Exports pulled by hand from four or more systems
- Undocumented clean-up steps that only one person knows
- Formulas that depend on rows being in a particular order
- Charts rebuilt from scratch because the ranges moved
What the lost day really costs
The obvious cost is a skilled person spending a large slice of their week on copy and paste. The less obvious costs tend to be bigger.
The report arrives late, so decisions that should be made on Monday slide to Tuesday or Wednesday. Mistakes creep in because tired people paste into the wrong row, and when a director spots one number that looks wrong, confidence in every other number drops. When the person who builds it is off sick or on holiday, the report simply does not happen.
There is also the analysis that never gets done. If building the report takes the whole day, there is no time left to ask why a figure moved.
How we automate the weekly report
We start by sitting with whoever builds the report now and writing down every step, including the ones they do without thinking. That list becomes the specification. Then we build the pipeline behind it.
- Connectors that pull from each source system through its API on a schedule, for example HubSpot or Salesforce, Xero or QuickBooks, your helpdesk and your ad accounts.
- A small central database where the raw data lands untouched, so there is always a copy to check against.
- Transformation steps that do the clean-up your team does by hand today: date fixes, name matching, excluding test records, currency conversion.
- Automatic checks before anything is published, such as totals reconciling to the accounts or a source that returned no rows.
- The report itself, either as a dashboard in Power BI, Looker Studio or a web page we build, or as a formatted PDF or Excel file emailed to a list.
- A short exceptions message to a named person when a check fails, so a broken number is caught rather than sent out.
| Manual step today | What replaces it |
|---|---|
| Export CSV from each system | Scheduled API pull |
| Paste into master spreadsheet | Load into a central database |
| Fix dates, names and duplicates | Written transformation rules |
| Eyeball totals for errors | Automated reconciliation checks |
| Rebuild charts and send email | Report generated and sent on schedule |
Where a source has no API, we look at alternatives such as scheduled exports to a shared folder or reading an emailed report. We tell you which parts are solid and which are more fragile.
A Monday that starts with the answer
The report is waiting when people arrive. The person who used to build it reads it first, checks anything the exceptions message flagged, and adds the commentary only a human can write: why a number moved, what to do about it.
Because the steps are written into code rather than held in someone's memory, the report keeps running when that person is away. When the business wants a new figure, it is added once to the pipeline rather than to a weekly routine.
Signs this is your report
- One person blocks out most of a day each week to produce it
- It is built by pasting exports from several systems into one spreadsheet
- Nobody else knows the full list of clean-up steps
- Directors sometimes question a number and it takes hours to trace
- The report has been skipped or late when that person was away
If two or more of those are true, it is worth describing the report to us.