0
Total contacts
0
With email
0
No email (call list)
0
Follow-ups due
Build, preview, save and queue guarded outreach from one place.
Manual entry Add contactAdd one prospect manually, then save notes or select them for a campaign.
Bulk entry Import CSVPreview a spreadsheet import before saving new unsuppressed contacts.
Phone outreach Call lists by countyOpen no-email prospects per county — call, log and update details.
Recipients Select contactsSelect contacts or use filters before queueing a campaign.
Saved work Saved campaignsLoad a previous draft or queued send — including County Launch.
Campaigns
Recent campaign drafts and queued sends. Click Load into builder on a card (or the card itself) to open it for sending.
Add Contact
Add one prospect manually or update an existing contact. Select a row from the table to edit an existing record.
Campaign Builder
Build a simple outreach email from visible copy fields, add one optional asset, preview it, then save and queue to eligible contacts. Select contacts or use filters before queueing.
Edit Simple Copy Fields
These fields generate the polished email preview and plain-text fallback. Use merge tags like {{contactName}}, {{agencyName}}, {{town}} or {{county}} where helpful.
Optional Image or Document Asset
Images appear near the top of the email. Documents are shown as a neat button link. Uploaded files are served from tlhportal.co.uk for better deliverability, not raw Firebase Storage links.
Advanced email code
Plain text fallback
Fastest path: Save campaign → Preview recipient count → Queue & send now. Use Queue campaign + Run sender now if you want two separate steps. Leave “Send after” blank for immediate send.
Email Preview
Import Agent Prospects
Upload a CSV with headers. Common columns are mapped automatically: email, agency/company, contact/name, phone, website, town and county. By default existing emails are skipped; enable overwrite to update matching contacts with the latest scraped fields (suppression flags are preserved).
Call lists by county
These are prospects with no email address — mostly Rightmove phone-only imports. Pick a county to open its call list below. Use the agency website (about/contact pages) to find emails, or Call for phone outreach. After contact, Edit or Log call to update details.
Email found — ready to invite
When enrichment or manual edits add an email to a phone-only prospect, they appear here by county — separate from the call lists — so you can send invitations without double-contacting agents already called or already emailed.
Contacts
Find, edit and select prospects for campaign targeting. Tick contacts here, then choose selected contacts in the Campaign Builder before queueing. Rightmove imports are mostly phone-only — use Call lists by county above for phone outreach, or filter No email only here. Use Has email before email campaigns.
| Contact | Agency | Area | Status | Follow-up | Suppression | |
|---|---|---|---|---|---|---|
| Loading contacts... | ||||||
One-to-one Copy Template
Optional fallback for a manual one-to-one email. Use the campaign builder above for guarded sends, recipient suppression and automatic unsubscribe links.
Suppression Safeguards
Campaign sends are split into queue records and processed by a scheduled Firebase Function. Unsubscribe tokens are required before sending; bounced, unsubscribed and do-not-contact contacts are suppressed before queueing and again before send.