Split each renewal letter into fixed clauses a lawyer has approved and variable lines AI fills from your contract data: name, system, visit window, old and new price, renewal date. Send it 60 days before renewal, remind at 30 and 10 days, give a plain way to say no, and check every price yourself.
Those timings are a starting point. The notice period in your own contract, and the rules where you work on renewals and price changes, set the real earliest and latest dates, and those are questions for a lawyer rather than an assistant. None of this is legal advice. What AI does well is the repetitive part: drafting the letter variants, the reminders and the scheduling texts once, so that every customer gets clear, consistent wording.
Lock the contract clauses and let AI fill only the variable lines
The danger in using AI for renewals is not bad writing. It is a fluent assistant quietly rewording a clause that someone paid a lawyer to get right. The cure is structural: decide in advance which parts of the letter are locked, which are variable fields from your records, and which are free text the assistant may draft. Then give it access to the third group only.
| Part of the letter | Who writes it | Rule |
|---|---|---|
| How the contract renews (automatically, or only if the customer says yes) | Lawyer, locked | Inserted word for word, never paraphrased |
| Notice period and how to cancel | Lawyer, locked | Same |
| The clause that lets you change the price | Lawyer, locked | Same |
| Prices, dates, renewal date, system type | Merged from the contract record | Never typed or calculated by the assistant |
| Opening, tone and sign-off | AI drafts, you approve once | No promises, no claims about safety or insurance |
| Summary of the year (visits done, faults attended) | AI drafts from your records | Must match the job history |
| Visit windows and how to book | AI drafts from the diary | Must match open slots |
| Reminder and scheduling texts | AI drafts, you approve once | Reused every month |
To make the lock physical, have the assistant write a token, such as {{R1}} for the renewal clause and {{R2}} for the cancellation clause, on a line of its own wherever locked text belongs. A find-and-replace in your word processor, or the field in your mail-merge tool, then drops in the approved wording. The assistant never reproduces the clause, so it cannot shorten it. Keep the approved text in one reviewed file, which I'd call a wording pack, and store it in a ChatGPT Project or a Claude Project so that every drafting session starts from the same pack.
The pack is what you send your lawyer, once. Include the contract's renewal and price-change clauses as they stand, the base letter with its tokens, the three variants described below (price rise, price held, scope change) and the reminder texts. Ask three things: what notice period and delivery method a renewal or price change needs for your customers, whether silence counts as agreement to renew under your contract, and what must be repeated in each reminder. Rules differ between home customers and business customers and from place to place, so the answers are theirs to give. The point is that you ask once, not every month. The tutorial on auto-renewals, price rises and notice periods explains the same traps from the buyer's side, which helps when you write them from the seller's.
Keep the pack as a short index so anyone in the office can see what is approved and when it was last looked at. A filled-in version might read:
| ID | What it is | Approved by | Approved on | Re-check |
|---|---|---|---|---|
| R1 | Renewal clause as it appears in the contract | [lawyer or firm] | [date] | When the contract changes |
| R2 | Cancellation and notice clause | [lawyer or firm] | [date] | When the contract changes |
| R3 | Clause allowing price changes | [lawyer or firm] | [date] | When the contract changes |
| V1 | Letter variant: price rise | [lawyer or firm] | [date] | Every 12 months |
| V2 | Letter variant: price held | Owner | [date] | Every 12 months |
| V3 | Letter variant: scope change | [lawyer or firm] | [date] | Each time it is used |
| T1 to T4 | Reminder, final notice, confirmation and win-back texts | Owner | [date] | Every 12 months |
One safety habit belongs here. An alarm company holds sensitive data: codes, keyholder numbers, access notes, which properties are empty and when. None of that belongs in a prompt, a template or a reminder text. Prompts get first names, system types and dates; the merge adds the rest from your own system.
A renewal timeline worked back from your notice clause
Start with the longest notice period your contract or your lawyer gives you, add a margin for late post and unread email, and place the first letter before it. The table uses a renewal date of 1 June and assumes, for illustration, that the contract needs 30 days' written notice of a price change.
| Step | Days before | Date for a 1 June renewal | Channel | Job |
|---|---|---|---|---|
| 1. Visit offer | 90 | 3 March | Email and text | Offers three windows for the annual check; no price talk |
| 2. Renewal letter | 60 | 2 April | Email, post if no email on file | New or unchanged price, how renewal works, how to say no |
| 3. Reminder | 30 | 2 May | Text and email | Short: we have not heard from you, here is how; skip anyone who has replied |
| 4. Final notice | 10 | 22 May | Text | States the date and what happens next |
| 5. Confirmation | 0 | 1 June | Renewed: thanks and next visit window. Ended: confirms the end date | |
| 6. One win-back | +30 | 1 July | A single message, then stop |
With a 30-day notice clause, the letter on 2 April leaves 30 days of slack before the notice date, which absorbs a bounced email or a postal delay. Log every send in the contract record: date, channel and which version of the letter went out. If your software cannot hold that, a spreadsheet column will do. Ask the assistant to draft steps 3 to 6 only once, in your voice, and keep the results in the wording pack.
For a business that wants the reminders to fire without anyone remembering, the tutorial on tracking contract renewals and deadlines with AI covers the diary and the alerts, and service plan reminders for heating and cooling customers shows how a neighbouring trade sets up a similar run.
Price-change wording that puts the old and new price in line one
The invented firm in the closing sums has 140 maintenance contracts at $168 a year, rising to $180. An assistant left to itself tends to write the evasive version, because evasive wording is common in price letters. Compare:
Vague: Following a routine review of our costs, a small adjustment will apply to your renewal in line with our terms.
Clear: From 1 June your annual alarm check costs $180 instead of $168, an increase of $12 (about 7%). [One true sentence on why, such as engineer time or parts costs.] If you would rather not renew, you can tell us by 2 May.
The second version follows four rules that the prompt should state outright. Put the old price, the new price and the increase in money and percentage in the first paragraph. Give one reason, and only a true one. Say the date it starts and how to say no. And ban the soft words the assistant loves: "small", "minor", "adjustment", "around". The same facts must appear in every channel, so that the text message says what the letter says.
You need three variants. The rise, as above. A held price, which is a short, pleasant letter: "Your price stays at $168 this year." And a scope change, where something is added or removed: "From 1 June the annual check also includes [X]. [Y] is no longer included. The price is [price]." The scope-change letter needs the most care, because removing something is a bigger change than a few dollars, and it may be treated differently from a price rise under your contract. Put it in front of your lawyer first. A filled-in example shows the difference in plainness. Vague: "To reflect rising component costs we have streamlined what your annual check includes." Clear: "From 1 June the annual check no longer includes replacement batteries. If one needs replacing, we will tell you the price before we fit it. Your annual price stays at $168."
Some customers will write back asking why. Give the assistant the same four rules and the facts, and ask for four sentences: acknowledge the question, give the true reason, restate the option to change or end the contract, offer a call. A message such as "Why has it gone up again? It was only $168." could produce this draft: "Thanks for asking, [first name]. The price rises by $12 because engineer time and parts cost us more than when we last set it. If you would rather change or end the contract, you can tell us by 2 May, and I am happy to talk it through on [number]. We don't expect to raise prices again next year." The last sentence has to go, since nobody can promise that, and it is exactly the kind of line an assistant adds to sound kind. Replies are the one place where the assistant's draft should always be read by a person before it is sent.
The HVAC price increase letter for maintenance plan members works through segmenting members and one-off customers, which is useful if some of your contracts differ in tier or start date.
One renewal letter, filled in field by field
Here is the prompt, then the output for one customer.
Write a renewal letter for an alarm maintenance contract customer.
Write only the opening, a one-paragraph summary of the year, the visit paragraph
and the sign-off. Wherever the letter needs the renewal or cancellation wording,
write the token {{R1}} or {{R2}} on its own line and nothing else. Never write your
own version of those clauses.
Put the old price, the new price, the increase in dollars and the percentage in
the first paragraph. Do not use "small", "minor", "adjustment" or "around".
No claims about safety, security or insurance. Warm, plain, under 200 words
excluding the tokens.
Fields: first name [first name]; system [system type]; renewal date [date];
old price [old]; new price [new]; increase [diff] ([pct]); reason [one true
sentence]; visits this year [list]; call-outs this year [list];
visit windows [window 1], [window 2], [window 3]
A good output (illustrative, with the merge fields replaced except the name) reads:
Subject: Your alarm maintenance contract renews on 1 June
Hello [first name],
From 1 June your annual alarm check costs $180 instead of $168, an increase of $12 (about 7%). Engineer time and replacement parts both cost us more than when we last set the price.
This contract year we attended one call-out, in October, for a door contact. Your annual check is due before 1 June, and you can pick a window: 14 April, 9am to 12pm; 16 April, 1pm to 4pm; or 20 April, 9am to 12pm.
{{R1}}
{{R2}}
Thank you for being a customer.
[owner's first name]
The merge would swap the tokens for the locked text. What matters is what the draft lacks: no clause paraphrased, no insurance line, no promise about next year. Before it goes, check that the old price, new price and dates match the contract record, and that the windows are still open in the diary.
Visit scheduling: reminders that get an engineer through the door
Some contracts quietly fail at the visit. The customer meant to book, forgot, and the year passes with nothing tested. Schedule the visit before the renewal conversation where you can, so the check is done, the report exists and the renewal letter can refer to it. A short sequence works: the offer at 90 days, a nudge 14 days later if nothing is booked, a confirmation three days before the visit, and a plain protocol if nobody is home.
| Moment | Text template |
|---|---|
| Offer | Hi [first name], your annual alarm check is due before [renewal date]. Pick a slot: [link]. Or reply with a day that suits. [business] |
| Nudge | Hi [first name], we haven't booked your alarm check yet. Slots left: [link]. Reply here if you'd like us to ring you. [business] |
| Confirm | Hi [first name], your alarm check is on [day], [window]. Reply C to change it. [business] |
Keep each text under 160 characters after the merge, and use straight apostrophes. Twilio's documentation notes that characters outside the standard set, such as curly quotes, switch a message to an encoding with a much shorter limit, so a 150-character text can bill as three messages. Never put access details in a text, and avoid wording that says when a property will be empty. "We'll be there between 1 and 4" is fine; "we'll let ourselves in while you're away" is not.
If nobody answers the door, the protocol is a short written rule rather than a judgement call: try twice on different days, leave a card, then send a plain letter explaining that the visit is due under the contract and how to rebook. Log each attempt with the date and time, and do not threaten anything. AI can draft the card and the letter. The log is yours. Wording for the card might be: "Sorry we missed you. Your annual alarm check is due under your maintenance contract. To rebook, call [number] or use [link]. Reference [contract number]." And for the letter after the second attempt: "We called on [date] and [date] to carry out your annual alarm check and could not get in. The check is due before [renewal date]. Please choose a time at [link] or call [number]. If a different arrangement would suit you, tell us and we will talk it through."
Opt-outs, silence and the single win-back message
An opt-out has to be easy to find and easy to do. The wording in the letter is something like: "If you would rather not renew, tell us by [date] by replying to this email, calling [number] or using this link. We will confirm in writing and we will not chase you." Then actually do that. Record the opt-out in the contract record the same day, remove the customer from the reminder run, and send a confirmation that states the end date and what stops: the annual check and call-out terms, and monitoring if it was part of the contract.
A confirmation can also contain one neutral sentence: "If your insurance policy mentions alarm maintenance, it is worth checking that wording; we cannot advise on your cover." That is true, useful and not a scare. Ask your adviser which of your messages count as service messages and which as marketing in the place you work, because the opt-out rules for each can differ, and keep a suppression list so that nobody who said no receives the win-back.
The win-back is one message, 30 days after the contract ends, and it is a real offer or nothing: "Hi [first name], your alarm maintenance contract ended on [date]. If you would like it back at $168 until [date], reply YES. If not, no further messages from us on this." After that, stop, and log the outcome so that in a year you can see how many lapsed customers came back without any chasing.
Pre-send checks for a renewal batch
Read every letter in the first batch, then one in five. The checks are short:
- Old price, new price and tier match the contract record for each customer sampled.
- Every date is in the future and the same in the letter, the reminder and the final notice.
- No unmerged placeholders remain: "[first name]", "{{R1}}", "[window 1]".
- The locked text appears exactly once. Search each letter for the words "notice", "cancel" and "renew" outside the tokens; any sentence of the assistant's own about them is a fault.
- Nobody on the do-not-contact list or with an ended contract is in the batch.
- No codes, keyholder details or access notes appear anywhere.
The fourth check earns its place from a failure that is easy to picture. A draft writes the token {{R2}} correctly and then adds a helpful line of its own beneath it: "You can cancel any time with two weeks' notice." The locked clause says 30 days. If the letter goes out, the customer has a sentence from you that contradicts the contract and a very reasonable complaint. The word search catches it in seconds, and the fix is a line in the prompt ("write the token and nothing else") plus a note in the wording pack.
What a price rise has to survive: the break-even sum
Back to the 140 contracts. Revenue today is 140 × $168 = $23,520. After the rise, 131 customers at $180 bring in $23,580, so up to 9 can leave (6.4%) before revenue falls; with 10 gone it is $23,400. In general, revenue holds so long as the share leaving stays below the rise divided by one plus the rise, here 7.1% ÷ 1.071, about 6.7%.
Margin is more forgiving. If a visit costs you $95, each contract earns $73 today and $85 after the rise, so margin today is 140 × $73 = $10,220. At the new price, 121 customers earn $10,285 and 120 earn $10,200, so margin holds until about 19 customers (14%) have left. That is not a licence to relax, because a lost contract is also a lost customer for upgrades and referrals. Treat 6.7% as the line to watch and 14% as the floor.
The reminders earn their keep separately. As an assumption to test, let the 60, 30 and 10-day sequence lift on-time renewals from 72% to 80%. On 140 contracts that is about 11 more renewals, worth 11 × $180 = $1,980 a year. If the sequence changes nothing after two cycles, the cost was a few hours of drafting, and you will know which part to rewrite: the subject line, the timing or the offer. For the marketing side of the same contracts, including how they are offered in the first place, see the sibling tutorial on alarm installation marketing: contracts and referrals.
Renewal questions alarm companies ask about AI
Should a renewal letter go by post or by email?
Use whichever method your contract says counts as written notice, and send the same facts through every channel you use. If the contract is silent, that is a question for your lawyer rather than something to settle by habit. Many firms email first and post a copy to customers who have no email address on file, and each send is logged against the contract record.
Can AI tell me the right notice period for a price change?
No. An assistant will give a confident answer that may not fit your contract, your type of customer or the place you work. The notice period is a legal and contractual question for your lawyer or trade body. AI is useful for drafting the questions to ask them, then for writing the letters once the answers are fixed.
What if a customer never replies to the renewal letters?
What silence means depends on how your contract renews: automatically after proper notice, or only when the customer says yes. Never assume. Keep proof of each notice (date, channel, which version of the letter), send the final notice your timeline specifies, record the outcome and stop. Chasing past that point tends to annoy people and rarely changes the answer.
Further reads
- CCTV Maintenance Contract: Remote Health Checks and Renewals With AI — The same renewal run for camera systems with remote health checks.
- Alarm Company Software: Monitoring, Service and Billing, and Where AI Helps — Where contract records and billing live, and what AI adds to them.
- AV Service Agreements: Support Terms and Renewals Drafted With AI — Draft support terms, exclusions and a four-letter renewal sequence for AV service agreements with AI, using your own service log and a lawyer's review.
- Backflow Testing Software for Plumbers: Reminders and Reports With AI — A small plumbing firm's route to annual backflow test reminders and customer notes: register fields, reminder ladder, cover-note prompts and filing checks.
- CCTV Installation Checklist: Commissioning, Signage and Handover With AI — The commissioning tests, settings, retention sums, signs and handover pages for a CCTV job, plus prompts that draft the customer guide from your sheet.
- AI Tools and AI Development: The Complete 2026 Guide — the AI hub, including every tutorial in the AI-for-business series.
Sources: Twilio's documentation on SMS character encoding; ChatGPT and Claude documentation on Projects. Figures for contracts, prices, visit costs and renewal rates are illustrative, and nothing here is legal advice.