Most estimates do not lose to a competitor's price. They die without an answer at all — the homeowner collected three bids, life intervened, and the job either went to whoever followed up or never happened. The follow-up that would have surfaced a yes or a no never went out, because the person responsible for sending it was up a ladder when the reminder crossed his mind.
What follow-up looks like when a human is doing it
The owner remembers the Hendersons' quote at 9:15 on a Tuesday night, driving home. Texting a customer at 9:15 at night is a bad look, so it waits for morning. By morning there are two crews to dispatch and a supplier problem, and the Hendersons are gone again until Thursday. This is not negligence. It is what happens when follow-up depends on a busy person's memory, and it repeats on every open quote in the book. The first follow-up happens sometimes. The second, rarely. The third, effectively never.
The sequence is keyed to the quote, not the calendar
This is not a drip campaign blasted at everyone who ever got an estimate. Each quote in the CRM carries a status — sent, viewed, accepted, declined, expired — and the sequence reads that status before every send. A quote that is still sitting at "sent" five days later gets a short check-in. One that flipped to "accepted" gets nothing, because there is nothing to chase. The message content can reference the actual quote: the address, the scope line, the amount, because the system is reading the record, not a template list of names.
It stops the moment anything happens
Three stop conditions, enforced absolutely: the customer replies, the quote is marked won, or the quote is marked lost. Any of the three, and the sequence halts that instant. The fastest way to look like a machine is "just checking in on that estimate" arriving after the customer already booked you — or worse, after they told you no. The stop conditions are what keep the automation invisible.
The other half of staying invisible is the thread. Every follow-up lands in the same conversation as the original quote discussion — same number, same thread on the customer's phone. When they reply, the reply lands where you already talk to customers, not in a portal somebody has to remember to open. From the customer's side, it reads as a contractor who is simply on top of his paperwork. Which, functionally, is now true.
The validity date is honest urgency
A quote should carry a date it expires, and most in the trades do, for a real reason: it is holding materials pricing. Shingle pricing after a hail season, copper for a re-pipe, lumber on a framing package — your supplier holds those numbers for a window, so your quote can only hold them for a window too. That gives the follow-up sequence something most marketing never has: urgency that is true. "This estimate holds current material pricing through the 30th; after that we'd need to re-quote" is a statement of fact about your cost basis, and it reads completely differently from manufactured scarcity, because customers can smell the difference.
If your quotes do not carry a validity date, add one before automating anything. It protects your margin against a supplier price move whether or not a single message ever gets sent.
The third touch nobody sends manually
By the third contact, a human feels like a pest and quits. But the third message, sent politely on schedule, is often the one that produces an answer — and it should be a graceful close-out, not another nudge: the estimate is being closed out, and if the project comes back around, the number may need updating but you would be glad to revisit it. That message does three useful things. It gives a fence-sitter a genuine last call. It frees the customer to say no, which is worth having, because a known no beats a permanent maybe in your pipeline. And it flips the record to a terminal status, so your open-quote list stays a list of quotes that are actually open.
The owner writes the words once
Cadence and tone are decisions, not defaults. Some shops want day three, day eight, and close-out at expiry; a commercial GC chasing a bid decision might want a single check-in before the award date and nothing more. The owner writes each message once, in his own voice, and approves the schedule. What the system contributes is not personality. It is the consistency no busy human has ever sustained across a full quote book.
What this will not fix
It will not rescue a price that is too high — follow-up surfaces the answer faster; it does not change the answer. It will not help if the quote went to the wrong person, which on commercial work is common: chasing the office manager when the owner decides is a targeting problem, not a timing problem. And it requires quote records that actually change status. If your estimates live in a texting app and your memory, there is no state for a sequence to key on, and the first project is getting quotes into a system of record — which pays for itself in visibility before any automation exists. One more line, since these go out as text messages: replies must reach a person, STOP must work instantly, and every message identifies the business.
Where to start
Count last quarter's quotes. Then count how many ever received a yes or a no — not won, just answered. The gap between those two numbers is the size of this problem in your shop, measured in your own jobs, and it usually surprises the owner more than any statistic could.