Run eight gutter cleaning marketing campaigns: a late-summer book-ahead text, a leaf-fall rush offer, a twice-yearly plan, a neighbour-street card, a storm-warning text, a spring catch-up, a review ask after every job and a landlord letter. Give an AI your prices and slots, have it draft each, and tag every booking with a campaign code.
The order matters more than the cleverness. Gutter work bunches around leaf fall, so the campaigns below hang off an anchor, Leaf Week, instead of fixed dates. Slide the whole calendar earlier or later to suit your trees and your weather, and keep one rule throughout: never send more messages than you have slots to fill.
A calendar anchored to Leaf Week, not to the date
Leaf Week is the week when most leaves are down on your patch. The first campaigns start two months before it, so set it from last year: note the week most leaves were down on two or three regular streets (last autumn's busiest booking week usually agrees) and call that week 0. Everything else is a count of weeks before or after. In the example below, week 0 starts on Monday 2 November. If your trees drop earlier or later, move every date by the same number of weeks, and recheck the anchor each autumn.
| Code | Campaign | Weeks | Example dates | Main channel |
|---|---|---|---|---|
| C1 | Book-ahead text to past customers | -8 to -5 | 7 Sep to 4 Oct | Text, then email |
| C2 | Leaf-fall rush offer | -2 to +3 | 19 Oct to 29 Nov | Leaflet and Google post |
| C3 | Twice-yearly plan | 0 to +8 | 2 Nov to 3 Jan | Text at the end of each job |
| C4 | Neighbour-street card | -1 to +6 | 26 Oct to 20 Dec | Card on job days |
| C5 | Storm-warning text | -4 to +10 | 5 Oct to 17 Jan | Text, when a warning is issued |
| C6 | Spring catch-up | +22 to +28 | 5 Apr to 23 May | Text and email by segment |
| C7 | Review ask | Every job | All year | Text within a day of the job |
| C8 | Landlord and property manager letter | -10 and +20 | 24 Aug and 22 Mar | Letter or email |
Two rules stop eight campaigns tripping over each other. A booking gets one primary tag, the first campaign message the customer responded to, so nothing is counted twice. And no customer gets more than one marketing message in a fortnight, whatever the calendar says.
Every draft below starts from the same facts card, which is how you stop an AI inventing awards, reviews and years in business. Keep it in a ChatGPT or Claude Project and paste your slot count in before each campaign.
FACTS CARD (start every campaign prompt with this)
Business: [name], owner [first name], [number] people, [number] vans
Services: gutter clearing, downpipe flush, photos of every job; [other services]
Prices: 2-bed $[x], 3-bed $[x], 4-bed $[x], bungalow $[x]
Plan: [two visits a year at $[x] a visit, or "none yet"]
Free slots in the next two weeks: [number]
How to book: [phone], [text number], [web address]
Insured: [yes or no]; guarantee: [exact wording or "none"]
Review link: [Google review link]
Rules: use my customers' spelling. No claims, numbers, awards or reviews that are not in this card.
End by listing every claim and marking it SUPPLIED or ADDED.

The Complete Excel Course with AI Integration
From formulas and pivot tables to Power Query, DAX, VBA and AI with Copilot, ChatGPT and Claude — hands-on from the first lesson.
By Sagnik Bhattacharya and Virginia Thorn, Primetime Emmy Award winner
Buy nowCampaign 1: the book-ahead text to past customers
Gutters are easiest to book when nobody else is asking, so start before the rush. In weeks -8 to -5, text everyone you cleaned for in the last two years who has not opted out, and ask them to choose a slot before leaf fall. It is one of the cheapest campaigns on the calendar because the audience already knows you.
Ask the assistant for three versions and give it a length limit. Many providers split a text over 160 characters into several billed parts, so check how yours counts.
[paste facts card]
Write three versions of a text to past customers asking them to book their autumn gutter clean
before the leaf-fall rush. Each under 160 characters, plain words, first line says who we are,
ends with "STOP to opt out". Use [first name] and [last clean month] as merge fields.
Do not mention discounts unless the facts card lists one.
A sample of what comes back, with the details invented for this tutorial:
1. Hi [first name], [business] here. Leaf fall is close. Want your usual gutter clean booked before the rush? Reply with a day. STOP to opt out.
2. [business] here. Autumn gutter clean at last year's price if you book by 4 Oct. Reply YES for the next free slot. STOP to opt out.
3. Hi [first name], we last cleaned your gutters in [last clean month]. Reply with a day for the autumn clean. STOP to opt out.
Three fixes before sending. Version 2 promises last year's price, which the audit marked ADDED; keep it only if you will honour it. Version 3 relies on your records having the right last-clean month, so spot-check ten rows first. And leave out web links. Jobber's own help says its visit-reminder text templates cannot include emojis or URLs, to avoid phone carriers blocking its numbers, which tells you how touchy carriers are about links in business texts. Ask for a reply instead, and make sure someone answers within the day.
Tag every booking that starts from one of these replies as C1.
Campaign 2: the leaf-fall rush offer on paper and on Google
From two weeks before Leaf Week to three weeks after, put one offer on paper and on your Google Business Profile. The paper side is the test in three leaflet versions written and tested with AI: three headlines, matched streets, a code each. Use the winning version here, and keep the offer identical on Google so you are measuring one thing.
On Google, the right post type is an offer. Google's help says an offer needs a title, dates and a time, and can carry a coupon code and terms. You can turn on "Schedule this post" and make it repeat, and posts older than six months are archived unless a date range is set, which an offer's dates take care of. One trap: Google says posts with a phone number in the description might be rejected, so leave the number to the profile's call button.
Here is a before and after. The AI's first draft read: "Call [phone number] now for the best gutter cleaning around! Don't miss out!" It has a phone number, a superlative you cannot prove and no dates. The fixed version looks like this.
| Field | What went in |
|---|---|
| Post type | Offer |
| Title | Free downpipe flush with every autumn gutter clean |
| Dates | 19 October to 29 November |
| Description | Book your autumn gutter clean by 29 November and the downpipe flush is free. Fixed prices by house size, photos of every job. Use the Call or Book button on this profile. |
| Coupon code | LEAF-G |
The coupon code does the tracking. A caller who says LEAF-G came from Google, while LEAF-A, LEAF-B and LEAF-C identify the leaflet versions. Tag the bookings C2 either way, and keep the sub-code in your notes so you can see whether paper or Google earns its keep.
Campaign 3: the twice-yearly plan, with the sums
In weeks 0 to +8, text every autumn customer at the end of their job with an offer to move to two visits a year. A plan turns one-off work into predictable work, but it only pays if the discount costs you less than the spring visit you would have lost anyway. Do the sum before you launch it.
Say a one-off clean is $150 and the plan is $130 a visit, spring and autumn, so $260 a year. Let r be the share of your autumn customers who already book a spring clean without a plan. Without the plan, a customer is worth $150 plus r times $150. With it, $260. The plan wins whenever r is below about 0.73.
| Share who already book spring | Worth per customer without a plan | With the plan | Plan gains or loses |
|---|---|---|---|
| 40 in 100 | $210 | $260 | Gains $50 |
| About 73 in 100 | About $260 | $260 | About even |
| 80 in 100 | $270 | $260 | Loses $10 |
Those percentages are placeholders; your own booking records give the real figure, and they take ten minutes to pull from a spreadsheet. The sum leaves out what a plan also buys: automatic reminders, a diary that fills itself and less advertising. It also leaves out what a plan can cost you, such as customers who sign up and then ignore the reminders. Offer a pause as well as a cancellation.
[paste facts card]
Write a text offering the twice-yearly plan at the end of a job. Under 250 characters. Say what the
plan is, the price per visit and how to cancel. Do not promise priority slots or discounts that
are not in the facts card.
A sample draft reads: "Thanks for booking today. Our twice-yearly plan covers a spring and an autumn clean at $130 a visit instead of $150, and we text you a booking window before each one. Reply PLAN to join. You can cancel any time by text." The audit marked "cancel any time" as ADDED, so keep it only if your written terms say the same. Replies of PLAN are tagged C3, and the reminder workflow that keeps plan customers booked is in reminders, routes and recurring bookings for gutter cleaners.
Campaign 4: the neighbour-street card
From week -1 to +6, every job day doubles as a marketing day. Before you leave a street, push a card through the doors within a few doors of the job. It says you are clearing gutters on that street today and offers a discount for booking the same day. "Five doors either side" is a starting rule; set your own.
The case for the discount is drive time. Say a normal gap between jobs is 20 minutes of driving and a neighbour is two minutes away. You save 18 minutes. At an assumed van-and-crew cost of $60 an hour that is $18, so 10 percent off a $150 job ($15) is covered by the saved driving before the job earns anything. The neighbour offers for pressure washing run on the same arithmetic.
Hi neighbour, we are clearing gutters on [street] today. Book a clean for your house today and take 10 percent off. Fixed price by house size, photos of every job. Knock, call or text [number].
That is the second draft. The first one said "we are at number 14 today", naming a customer who had not agreed to it, and "your neighbours trust us", a claim nobody supplied. Both went. The habit that replaces them is asking the customer before you start: "Is it all right if I tell the neighbours we are working on your street?" The question costs you ten seconds.
Print the cards with a blank date line and write the date by hand, which makes them look less like junk. Keep twenty in the cab, and ask callers to say "neighbour" so you can tag the booking C4.
Campaign 5: the storm-warning text
Between weeks -4 and +10, a weather warning is a fair reason to text. Send one message per warning, only when an official warning covers your patch and you have real slots, and skip anyone cleaned in the last eight weeks. The rules matter more than the wording, because a text that cries wolf trains customers to ignore the next one.
Write the messages in September, not in the middle of a storm. Ask the assistant for three tones from the facts card, store them, and when a warning lands you only change the day names and the slot count. Three sample drafts follow.
Calm: [first name], heavy rain is forecast this week. We have 3 gutter-clearing slots left on Thursday and Friday. Reply with a day if you want one. STOP to opt out.
Practical: Heavy rain forecast. If your gutters need clearing, we can fit you in Thursday or Friday. Reply with a day. STOP to opt out.
Urgent: Storm warning! Book now before your gutters flood your home!
Send the calm one. The urgent version promises timing nobody can guarantee and implies damage you cannot prove, so the audit would flag it and it should go. The number of slots in the calm version has to be true on the day you send it, which is why the slot count sits on the facts card.
Tag replies C5. Because this campaign fires on weather rather than the calendar, the best control is a cap: one message per warning, and never more than one marketing text in a fortnight to the same person.
Campaign 6: the spring catch-up
In weeks +22 to +28, gutters that were last cleared months ago meet winter debris and spring seeds. Instead of one message to everyone, split the list into three segments by last-clean date and give each its own angle. An AI is good at drafting three variants from one facts card, and a spreadsheet is good at sorting.
| Segment | Example count | Message angle | Offer |
|---|---|---|---|
| Plan members | 22 | Booking-window reminder with two slot choices | Plan price already applies |
| Autumn customers without a plan | 68 | Winter debris and spring seeds, a quick spring clean | The plan offer from C3, restated |
| Lapsed for twelve months or more | 95 | "It has been a while", with a before-and-after pair | Fixed price held for two weeks |
| Total | 185 |
Take the third segment, where a sample draft reads: "Hi [first name], it has been a while since [business] cleaned your gutters. Spring seeds and winter leaves can block them. Fixed price from $120, reply with a day. STOP to opt out." Two problems. "From $120" was a generic figure the assistant invented, and a four-bedroom house costs more, so the price has to come from a merge field tied to each customer's house size. Check ten merged messages by eye before the full send. And "can block them" is the right verb; an earlier draft said "will", which is a claim you cannot make about every house.
Message the lapsed segment twice at most. If a customer has not answered in a year and two attempts, stop, and mark the record. Tag replies C6, and compare reply rates by segment, because that comparison tells you where the next campaign's effort should go.
Campaign 7: the review ask after every job
This is the one campaign that runs all year. Ask every customer, within a day of the job, using your Google review link. Google's help says you can ask customers to visit a Google link or scan a QR code, and that offering free or discounted goods or services in exchange for reviews is strictly prohibited. Its wider review rules also discourage asking only the customers you expect to be happy, setting staff quotas for reviews, and asking for reviews that mention specific content such as a technician's name. Ask everyone in the same words, and read Google's current policy page before you automate anything.
The natural moment is the same message that carries the proof pack from photo proof and AI job summaries on gutter cleaning invoices, because the customer is already looking at the work. The assistant's first draft, as a sample, read: "Thanks for choosing [business] today. If you were happy with the work, a short Google review helps other homeowners find us: [review link]. STOP to opt out." The phrase "if you were happy" steers only satisfied customers towards the link, so change it to "Whatever you thought of the job, an honest Google review helps other homeowners decide".
The assistant is more useful on the replies. Paste the review and the facts from the job record, and ask for a reply of under 60 words that does not repeat private details. Take a three-star review that says the clean was good but the crew arrived two hours late. A sample reply: "Thank you for the honest feedback, [first name]. You are right that we arrived later than the window we gave you, and I am sorry for the wait. If anything about the clean itself needs another look, call or text me." The first draft added "we now text when we are running behind", which the audit marked ADDED. It stays only if you have actually started doing it. The tutorials on getting more reviews after every job with AI follow-ups and automated review requests go deeper on timing.
Count reviews on a fixed day each month, and keep the ratio of asks to reviews as your baseline. If 130 asks produced 20 reviews, that is about one in six and a half. Jobber lists a Marketing Suite add-on at $99 a month on its pricing page if you want the asks automated inside the job app, but a text template does the same job for nothing.
Campaign 8: the landlord and property manager letter
Twice a year, in week -10 and week +20, write to the people who look after several properties: property managers, landlords with a portfolio and managers of small blocks. A block booking gives them one contact, one price and one invoice a month, and it gives you a day's work on a single patch. Find them in your own customer list first, because some of your existing customers own rentals, and then in local listings.
[paste facts card]
Write a one-page letter to a property manager offering a block booking for gutter clearing at
10 or more properties at $120 a visit. Mention dated before-and-after photos in a short report
after each job, and one invoice a month. Offer a trial on two or three properties.
Under 130 words. No claims that are not on the facts card.
A sample of what came back: "Dear [first name], I run [business], a gutter cleaning firm with [two] crews. If you manage several properties, I can clear and flush the gutters and downpipes at each in one visit, with dated before-and-after photos in a short report after every job. For ten or more properties we hold $120 a visit and send a single invoice a month. I would be glad to quote for a trial on two or three of them. You can reach me on [phone]. Regards, [owner first name]."
The first draft added "trusted by local landlords" and "same-week service", both marked ADDED and both deleted, since neither is true until you can show it. One more check is practical: make sure your invoicing tool can produce a monthly invoice across properties before you promise one.
The sum is lopsided in a good way. Thirty letters might cost an hour of your time at $30 plus an assumed $1 each in print and postage, $60 in all. If one manager of 12 properties signs at $120, twice a year, that is 12 times 2 times $120, or $2,880 a year. Ask each reply how they heard of you, and tag it C8.
Tracking bookings by campaign: one tag per booking
Add one field to your booking form or job notes: "How did you hear about us?", with C1 to C8 behind the options plus "word of mouth" and "other". Whoever takes the booking picks the first campaign message the customer responded to. At the end of the season, a pivot table or a simple filter turns that field into a tally. An invented autumn tally follows, with your own time costed at $30 an hour.
| Campaign | Reach | Bookings | Revenue | Cost | Cost per booking |
|---|---|---|---|---|---|
| C1 Book-ahead text | 180 texts | 31 | $4,495 | $45 | $1.45 |
| C2 Leaflets and Google | 839 delivered | 15 | $2,315 | $249 | $16.60 |
| C3 Plan replies | 60 offers | 22 | $2,860 | $0 | $0.00 |
| C4 Neighbour cards | 120 cards | 9 | $1,215 | $13.20 | $1.47 |
| C5 Storm texts | 140 texts | 12 | $1,800 | $30 | $2.50 |
| Total | 89 | $12,685 | $337.20 | $3.79 |
Read it carefully, because the table flatters some campaigns. Revenue is the first job only, so C3's second visit does not show, and revenue is not profit. C2 looks expensive at $16.60 a booking, but it is the only campaign here that reaches households you have never served; the others talk to existing customers or neighbours. And some C1 bookings would have happened anyway. To estimate how many, compare the same customer list's bookings last autumn, before the text existed.
The review ask (C7) does not belong in a revenue table. Track it as reviews per month against asks sent. C6 and C8 sit in other seasons, so they get their own tally in the spring.
Fitting eight campaigns into the slots you have
A campaign that outsells your diary just creates complaints, so cap each send by the slots you can fill. The formula is short: messages to send equals free slots divided by the booking rate of that campaign last time. C5 booked 12 from 140 texts, a rate of about 8.6 percent. With 10 free slots next week, you would send about 117 texts, not 600.
Check the diary against the whole calendar too. A two-person crew doing six houses a day over five days has 30 slots a week. The tally above brought 89 bookings; spread over about eleven weeks of autumn work, that is roughly eight a week on average, but they do not arrive evenly. C2, C3, C4 and C5 all overlap around Leaf Week, so that fortnight can run past capacity even when the season as a whole does not.
Write the waitlist reply before you need it. One sample wording: "Thanks [first name], we are fully booked until [date]. Shall I put you on the list for the next cancellation, or hold the first slot on [date] for you?" The assistant drafts it in seconds, and a clear queue is better advertising than a silent one.
If you only have an afternoon, set up three things: the facts card, the "how did you hear about us" field and the C1 text. Those three need no printing and no spend, and by the time Leaf Week arrives you will have a baseline to judge every other campaign against.
Questions about seasonal gutter marketing
What if my leaves fall at a different time?
Then slide the whole calendar by the same number of weeks. Each autumn, walk two or three of your regular streets as the leaves come down, note the week most are down, write it in your records and use it as next year's Leaf Week. Every campaign date is a count of weeks from that anchor, so nothing else needs redoing.
Do I need all eight campaigns?
No. Start with the three that cost almost nothing: the book-ahead text to past customers, the review ask after every job and the neighbour-street card. Add the leaflet, plan and landlord letter once you know how many slots you can actually fill, because a campaign that outsells your capacity only creates complaints.
How do I stop texts feeling like spam?
Text only people who gave you their number for a job, say who you are in the first line, include a way to stop, and cap yourself at one marketing message a fortnight per customer. Test the stop reply with your own phone. Texting rules differ between markets, so ask your provider what applies to you.
Further reads
- Window Company Marketing: A Year of Local Campaigns Drafted With AI — A year of local campaigns for a neighbouring trade.
- AI Marketing for Plumbers: A Worked 12-Month Posts and Offers Calendar — Another worked calendar of posts and offers.
- AI Marketing for HVAC: A Worked Spring and Autumn Tune-Up Campaign — Spring and autumn campaigns for a trade with maintenance plans.
- AI Marketing for Contractors: Reviews, Case Studies and Local Posts — Reviews and case studies for contractors.
- How to Set Up Missed Call Text Back for a Service Business — Catch the calls your campaigns create when you miss them.
- Roofing Storm Leads: Triage and Follow Up After Hail With AI — How roofers sort and answer enquiries after a storm.
- Pest Control Reminders: Quarterly Visit Text and Email Templates With AI — Reminder text templates for repeat visits.
- Eight Lawn Care Marketing Ideas for Spring, Written With AI — Eight spring lawn care campaigns with prompts, sample messages, a worked pre-booking plan, a February calendar and the email and text consent checks.
- How to Price Christmas Light Installation: Roofline, Trees and Take-Down — A worked quote with roofline, two trees and take-down as separate priced lines, the cost behind each rate, and an AI check of the sheet.
- Can You Price Gutter Cleaning From Street View? What AI Gets Wrong — A worked gutter cleaning quote from imagery, the surcharges to add, and the cases where you must see the roof before you commit.
- AI Tools and AI Development: The Complete 2026 Guide — the AI hub, including every tutorial in the AI-for-business series.
Sources: Google Business Profile Help (posts: offers, scheduling, archiving, phone numbers); Google Business Profile Help (asking for reviews, incentives); Jobber pricing page (Marketing Suite). All prices, response figures and tallies in the examples are illustrative.