Plan one theme a month from the jobs your own records show for that month, with two posts and one offer each: emergency readiness in deep winter, drain clearing in spring and at leaf fall, heater age checks and boiler checks before the heating season. AI drafts; a licensed plumber approves every instruction.
Copying an agency's generic calendar is how a firm ends up promoting drain specials in the month its vans are tied up with burst pipes. Build yours from last year's jobs, cap every offer at what the crew can deliver, and have the person who would give the advice on a doorstep check the advice in each post.
The example firm here is invented: five vans, about 3,150 jobs a year, 1,400 past customers on file and cold winters. The months below treat December to February as the cold ones. If your winter falls in June to August, move every row six months. Every figure is illustrative.
The assistant does two jobs. It reads a table of job counts and points out the peaks, and it drafts each month's pack from facts you supply. It knows nothing about your capacity, your licence limits or your prices, so those go into every prompt and get checked again on the way out.
Let last year's job counts set the calendar
Export last year's completed jobs from your job software and count them by month and job type. That is a pivot table, and it contains no customer data, so it is safe to paste into an assistant. The example firm's table looks like this.
| Month | Jobs | Top job type | Count | Second job type | Count |
|---|---|---|---|---|---|
| Jan | 310 | Burst or frozen pipe | 61 | Water heater failure | 52 |
| Feb | 285 | Burst or frozen pipe | 44 | Water heater failure | 38 |
| Mar | 240 | Leak repair | 52 | Drain blockage | 44 |
| Apr | 235 | Drain blockage | 56 | Fixture install | 41 |
| May | 250 | Fixture install | 58 | Drain blockage | 47 |
| Jun | 245 | Fixture install | 55 | Leak repair | 46 |
| Jul | 230 | Leak repair | 49 | Fixture install | 44 |
| Aug | 225 | Leak repair | 47 | Drain blockage | 40 |
| Sep | 260 | Boiler or heating service | 63 | Water heater failure | 41 |
| Oct | 285 | Boiler or heating service | 71 | Drain blockage | 49 |
| Nov | 290 | Water heater failure | 63 | Boiler or heating service | 55 |
| Dec | 300 | Water heater failure | 58 | Burst or frozen pipe | 54 |
The monthly totals add up to 3,155 jobs. Paste the table with a prompt that forces the assistant to show its working.
Below is last year's job count for a five-van plumbing company, by month and job type.
It contains no customer data.
[paste the table]
1. For each month, name the two job types that peak and what share of the month's jobs they make up.
2. Tell me which job types peak in more than one season.
3. For each peak, name the month six to eight weeks earlier when prevention content should start.
4. List every assumption you are making that is not in the table.
The answer that matters is item 2. In this table, drain blockages peak twice, in April and again in October, so "drain season" is two seasons with different causes to talk about. Water heater failures climb from November, which puts the age-check content in September. Boiler and heating service peaks in September and October, so booking slots should open in August. Burst and frozen pipes peak from December, so outdoor-tap and insulation advice belongs in October.
Then read item 4, because it is where an assistant admits what it brought from general knowledge rather than from your table. If it tells you to push a drain special in September because autumn means leaves, while September's top job in your table is boilers, your table wins.
The calendar: twelve months, two posts and one offer each
Every row follows from the counts above. Prevention content starts six to eight weeks before the peak it targets, and an offer appears only in months when the vans have gaps.
| Month | Job pattern | Post 1 | Post 2 | Offer |
|---|---|---|---|---|
| Jan | Burst and frozen pipes peak | The first ten minutes of a burst pipe | How we keep vans free for emergencies | None; vans are full. Remind plan members of the priority line, if you have one. |
| Feb | Bursts tail off, leaks follow | Signs of a slow leak after a freeze | A repaired pipe, as a photo story (with consent) | Post-freeze leak check at a fixed price |
| Mar | Leak repairs lead | Outdoor taps and hoses: check before first use | What a drain camera shows | Camera survey added to any drain clearing |
| Apr | Drain blockages peak | Slow drain: what to try, and when to call | A cleared drain, before and after (real job) | Fixed-price drain clearing slots |
| May | Fixture installs lead | A pre-sale plumbing check for sellers | A between-tenants checklist for landlords | Fixed-price pre-sale or pre-let check, by email to property managers and landlords |
| Jun | Fixture installs peak | Before you go away: the main tap and appliance hoses | What to ask before booking a fixture upgrade | Washing-machine hose and valve check at a fixed price |
| Jul | Leak repairs lead | The water meter test for hidden leaks | A leak found early (real job) | Leak-finding visit at a fixed price |
| Aug | Quiet; boiler peak is coming | Book your boiler check before the rush | A servicing day, behind the scenes | Early-booking boiler service slots |
| Sep | Boilers peak; heater failures start to climb | How to find your water heater's age | What we look at in a boiler check | Heater age check by photo; boiler service at a fixed price |
| Oct | Boilers and drains peak | Outdoor taps: shut off and drain before the first frost | Leaf fall and drains: keep gullies clear | Outdoor tap isolation and pipe insulation check |
| Nov | Heater failures peak | What to do when the hot water stops | A heater replacement day (real job) | Planned-swap price for heaters checked in September |
| Dec | Heater failures and frozen pipes | Away over the holidays: heating on low, and who to call | Our emergency hours | Plan renewals, with the priority line explained |
Two rows need a caution. Boiler and heating checks belong in your calendar only if your firm services them and holds whatever registration or licence that work needs; otherwise swap the theme for water heater maintenance. And every "real job" post uses a photo from a finished job, with the customer's consent, and no name or address.
The calendar also tells you when to draft. Write each month's pack in the third week of the month before, review it in the same week, and schedule it for the first. That gives a plumber time to read the advice and the office time to check the dates. For a general version of this routine across any business, the one-hour monthly content plan covers the mechanics.
A January post, drafted and then cut by the licensed plumber
Ask an assistant for a burst-pipe post and you get something close to the draft below. It is illustrative, and every line in it is a decision someone has to own.
Burst pipe? Don't panic! Follow these steps: 1. Turn off your main water supply right away. 2. Switch off the electricity at the breaker if water is near sockets. 3. Open your taps to drain the system. 4. Use a heat gun or hairdryer to thaw any frozen sections. 5. Call [Company] on [phone] for 24/7 emergency help. We'll be there fast!
The example firm's licensed plumber has three house rules for public posts: no thawing instructions, no electrical instructions beyond "keep clear", and no promise about speed. Those rules turn the draft into this.
Burst pipe? Take these steps first. 1. Turn off the main water tap. Everyone in the house should know where it is. 2. Open the cold taps to drain the pipes. 3. If water is near sockets or the fuse box, keep clear and call an electrician or us. 4. Move valuables away from the leak and take photos for your insurer. 5. Call us on the number in our profile. Our emergency hours are [hours].
Step 4 of the draft went because the firm will not publish thawing instructions: it would rather send a plumber than coach a customer with a heat gun near wet pipes and wiring. Step 2 was rewritten so the customer is never told to approach electrics. "24/7" and "fast" went because the post cannot promise either unless the answering arrangement and the vans make it true. The phone number left the post text because Google's help page on posts warns that a post with a phone number in its description might be rejected, so the post points to the number on the profile instead.
A February proof post from a technician's job note
February's second post is a "real job" story, and it starts from the technician's own note, usually two lines typed in the van. Proof posts go wrong in a particular way: the assistant adds people and drama the note never contained. The note and the first draft below are illustrative.
Job note: Burst pipe in the loft after the frost on [date]. Uninsulated pipe above the garage. Replaced a short length of copper, insulated the rest of the run, checked the stop tap. Photos 1 to 4.
First draft: When the big freeze hit, one family woke to water pouring through their kitchen ceiling. Our team raced over and had everything fixed within the hour, saving them thousands in damage!
The note mentions no family, no kitchen ceiling, no hour and no sum of money, so all four went. The version that was published keeps to what the technician wrote.
After the frost on [date], an uninsulated pipe above a garage split in the loft. We replaced the damaged length, insulated the rest of the run and checked that the stop tap works. If you have pipes in a loft or garage, this is a good week to check they are lagged.
Two checks happened before it went out. The office cropped photo 2, where the house number showed on the garage door, and the customer agreed by text to the four photos being used. Ask for that agreement on the day of the job, while the customer is relieved, rather than weeks later.
Spring and autumn drain posts need different advice
The job table shows drain blockages peaking in April and again in October, and in the example firm's job notes they are different jobs. April's are mostly indoor drains: kitchen sinks, basins and showers. October's are mostly outside, at gullies and drain covers choked with leaves. One "drain season" post would be wrong for half the year, so each peak gets its own. The April request was two lines long, and the illustrative draft that came back shows why the review step exists.
Write an April post for homeowners about slow drains indoors: what they can safely try
themselves and when to call a plumber. Under 100 words. No phone number in the text.
Slow drain? Try this before you call! Pour a kettle of boiling water down the plughole, then half a cup of baking soda and a cup of vinegar. Leave it for 30 minutes and flush with more boiling water. Still slow? A chemical drain cleaner from any hardware shop will usually shift it. If nothing works, [Company] offers fast, affordable drain clearing!
The licensed plumber cut three things. The boiling-water recipe went, soda and vinegar with it, because the firm does not give advice that depends on what the pipes are made of, and a customer reading a post rarely knows. The chemical cleaner went, because the firm never recommends a product it has not tested, and the next person to open that trap may be its own technician, working around an unknown chemical. "Fast, affordable" went for the same reason "24/7" did in January. This is the version that was scheduled.
Slow drain indoors? First check whether it is one sink or every drain in the house. If it is one, clear hair and debris from the plughole and try a plunger, with the overflow blocked by a damp cloth. If several drains are slow at once, or water comes back up in a shower or bath, stop running water and book a visit: the blockage is further down the pipe, where a plunger will not reach. Drain clearing this month: $[price], booking link on our profile.
The October post moves outside, to clearing leaves from gullies and drain covers and checking that rainwater from the downpipes runs away freely. It gets the same review, plus one rule from the firm's plumber: no instruction to lift a heavy or shared drain cover, which is work for a visit, not a post.
Price an offer from delivery cost, not from the draft
Assistants suggest round, friendly prices such as "drain clearing from $99". They do not know that your average clearing takes 75 minutes on site and another 25 getting there. Work from the cost of delivering the job.
Say the example firm's loaded cost for a technician and van is $55 an hour (wages, vehicle, tools, insurance share). A drain clearing that takes 100 minutes in total costs 100 / 60 x 55, about $92. A $149 price leaves $57. A $99 price leaves $7 and nothing for the job that runs long. Put that arithmetic in a spreadsheet, not the chat, and ask the assistant only for the wording once the price is set.
Every offer also carries a cap. "Eight slots a week" is a number the booking tool can enforce; "limited availability" is not. If your plan members get first call on the slots, say so in the offer text, and keep the flat-rate price list as the single source for what each fixed price covers.
Water heater age: use your install records, not an assistant's guess
Your own install records are the best age data you have. Filter the job app for tank heaters you installed more than eight years ago. To choose the cut-off, take the median age of the heaters you replaced last year (11 in the example firm) and subtract about three years, so the customer hears from you before the likely failure rather than after it. The example list comes to 212 customers.
For heaters someone else installed, offer an age check by photo: the customer sends a picture of the data plate and a person in the office reads it. I would not let an assistant decode serial numbers. The format differs by brand and has changed over the years, so confirm the manufacture date with the maker's own decoder or support line. A confident wrong date in a customer message is worse than saying "we will confirm the age when we see the label".
The September email to the 212 customers can be short.
Subject: Your water heater: installed [year], checked for $[price]
Hi [first name], our records show we installed your water heater in [year], so it is [age] years old. Tank heaters wear out, and we would rather you plan for it than lose hot water on a cold morning. For $[price] we will flush the tank, check the visible fittings and the pressure relief valve, and tell you plainly how it looks. If it has years left, we will say so. Book here: [link]
No saving is promised and no particular failure is predicted. The email states a fact from your records, offers a defined visit and leaves the decision with the customer. The replacement proposal that sometimes follows is a separate document; the repipe and water heater proposal tutorial covers it.
One May email to property managers and landlords
Not every row of the calendar is for homeowners. May's pre-sale and pre-let checks go to a short list of property managers and landlords you already know, and they respond to a different message: speed, a written report and a fixed price per property.
Subject: A plumbing check between tenancies, $[price] a property
Hi [first name], between tenancies we test the stop taps, inspect visible pipework and fittings, run the drains and note the age of the water heater. You get a one-page report with photos within [timeframe]. We have [number] slots a week from [date]. Reply with the number of properties and we will send a booking form.
The assistant drafted this from the brief "fixed-price between-tenancies check, written report, B2B tone". Review it for two things: that the list in the second sentence matches what the technician really does, and that the turnaround is one the office can keep. When the report is generated from technician notes, the drain camera report tutorial shows the same idea for the camera survey.
The monthly pack prompt, and the claims list
Each month's pack comes from one prompt. Keep the standing rules (voice, banned claims, service limits) in a Project, which Claude and ChatGPT both offer, so every month starts from the same instructions. A free Claude account can hold up to five projects.
Draft October's marketing pack for a five-van plumbing company.
Theme: frost-proofing before the first freeze.
Facts you may use, and nothing else: outdoor tap isolation and pipe insulation check, $[price],
bookable until [date], eight slots a week, booking link [link].
Job for the proof post: [two or three sentences, no customer name or address].
Do not give any instruction that involves gas, electricity or opening pipework.
Do not put a phone number in the post text; point to the number on our profile.
Deliver: (1) an educational post under 90 words; (2) a proof post from the job I describe above;
(3) three email subject lines under 45 characters; (4) the offer wording in two sentences with the end date;
(5) a list of every factual claim in your drafts, so I can verify them.
Item 5 saves time. Checking a list of claims is quicker than rereading four drafts, and it makes the plumber's sign-off concrete. Here is the educational post the assistant returned for October, followed by its claims list.
Before the first frost: your outdoor taps. Water left in an outdoor tap or hose can freeze and split the pipe behind the wall, and you will not see it until the thaw. Disconnect hoses and store them. If there is an indoor shut-off for the outdoor tap, close it and open the outside tap to drain it. Check that exposed pipes in garages, lofts and crawl spaces are insulated. Not sure where your shut-off is? Book our outdoor tap check for $[price] by [date] and we will show you.
- Water left in an outdoor tap or hose can freeze and split the pipe behind the wall. The plumber confirms it from experience.
- Many homes have an indoor shut-off for the outdoor tap. The post says "if there is one", which keeps it true.
- Pipes in garages, lofts and crawl spaces are exposed. The plumber confirms the wording matches the homes you work on.
The plumber ticks each claim or changes it. A post that fails on any claim does not go out, and the firm keeps the claims lists so next year's pack can reuse the ones that passed.
The review step before anything is scheduled
Different people check different things, and nobody checks their own prompt. For each monthly pack:
- The licensed plumber reads every instruction and every claim, using the claims list.
- The office checks the price, the end date, the slot cap and the booking link against the offer sheet.
- The owner confirms the pack matches the month's real workload, so no offer lands in a week with no spare van.
- Every photo comes from a real job, with the customer's consent and no name, house number or van registration visible. Google's photo guidance asks for no significant alterations or excessive use of filters or AI, and says the image should represent reality.
- Offers and review requests stay separate. A discount or free service in exchange for a review is not allowed by Google's review policy.
- Google Business Profile offers have a title, dates and times, as the posts help page requires, and the dates match the email.
Make each month's profile post a dated offer rather than an ordinary update, so the end date sits on the post itself and a stale price does not linger. Google's help page says posts older than six months are archived unless a date range is set. For plan renewals, the maintenance plan offers tutorial has the renewal wording.
Checking each month against last year
A calendar is a hypothesis. After each month, put the pack's offer code next to bookings in your job software. Use a different code for each channel, so the profile post, the email and the plan-member text each have a name the office can type into the "lead source" field. The lead sources tutorial explains how to turn those codes into a cost per job.
Three columns are enough: offer bookings, completed visits and what the visits led to (repair, replacement quote, nothing). The example firm's February result might read: 17 leak checks booked, 15 done, two replacement quotes. That is one line in a sheet, not a report. After two months with no bookings from a post type, replace it. After a year, rewrite the calendar from the new job counts rather than from the old calendar, and keep the claims lists that passed review.
Time is the other number to track. Drafting a month's pack with the prompt above takes about 45 minutes, the plumber's review about 20 and scheduling about 15, which is 80 minutes a month and roughly 16 hours across the year. If your own numbers run much higher, the likeliest cause is that the standing rules are not in the Project, so each month starts from nothing.
Questions plumbing owners ask about the calendar
Are two posts and an email a month enough to matter?
For a small firm, yes, if each piece is real and tied to an offer you can deliver. Two good posts, one email to past customers and a dated profile offer beat daily filler. Add a weekly photo from a finished job only if someone in the office enjoys doing it. Consistency over twelve months counts for more than volume in any one month.
Should a plumber post do-it-yourself advice?
Safe, simple advice earns trust: know where the main tap is, open cold taps to drain pipes, move valuables away from a leak. Keep gas, electrics and anything involving opening pipework out of public posts. The test is whether the firm's licensed plumber would say the same sentence to a customer on the doorstep.
What if a real freeze or flood lands in the middle of the calendar?
The real event wins. Swap in the emergency post, pause any offer that uses the same vans, and tell plan members how to reach you. Reinstate the calendar once the backlog is under control, and move the paused offer to the first quiet week rather than dropping it.
Does the calendar work for a one-van firm?
Yes, with fewer offers. Keep the monthly theme and the two posts, but run an offer only in months when the diary has gaps, and cap it at a number you can honour. A sole trader's main risk is an offer that books more visits than one person can do in the week.
Further reads
- 10 ChatGPT Prompts for Plumbers: Call-Backs, Quotes, Complaints — Ten more prompts for callbacks, quotes and complaints.
- AI SEO for Plumbers: Get Named by ChatGPT and Google AI Overviews — Get named when homeowners ask an assistant for a plumber.
- Boiler Replacement Leads: Follow Up in Minutes Using AI — Follow up boiler replacement leads within minutes.
- Party Supply Store Marketing Ideas: Seasonal Bundles With AI — Eight seasonal peaks, bundles built from whole packs for 8, 12 and 20 guests, margin sums and a countdown of posts that ChatGPT drafts from your sheet.
- Best AI for Marketing Ideas: A 12-Month Plan for a Garden Room Builder — Twelve worked marketing ideas for a garden room builder, one per month, with prompts, checks and a number to watch, built into a calendar with AI.
- 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 on adding posts; Google Business Profile photo guidance; Google's prohibited and restricted content policy on reviews; Claude's pricing page (projects on the Free plan) and ChatGPT Projects help, checked October 2026.