28 years of history, in one record.
Chem-Dry of Richmond had 28 years of customer history spread across an old field service system, a new one and a CRM. Nobody could answer "who have we not seen in a year" without a spreadsheet, so nobody asked. Here is what changed, and what the same history turned up on the way.
What runs
The Monday morning that builds the page.
Every week, without anyone on their team touching it. The whole sequence takes four minutes.
28 years of history from the old field service system, the new one and the CRM, into one record per household.
One customer, one record, back to day one.
The list builds itself: customers serviced this month last year who have not been back.
This month, last month, next month, rolling.
Opt outs, bad emails, anyone who bought in the last six months, and a hold out group come off automatically.
The hold out is how we know what the list is worth.
The list is in the owner's inbox and the send goes out.
Email today; text and calls where the customer has said yes.
Bookings land back in the same record. Friday's report shows the week against the same week last year.
The numbers are retrieved, never made up.
None of this was new spend. It was their own numbers, put somewhere somebody could act on them.
Nobody exports a list on Monday. Nobody writes the follow up at 10pm. The work happens whether anyone remembers it or not.
Monday page · Same page every week
Week of Aug 17 to 23, 2026
Chem-Dry of Richmond · Carpet cleaning · 28 years of history · 3 locations
Built Mon Aug 24, 7:00Against the same week last year, Aug 18 to 24, 2025
1New leads
71last year 34 · +109%Paid search: 50 calls, 21 messages. 60 charged.2New customers
40last year 29 · +38%First invoice this week. Repeat customers not counted.3Cost to sell
$6,790Aug to date213 charged leads · $32 a lead$2,670 (39%) of it was spent on people who were already customers.4Gross margin
From the books, monthlyLands with the accountant's monthly close. Job costs are not split in the CRM yet, so this one waits for the books.| Retrieved from the record | This week | Last year | Change |
|---|---|---|---|
| Revenue invoiced | $32,444 | $19,826 | +64% |
| Jobs invoiced | 79 | 53 | +49% |
| Customers billed | 77 | 53 | +45% |
| Average ticket | $411 | $374 | +10% |
| Bookings back in the record | 95 | not tracked | old system |
- Win-back list built and sent, 7:00 to 7:04. 95 customers serviced Aug 2025 and not back since; 16 held out as the control.Opt outs, missing emails and anyone who bought in the last 6 months came off automatically.
- Follow-up series after a job. 26 customers from last week, 12 from five weeks back, 25 from nine.Services beyond carpet cleaning. Nobody lands on two lists in the same week.
- In-market signals. 7 existing customers showing fresh intent for the services you sell.
- Every search lead matched to the customer record the day it arrived: 71 leads, 60 charged, 4 of the charged ones were active customers.
- Paid search is buying back your own customers. 83 of 213 charged leads this month were already in the record, $2,670 so far.Existing-customer leads are now flagged in the daily lead digest so the spend question is on the table with a number attached.
Revenue is invoiced revenue by service date and ties to the books to the dollar. Same definitions every week. Numbers are retrieved from the record, never estimated.
Nobody built a spreadsheetOne Monday page, built from Chem-Dry of Richmond's own record and published with their permission. Every number is retrieved, not estimated.
What the same history found
41% of a year's paid search had gone to people who were already customers.
Once every job, call and invoice lives in one record per household, you can ask a question nobody could answer before: was this lead a new customer, or one we already had? For a full year of paid search, the answer was that 41% of the spend went to people who were already on the books.
That is the other thing one record per household does. It does not just tell you who to call. It shows you which money is being wasted, with a figure attached, so the conversation with the ad rep stops being a matter of opinion.
The fix is not to stop advertising. It is to know the difference at the moment the lead arrives, which is what the agent does on the phone and in the text thread.
Where they stand
One page, and it ties to the books.
The same record that builds the Monday list also answers the questions that used to need a bookkeeper and a week's notice: what a job is worth, which services carry the year, and which months historically run ahead.
Published with Chem-Dry of Richmond's permission, name and mark included. Every other client's numbers stay between them and the three of us.
Your history is doing this too.
Every business with a few years behind it has a list like this one and a spend question like that one. Send the four numbers and we will tell you what we would run first. The first two steps are free.