Text Expansion: The Unsexy Productivity Win for Property and Trades Businesses
Text expansion is a small utility that watches what you type. When you type a short trigger — say, :sig — it replaces those four characters with something longer, like your full email signature. That's it. That's the whole thing.
It's not AI. It's not clever. It's a 20-minute setup on a quiet Tuesday that saves you a few seconds, hundreds of times a week. For anyone who lives in email, runs a trades business, manages property, or fills in the same forms every Monday morning, it compounds fast.
This is a companion piece to a talk I gave recently to a mastermind group of property and trades professionals. A few people asked for the list of examples — so here it is, tidied up with a bit more context for anyone landing on this cold.
How it works
You need a text expansion tool. The three I'd recommend:
- Espanso — free, open source, works on Windows, Mac and Linux. The honest recommendation if you want to try this with no financial commitment.
- TextExpander — paid (roughly £40/year), the polished option. Good syncing, worth it if several people in a business want to share a library of snippets.
- Built-in Mac / iOS text replacement — limited but free. Settings → Keyboard → Text Replacement. Fine for a handful of personal shortcuts; won't cope with anything dynamic.
All of them work the same way: you define a trigger (the short bit) and the replacement (the long bit), and the tool sits quietly in the background.
One convention to adopt on day one: start every trigger with a colon (:sig, :addr, :30days). That way the tool never fires mid-word by accident, and you never have to remember whether a particular shortcut starts with a slash or a double-letter — you just type : and start.
The examples
Below are the triggers I use or recommend, grouped by category. Every one is a suggestion, not a prescription — rename them to whatever feels natural. The point is the pattern, not the specific shortcut.
1. Contact and identity details
Every mortgage application, insurance renewal, supplier credit account, utility set-up and portal registration asks for the same ten fields. This category turns a two-minute form into twenty seconds.
| Trigger | Expands to |
|---|---|
:email1 |
Personal email address |
:email2 |
Work email address |
:tel |
Mobile number |
:landline |
Landline / office number |
:addr |
Full postal address on one line |
:addrb |
Full postal address as a multi-line block (for letters) |
:pc |
Just the postcode |
:dob |
Date of birth |
:sig |
Full email signature (name, title, company, phone, website) |
:web |
Your website URL |
Tip — the email "router": if you have multiple email addresses, use a prefix like :@ to pick between them. For example, :@gm → Gmail, :@sd → a company account, :@ltd → your limited company address. One pattern, any number of accounts.
2. Salutations and email boilerplate
The highest-value category for anyone who lives in their inbox — letting agents and editors especially.
| Trigger | Expands to |
|---|---|
:kr |
Kind regards, + your name (with line breaks) |
:bw |
Best wishes, + your name |
:mt |
Many thanks, + your name |
:ts |
Thanks, + your name |
:pfa |
Please find attached |
:well |
I hope this finds you well. |
:w/e |
I hope you had a good weekend. |
:nrn |
No reply necessary — just keeping you in the loop. |
:eod |
I'll come back to you on this by end of day today. |
:eow |
I'll come back to you on this by end of week. |
:ooo |
Your standard out-of-office blurb |
:apol |
Apologies for the delay in coming back to you. |
:chase |
Just a gentle nudge on the email below — any update? |
:intro |
Reusable intro-email template (2–3 lines) |
3. Dates and timestamps — the dynamic ones
This is the category that makes people who've never seen text expansion before sit up. Most tools will let you expand to today's date, tomorrow's date, the date seven days from now — calculated live, every single time you type the trigger.
| Trigger | Expands to |
|---|---|
:dt |
Today's date (e.g. 2026-04-20) |
:dtl |
Today's date, long form (e.g. 20 April 2026) |
:now |
Today's date + current time |
:tmrw |
Tomorrow's date |
:wk |
Date seven days from now (good for "I'll chase this by…") |
:mo |
Date one month from now (rent due, inspection dates) |
:tstamp |
Dated prefix for filenames (2026-04-20_survey.pdf) |
:yr |
Current year (for copyright footers, file labels) |
Why it matters: schedule-of-works entries, inspection reports, rent reviews, filenames on survey PDFs, certification renewal dates — they all need dates typed over and over. A dynamic snippet guarantees you never type 2025 in April 2026 by accident.
4. Company and organisation details
For limited-company landlords, letting agencies, and trades business owners.
Tip: if you run more than one business, namespace these with a prefix per company. I use sd for Solutions Delivered things (:sdvat, :sdregno, :sdbank) and ss for Site Seedling — so there's never a clash.
| Trigger | Expands to |
|---|---|
:vat |
VAT registration number |
:regno |
Company registration number |
:regaddr |
Registered office address |
:utr |
Unique Tax Reference |
:bank |
Bank details block (sort code + account number + account name) |
:iban |
IBAN (for overseas suppliers) |
:ico |
ICO registration number (data protection) |
:ins |
Public liability insurance reference and expiry |
:cis |
CIS (Construction Industry Scheme) number |
:gas |
Gas Safe registration number |
:niceic |
NICEIC / Part P registration |
:cofoot |
Full company name + trading address for the footer of quotes |
5. Trades and property — the bonus pack
This is where text expansion really earns its place on a Monday morning.
Quotes, invoices and client comms
| Trigger | Expands to |
|---|---|
:quotehead |
Standard quote header (company details, date, quote number) |
:quotefoot |
Payment terms ("50% deposit on acceptance, balance on completion") |
:terms |
Link to your full T&Cs |
:vatline |
"All prices exclude VAT at 20%." |
:labourrate |
Your standard day rate + what it includes |
:callout |
Call-out fee and what triggers it |
:30days |
"Payment due within 30 days of invoice date." |
:latefee |
Late-payment clause (statutory interest + £40 fee under the Late Payment of Commercial Debts Act) |
Site and scheduling
| Trigger | Expands to |
|---|---|
:onmyway |
"On my way to site — ETA 20 minutes." (great as an SMS shortcut) |
:running |
"Running about 15 minutes late, apologies." |
:access |
"Please confirm the best time for access and whether anyone will be home." |
:parking |
"Is there off-street parking available, or will I need a permit?" |
:keys |
"Please confirm key collection arrangements." |
:snag |
Snagging list header template |
:sched |
Schedule-of-works header |
UK regulatory and compliance
| Trigger | Expands to |
|---|---|
:epc |
"EPC rating [X] — valid until [date]." |
:gsc |
"Gas Safety Certificate attached, valid for 12 months." |
:eicr |
"EICR last conducted [date], next due [date]." |
:howto |
Link to the How to Rent guide |
:deposit |
Standard tenancy deposit protection wording |
:s21 |
Section 21 boilerplate (if still relevant at time of use) |
Property descriptions (for lettings and sales)
| Trigger | Expands to |
|---|---|
:listhead |
Standard listing opener ("A well-presented [X]-bedroom property situated in…") |
:feats |
Bullet list of common features (double glazing, GCH, fitted kitchen…) |
:transport |
Transport links paragraph (populate for each town) |
:schools |
Catchment / schools paragraph |
:viewings |
"Viewings strictly by appointment — please call [number] or email [address]." |
Your actual properties. If you manage a portfolio — even just three or four units — create one set of snippets per property: :plot1addr, :plot1pc, :plot1epc, :plot1gsc. You'll save hours a month. Genuinely.
6. For writers and freelancers
If you write for a living — whether that's journalism, trade press, or your own newsletter — there's a whole other dimension to this.
Editorial shortcuts
| Trigger | Expands to |
|---|---|
:byline |
Your byline block (name + role + publication) |
:bio |
Your short author bio (50–75 words) |
:biolong |
Your long author bio (~150 words) |
:pitch |
Pitch-email opener template |
:kill |
Standard kill-fee clause |
:rights |
"First British Serial Rights offered; all other rights retained by the author." |
:embargo |
"Embargoed until [date] — please do not publish before this time." |
:hifirst |
"Hi [first name], thanks for getting in touch —" (the personal opener you'd otherwise skip writing) |
Proofing and sub-editing marks
| Trigger | Expands to |
|---|---|
:stet |
stet (restore original) comment |
:tk |
[TK] — journalist shorthand for to come (fact/figure pending) |
:lede |
Standard template for a news lede |
:pullq |
Pull-quote formatting block |
:caption |
Caption + credit template |
:wordcount |
"Target: [X] words. Current draft: [Y]." |
Writer-to-editor comms
| Trigger | Expands to |
|---|---|
:fileattached |
"Copy attached as a Google Doc / Word file — images in separate email to follow." |
:revision |
"Revised draft attached — changes tracked against your notes of [date]." |
:invoice |
"Invoice for [piece title] attached. Payment terms as previously agreed." |
Typographic shortcuts — small but used constantly once you have them:
| Trigger | Expands to |
|---|---|
:emd |
— (em dash) |
:end |
– (en dash) |
:elip |
… (ellipsis) |
:shrug |
¯\(ツ)/¯ |
Where to start
Don't try to set up eighty snippets in one sitting. You won't remember any of them.
- First afternoon. Install a tool. Set up five snippets from Category 1 — your signature, phone, address, postcode, and one salutation.
- First week. Add one snippet a day as you catch yourself re-typing something. If you notice yourself typing the same sentence twice, it's a snippet.
- First month. You'll have thirty-ish, and they'll start to feel automatic. That's when you add the property-specific and compliance ones above.
The snippets you'll actually use reveal themselves. The ones you don't will quietly get deleted. That's the whole game.
Further reading
A few writers who've covered this ground well and are worth a look if you want to go deeper:
- 21 TextExpander examples and ideas — Jimmy Rose
- Save Time with Expert-Level TextExpander Snippets — Asian Efficiency
- How Editors Can Save Time with TextExpander — Turner Proofreading
- TextExpander snippets I like — Toby Osbourn
- My Favourite TextExpander Snippets — Timothy B. Smith
- Estate Agent Jargon Decoded — Business Express
- TextExpander Best Practices
I'm Sam Jenkins. I help small businesses get more out of practical digital tools without the hype — find out more.