@awesomate/hosting-mcp 0.54.0 → 0.56.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (26) hide show
  1. package/dist/index.js +2 -2
  2. package/package.json +1 -1
  3. package/skill/CHANGELOG.json +16 -0
  4. package/skill/awesomate-email/SKILL.md +291 -0
  5. package/skill/awesomate-email/evals/ask-never-emailed/graders/grader.md +22 -0
  6. package/skill/awesomate-email/evals/ask-never-emailed/prompt.md +1 -0
  7. package/skill/awesomate-email/evals/health-segment/graders/grader.md +20 -0
  8. package/skill/awesomate-email/evals/health-segment/prompt.md +1 -0
  9. package/skill/awesomate-email/evals/results-honest/graders/grader.md +19 -0
  10. package/skill/awesomate-email/evals/results-honest/prompt.md +1 -0
  11. package/skill/awesomate-email/evals/spam-folder/graders/grader.md +18 -0
  12. package/skill/awesomate-email/evals/spam-folder/prompt.md +1 -0
  13. package/skill/awesomate-email/evals/starter-lists-studio/graders/grader.md +21 -0
  14. package/skill/awesomate-email/evals/starter-lists-studio/prompt.md +1 -0
  15. package/skill/awesomate-email/evals/write-newsletter/graders/grader.md +24 -0
  16. package/skill/awesomate-email/evals/write-newsletter/prompt.md +1 -0
  17. package/skill/awesomate-email/references/asking-permission.md +116 -0
  18. package/skill/awesomate-email/references/consent-law.md +111 -0
  19. package/skill/awesomate-email/references/copywriting.md +167 -0
  20. package/skill/awesomate-email/references/deliverability.md +81 -0
  21. package/skill/awesomate-email/references/list-planning.md +127 -0
  22. package/skill/awesomate-email/references/migration.md +101 -0
  23. package/skill/awesomate-email/references/reporting.md +53 -0
  24. package/skill/awesomate-email/references/segmentation.md +107 -0
  25. package/skill/awesomate-knowledge/references/ingestion-sources.md +2 -2
  26. package/skill/awesomate-knowledge/references/quotas-and-packs.md +17 -2
@@ -0,0 +1,111 @@
1
+ # Consent law for email: Australia and New Zealand
2
+
3
+ Read this when deciding who may be emailed, when an owner asks "can I email
4
+ these people?", or before any import. Checked against primary sources on
5
+ 1 October 2026. You are not the owner's lawyer: state the practical rule,
6
+ and when a case is genuinely unclear, say so and suggest they check.
7
+
8
+ ## Australia: the Spam Act 2003
9
+
10
+ Three things for every commercial email (anything that offers, promotes or
11
+ links to goods or services, including an email asking for consent):
12
+
13
+ 1. **Consent.** Express (they agreed, for example by filling in a form) or
14
+ inferred (see below). The sender must be able to prove it (s 16(5)).
15
+ 2. **Identify the sender.** The business's legal name, or the owner's name
16
+ and ABN, and how to contact them, valid for 30 days after sending (s 17).
17
+ 3. **A working unsubscribe.** A link or a reply address; "reply with
18
+ unsubscribe" is valid. No login, no extra details. It must keep working
19
+ for 30 days, and the withdrawal takes effect within 5 business days
20
+ (s 18; Sch 2 cl 6). Build to "at once": Gmail and Yahoo expect two days.
21
+
22
+ **Asking for consent by email is itself a commercial message.** ACMA: "You
23
+ cannot send an electronic message to ask for consent, because this is a
24
+ marketing message." A message that links to marketing content is commercial
25
+ too.
26
+
27
+ **Inferred consent is narrow.** The Act allows consent that "can reasonably
28
+ be inferred from the conduct and the business and other relationships" (Sch
29
+ 2 cl 2). ACMA reads that as "a provable, ongoing relationship with your
30
+ business, and the marketing is directly related to that relationship". It
31
+ "does not cover sending messages after someone has just bought something",
32
+ and its 2024 statement of expectations says: "Do not infer consent from
33
+ one-off purchases ... including in cases where email addresses are obtained
34
+ to send receipts or tax invoices", and "Do not use consent that is old,
35
+ where a consumer would not expect it to still apply."
36
+
37
+ In practice:
38
+
39
+ | Who | Inferred consent? |
40
+ |---|---|
41
+ | A current member, student, retained client, service-plan or maintenance-contract customer | Usually yes, for messages directly related to that relationship |
42
+ | A property manager or business you do repeat work for | Usually yes, for related messages to the person you deal with |
43
+ | Someone who had one job, one purchase or one appointment | No |
44
+ | Someone who asked for a quote and didn't go ahead | Not established; treat as no |
45
+ | An address you hold only because you sent a receipt or invoice | No |
46
+ | A former customer from years ago | No ("old" consent) |
47
+
48
+ **Conspicuous publication** (Sch 2 cl 4) is a narrow exception for business
49
+ addresses: published for a person or role, publication reasonably assumed to
50
+ be agreed, no "no marketing" statement next to it, and the email relevant to
51
+ their work. The mere fact an address is published is not consent.
52
+
53
+ **Double opt-in is not required**, but ACMA recommends it. Filling in a form
54
+ is express consent. Keep records of how consent was obtained, the terms, and
55
+ the date and time. ACMA has said nothing specific about people who signed up
56
+ but never clicked the confirmation link; treat them as not emailable.
57
+
58
+ **Penalties.** For a company with no prior record, up to 100 penalty units
59
+ per contravention, capped at 2,000 units a day; ten times that with a prior
60
+ record (s 25). At $364 a unit from 1 July 2026 that is $36,400 per message
61
+ breach and $728,000 a day. Recent ACMA actions: Commonwealth Bank $7.5m (2024),
62
+ Pizza Hut $2.5m (2024), Ticketek $515,040 (2023), Outdoor Supacentre
63
+ $302,500 (2024, "companies can't outsource their compliance obligations"),
64
+ Lululemon $702,900 and Latitude $3.96m (2026).
65
+
66
+ ## New Zealand: the Unsolicited Electronic Messages Act 2007
67
+
68
+ Much the same. Consent is express, inferred ("from the conduct and the
69
+ business and other relationships"), or deemed (conspicuous publication, same
70
+ conditions). A message that links to or directs someone to marketing is
71
+ commercial (s 6). The Department of Internal Affairs says consent cannot be
72
+ inferred from a single transaction, "silence should not be taken as consent",
73
+ and emailing an old database to ask people to unsubscribe "cannot establish
74
+ consent". Unsubscribe takes effect within 5 working days and must work by the
75
+ same method the message came by (ss 9, 11). On double opt-in the DIA is
76
+ firmer than Australia: "If this link is not clicked, then electronic
77
+ marketing should not take place." Penalties up to $200,000 for an individual
78
+ and $500,000 for an organisation.
79
+
80
+ ## Privacy Act 1988 (Australia), where it touches email
81
+
82
+ - **Health information is sensitive information.** Collecting it needs the
83
+ person's consent (APP 3.3), and using sensitive information for direct
84
+ marketing needs consent too (APP 7.4). Health service providers are never
85
+ exempt as small businesses.
86
+ - So: never build a marketing group from conditions or diagnoses. Use an
87
+ opt-in interest instead.
88
+ - The statutory tort for serious invasions of privacy has applied since
89
+ 10 June 2025. Direct-marketing changes are still only proposed (exposure
90
+ draft, August 2026).
91
+
92
+ ## The mailbox providers' rules
93
+
94
+ Not law, but they decide whether email arrives. See `deliverability.md`.
95
+ Google's Workspace policy bans "unsolicited mass email" and can suspend the
96
+ account; Microsoft says businesses that need to send newsletters "should use
97
+ third-party providers". Neither the owner's Gmail nor their Microsoft 365
98
+ mailbox is a bulk sending tool.
99
+
100
+ ## Sources
101
+
102
+ - Spam Act 2003: https://www.legislation.gov.au/C2004A01214/latest/text
103
+ - ACMA, Avoid sending spam: https://www.acma.gov.au/avoid-sending-spam
104
+ - ACMA, consent expectations (2024): https://www.acma.gov.au/publications/2024-07/guide/consumer-consent-expectations-businesses-conducting-telemarketing-and-e-marketing
105
+ - ACMA enforcement: https://www.acma.gov.au/investigations-spam-and-telemarketing
106
+ - Penalty unit from 1 July 2026: https://www.legislation.gov.au/F2026N00424/asmade/2026-06-16/text/original/pdf
107
+ - UEM Act 2007: https://www.legislation.govt.nz/act/public/2007/0007/latest/whole.html
108
+ - DIA FAQs: https://dia.govt.nz/Spam-Frequently-Asked-Questions and https://www.dia.govt.nz/Spam-Three-Steps
109
+ - Privacy Act 1988: https://www.legislation.gov.au/C2004A03712/latest/text
110
+ - Google Workspace sending limits: https://knowledge.workspace.google.com/admin/gmail/gmail-sending-limits-in-google-workspace
111
+ - Exchange Online limits: https://learn.microsoft.com/en-us/office365/servicedescriptions/exchange-online-service-description/exchange-online-limits
@@ -0,0 +1,167 @@
1
+ # Writing emails for a small business's customers
2
+
3
+ Read this before drafting any email. The goal is an email the owner would be
4
+ happy to have written themselves, that a customer reads in twenty seconds and
5
+ acts on.
6
+
7
+ ## The voice
8
+
9
+ - **The owner, writing to one person.** First person ("I", "we"), signed by
10
+ a real person. Not "Dear Valued Customer", not a brand talking to a crowd.
11
+ - **Their words, not marketing words.** Reuse how the owner talks about their
12
+ work. If they say "hot water unit", don't write "water heating solution".
13
+ If the account has a brand voice on file, follow it.
14
+ - **Australian or New Zealand English.** Organise, colour, centre, licence
15
+ (noun), program. Mobile, not cell. Postcode, not zip. Autumn, not fall.
16
+ Dates as 4 October or 4/10. Money in AUD or NZD with the dollar sign.
17
+ - **Southern hemisphere calendar.** December is summer and the Christmas
18
+ shutdown; storm season in Queensland and New South Wales runs roughly
19
+ November to March; winter is June to August. EOFY is 30 June in Australia,
20
+ 31 March in New Zealand. School terms and public holidays differ by state
21
+ and region. Check before sending.
22
+ - **Plain, warm, direct.** "G'day" or "Kia ora" only if the owner talks that
23
+ way. No hype, no exclamation runs, no ALL CAPS, no emoji, no em-dashes
24
+ (Awesomate's checks refuse an em-dash in an email).
25
+
26
+ ## Structure of one email
27
+
28
+ 1. **Subject line**: specific and plain, usually under about 50 characters.
29
+ It should be true of the body.
30
+ 2. **Preview text**: the line shown after the subject in the inbox. Add to
31
+ the subject; never repeat it, and never leave it to "View in browser".
32
+ 3. **Opening line**: why this, why now, why you. One sentence.
33
+ 4. **Body**: one idea. Two or three short paragraphs, or a short list.
34
+ 5. **One button**: a verb and an outcome ("Book a storm-season check", "See
35
+ the new timetable"). Secondary links are fine as plain text; a second
36
+ button is a second email.
37
+ 6. **Sign-off from a person**, optionally a P.S. (people read them).
38
+ 7. **Footer**: why they're getting it ("You asked for seasonal tips"), the
39
+ business name and ABN or contact details, and unsubscribe. In Awesomate
40
+ the hub adds the footer and the unsubscribe link; you write only the
41
+ reason line, in the draft's `reason`.
42
+
43
+ ## Subject lines that work for small businesses
44
+
45
+ - The question the customer is already asking: "Is your hot water system on
46
+ borrowed time?"
47
+ - The useful number: "3 things to check before the first storm"
48
+ - The local hook: "Carindale: water restrictions start Monday"
49
+ - The plain announcement: "Saturday classes start 12 October"
50
+ - The owner's voice: "A quick one from Rob"
51
+
52
+ Avoid: fake "RE:" or "FWD:" (misleading, and it trains people to distrust
53
+ you), clickbait the body doesn't pay off, ALL CAPS, piles of emoji, and
54
+ "Newsletter #14".
55
+
56
+ ## Email types and what each one needs
57
+
58
+ | Type | Send when | Must include |
59
+ |---|---|---|
60
+ | Welcome | Straight after joining | What they'll get and how often, one useful thing now, who it's from |
61
+ | Tips or newsletter | On the promised cadence | One main idea; link to more |
62
+ | Announcement | Something genuinely new | What changed, who it's for, what to do |
63
+ | Offer | A real offer with a real end | The exact terms, the real end date, how to claim |
64
+ | Service reminder | Something is due | What's due, why it matters, one-click booking |
65
+ | Event invite | 2 to 4 weeks before | Date, time, place, cost, how to book |
66
+ | Win-back | Past customer, gone quiet | A personal note, a reason to come back, no guilt |
67
+ | Still want these? | Quiet for 6 to 12 months | One click to stay, otherwise we stop. Then stop. |
68
+ | Review request | After a finished job | A direct link; ask everyone, not only the happy ones |
69
+
70
+ ## Rules from the law and the industry bodies
71
+
72
+ - **No invented proof.** No made-up testimonials, reviews, numbers or case
73
+ studies. Real reviews only with permission and quoted accurately.
74
+ - **Offers must be real.** "Was $X, now $Y" only if $X was the genuine
75
+ price. "Ends Friday" only if it ends Friday. "Free" means free. (Australian
76
+ Consumer Law; NZ Fair Trading Act.)
77
+ - **Reviews:** asking only satisfied customers for reviews ("review gating")
78
+ can mislead under consumer law. Ask everyone.
79
+ - **Registered health practitioners** (physio, chiro, dental, psychology,
80
+ optometry, osteopathy and others regulated by Ahpra) **cannot use
81
+ testimonials in advertising** for their regulated services, and must not
82
+ create unreasonable expectations or encourage unnecessary use. No
83
+ before-and-after claims, no "cure", no discounts that pressure people into
84
+ treatment.
85
+ - **Financial services:** if the firm holds an AFSL, broadcast content is
86
+ general advice at most and carries their warning. Never write personal
87
+ advice into a broadcast.
88
+ - **Real estate:** don't publish a vendor's sale price or a buyer's details
89
+ without permission.
90
+
91
+ ## Personalisation
92
+
93
+ - First name only when the data is reliable; otherwise "Hi there". A wrong
94
+ name is worse than none. In Awesomate, `{{first_name|there}}` does both.
95
+ - Refer to their history only when it's accurate and expected: "the hot
96
+ water system we installed in 2019" is helpful from a plumber. "We noticed
97
+ you looked at our pricing page" is creepy.
98
+ - AI-personalised emails (a different paragraph per person) are fine when
99
+ every version is drafted from approved content and the owner has seen
100
+ samples. Show three examples, including the strangest one. Awesomate's
101
+ emails personalise with first name, last name and email only, so this is
102
+ for other platforms.
103
+
104
+ ## From a video (Loom, YouTube, Vimeo)
105
+
106
+ Watch it first (the watch skill) so the email describes what is actually in
107
+ it. Email clients don't play video: use a still from the video with a play
108
+ button drawn on it, linking to the video. Summarise the useful part in the
109
+ email itself, so someone who never clicks still gets value.
110
+
111
+ ## Design and accessibility
112
+
113
+ Single column. Real text, never text inside an image. Body at least about
114
+ 16px. Buttons as real links with descriptive text, never "click here".
115
+ Alt text on every image. Works in dark mode. A plain-text version always.
116
+ No attachments: link to the file instead. In Awesomate the theme handles
117
+ layout, dark mode and the plain-text version; you supply the words, the alt
118
+ text and https links.
119
+
120
+ ## Length
121
+
122
+ Most small-business emails are best between about 75 and 200 words. A
123
+ newsletter can be longer when it's scannable (short sections with clear
124
+ headings), but if it needs scrolling on a phone, ask whether it's two emails.
125
+
126
+ ## Worked example: trades tips
127
+
128
+ Subject: 3 things to check before the first storm
129
+ Preview: Two minutes with a bucket can save a flooded laundry.
130
+
131
+ > G'day Sam,
132
+ >
133
+ > Storm season's nearly here. Before the first big one, it's worth two
134
+ > minutes on these:
135
+ >
136
+ > 1. **Gutters.** Clear leaves before they overflow into the eaves.
137
+ > 2. **Downpipes.** Pour a bucket down each and watch where it goes.
138
+ > 3. **The stormwater pit.** Lift the grate and check it isn't full of silt.
139
+ >
140
+ > If any of them look wrong, we'll sort it before the rain does.
141
+ >
142
+ > [Book a storm-season check]
143
+ >
144
+ > Cheers,
145
+ > Rob
146
+ >
147
+ > P.S. If your hot water system is more than 10 years old, ask us to look at
148
+ > it while we're there.
149
+
150
+ ## Worked example: studio term enrolment (New Zealand)
151
+
152
+ Subject: Term 4 enrolments open Monday
153
+ Preview: Saturday hip hop is back, and there's a new adult beginners class.
154
+
155
+ > Kia ora Mere,
156
+ >
157
+ > Term 4 starts on 13 October and enrolments open this Monday at 9am.
158
+ > Saturday hip hop is back by popular demand, and we've added an adult
159
+ > beginners contemporary class on Wednesday nights.
160
+ >
161
+ > Spots in the Saturday classes went in two days last term, so if Aria is
162
+ > keen, Monday morning is the time.
163
+ >
164
+ > [See the Term 4 timetable]
165
+ >
166
+ > Ngā mihi,
167
+ > Jess
@@ -0,0 +1,81 @@
1
+ # Keeping email out of the spam folder
2
+
3
+ Read this when setting up sending, before a big or unusual send, or when
4
+ the owner says emails are going to spam.
5
+
6
+ ## The set-up that protects the business
7
+
8
+ - **Send marketing from a subdomain**, for example `news.theirdomain.com.au`,
9
+ never from the main domain the owner uses for quotes and invoices. If a
10
+ campaign goes badly, the damage stays on the subdomain.
11
+ - **SPF, DKIM and DMARC all pass**, aligned with the From address. DMARC can
12
+ start at `p=none` on the subdomain and tighten to quarantine once mail has
13
+ passed cleanly for a few weeks. Never change the main domain's DMARC to
14
+ set up marketing.
15
+ - **A branded link domain** (for example `links.news.theirdomain.com.au`)
16
+ rather than a shared tracking domain. Never use URL shorteners in email.
17
+ - **Never bulk-send from the owner's own Gmail or Microsoft 365 mailbox.**
18
+ Those accounts have daily limits and outbound spam controls, and a
19
+ suspension takes the owner's everyday email with it. Small personal
20
+ batches are a different thing (see `asking-permission.md`).
21
+
22
+ ## Starting a new sending address (warm-up)
23
+
24
+ New addresses have no reputation. Build it over about two weeks: a small
25
+ first day, growing each day, most engaged people first (recent customers and
26
+ recent clickers). One schedule that works: 150 on day one, 700 by day four,
27
+ 2,000 by day seven, then the full list. A sudden big send from a new or
28
+ long-silent address looks like a spammer.
29
+
30
+ In Awesomate each approved email goes to everyone on its list who may be
31
+ emailed, so warm up by list: the smallest, most engaged list first (often the
32
+ customers list), then the bigger ones over the following weeks.
33
+
34
+ ## List hygiene
35
+
36
+ Awesomate does the first of these for you: anyone who unsubscribes,
37
+ hard-bounces or marks an email as spam is left out of every later send, and
38
+ every marketing email carries one-click unsubscribe.
39
+
40
+ - Hard bounces and spam complaints: suppressed immediately, for good.
41
+ - Soft bounces: retry; suppress after several in a row.
42
+ - Quiet for six to twelve months (no click, reply, booking or purchase): one
43
+ "still want these?" email, then stop sending to anyone who doesn't respond.
44
+ Old, unread addresses are where spam traps live.
45
+ - Never buy, rent or scrape a list. Never import an event attendee list
46
+ someone else ran.
47
+ - Watch for typo domains on sign-up forms (gmial.com, hotmial.com).
48
+
49
+ ## What the big inboxes require
50
+
51
+ Google and Yahoo (since February 2024): every sender needs SPF or DKIM,
52
+ valid DNS and TLS, and a low spam complaint rate. Senders of roughly 5,000
53
+ or more messages a day to them also need SPF, DKIM and aligned DMARC, and
54
+ one-click unsubscribe (the `List-Unsubscribe-Post` header, RFC 8058) on
55
+ marketing mail, honoured within two days. Keep the complaint rate below
56
+ 0.1%; at 0.3% Gmail starts filtering or rejecting. Microsoft applies similar
57
+ rules to high-volume senders to Outlook.com addresses. Build to the bulk
58
+ standard even for small lists: it costs nothing and the thresholds are
59
+ measured across everything sent from the domain.
60
+
61
+ ## Content that hurts
62
+
63
+ Image-only emails, missing plain-text version, link text that doesn't match
64
+ the link, URL shorteners, attachments, a different From name every send,
65
+ and subject lines the body doesn't pay off. "Spam words" matter far less
66
+ than people think; reputation and complaints matter far more.
67
+
68
+ ## Diagnosing "we're going to spam"
69
+
70
+ 1. **Check authentication** on a received copy: the headers should show
71
+ `spf=pass`, `dkim=pass`, `dmarc=pass` for the sending domain.
72
+ 2. **Check complaint rate and reputation**: Google Postmaster Tools for the
73
+ sending domain; the platform's complaint numbers.
74
+ 3. **What changed?** A new import, an old segment, a jump in frequency, a
75
+ new link domain, a new From address. The cause is almost always one of
76
+ these.
77
+ 4. **Fix the cause, then recover slowly**: send only to the most engaged for
78
+ a couple of weeks, then widen.
79
+
80
+ Don't "fix" spam placement by rewording subject lines while the real cause
81
+ (an old list, high complaints) is still there.
@@ -0,0 +1,127 @@
1
+ # Planning the lists: the first conversation
2
+
3
+ Read this when a business is starting email properly, moving off another
4
+ platform, or asks "what lists should we have?".
5
+
6
+ ## Lists are promises, groups are filters
7
+
8
+ | | A list | A group |
9
+ |---|---|---|
10
+ | What it is | What someone agreed to receive | A filter over people already on lists |
11
+ | Who creates it | The owner, with wording people see | Anyone, any time |
12
+ | Needs consent? | Yes, its own | No, it inherits from the list |
13
+ | How many | Two to four | As many as are useful |
14
+ | Example | "Tips & seasonal checks" | "On Tips, hot water job over 8 years ago" |
15
+
16
+ Why so few lists: each one is a separate promise, needs its own sign-up
17
+ wording, and has to be honoured on cadence. Five lists that each send monthly
18
+ is five emails a month to someone on all of them. Most small businesses are
19
+ best served by one main list plus one customers-only list.
20
+
21
+ ## The method
22
+
23
+ 1. **Learn the business.** Read the website (services, seasons, what is
24
+ booked or bought again and again), the business overview if the account
25
+ has one, and how they describe themselves. Note the customer's buying
26
+ cycle: a hot water system every 10 to 15 years, a dental check every 6
27
+ months, a dance term every 10 weeks, a tax return every year.
28
+ 2. **Read the source list.** Groups, interests and tags from the old
29
+ platform say what people actually signed up for. Sign-up form names and
30
+ dates tell you which promise each person saw.
31
+ 3. **Read the job or sales history if connected.** Customers with an
32
+ ongoing relationship (members, retained clients, service plans, repeat
33
+ work) can usually receive messages directly related to it, once the
34
+ owner confirms the relationship. One-off customers can't, until they
35
+ sign up (see `consent-law.md` and `asking-permission.md`). Customers are
36
+ still the most valuable people on any list.
37
+ 4. **Propose two to four lists**, each as one sentence the owner can read
38
+ aloud: name, the promise in the words a subscriber will see, how often,
39
+ who starts on it and why, and the count. Then three to five starter
40
+ groups.
41
+ 5. **Put imported people only on a list their sign-up covers.** Someone who
42
+ signed up for "seasonal tips" has not agreed to "offers". When a mapping
43
+ is a judgement call, put them on the closer, narrower list and tell the
44
+ owner what you did.
45
+ 6. **Let the owner change it in their words.** "Drop News, fold it into
46
+ Tips" is a complete instruction. Repeat back what will change, then make
47
+ the change. In Awesomate the owner creates and changes lists in the hub
48
+ (https://hub.awesomate.ai/contacts, or while importing), so give them each
49
+ list's name and wording ready to paste, and say which ones are customers
50
+ lists.
51
+
52
+ Present the proposal like this (keep it this short):
53
+
54
+ > I'd start with three lists.
55
+ > **Tips & seasonal checks**, about monthly, more in storm season. Promise:
56
+ > "Seasonal maintenance tips by email. Unsubscribe any time." 1,527 people
57
+ > from your Mailchimp "Newsletter" group start here.
58
+ > **Service reminders**, only when something is due, about work we did for
59
+ > them. 412 repeat customers and property managers, if you confirm you work
60
+ > with them regularly. One-off customers join when they next book.
61
+ > **News & offers**, a few times a year. 1,179 people who ticked "specials"
62
+ > on your old form.
63
+ > And groups for: hot water systems over 8 years old, Carindale and
64
+ > surrounds, clicked but didn't book, quiet for six months.
65
+ > Want any of those changed?
66
+
67
+ ## Starter sets by kind of business
68
+
69
+ These are starting points to adapt, not templates to copy. Rename everything
70
+ into the owner's own words.
71
+
72
+ **Trades and field service** (plumbers, electricians, builders, pest,
73
+ cleaning, solar). Lists: Tips & seasonal checks (monthly, heavier before
74
+ storm season, winter or summer depending on the trade); Service reminders
75
+ (customers, when due); News & offers (occasional). Groups: by suburb or
76
+ postcode radius, by job type, by age of the thing installed, landlords vs
77
+ owner-occupiers, commercial vs residential.
78
+
79
+ **Studios, classes and training** (dance, martial arts, yoga, music,
80
+ tutoring, swim). Lists: Timetable & new classes (per term, plus changes);
81
+ Events & workshops; Members' and families' news (current students, inferred
82
+ from enrolment). Groups: by class or level, parents vs adult students,
83
+ lapsed students (no enrolment this term), trial-class attendees who didn't
84
+ join. Term dates drive cadence: send before enrolments open, not during
85
+ holidays.
86
+
87
+ **Retail, ecommerce and product.** Lists: New arrivals & restocks; Sales &
88
+ offers; Care & how-to (product care, recipes, guides). Groups: bought in a
89
+ category, repeat buyers, first-time buyers in their first 30 days, haven't
90
+ bought in 6 or 12 months, VIP by spend. Be careful with frequency: offers
91
+ weekly trains people to wait for the discount.
92
+
93
+ **Health and allied health** (physio, chiro, dental, psych, optometry,
94
+ vets). Lists: Clinic news & general tips (no condition-specific content);
95
+ Appointment and recall reminders (patients, part of their care, kept
96
+ separate from marketing). Groups: only from non-sensitive facts unless the
97
+ patient explicitly consented to that use (location, practitioner seen,
98
+ "interested in Pilates" from an opt-in). Never a group built from diagnoses
99
+ or conditions. Registered health practitioners cannot use testimonials in
100
+ advertising. See `copywriting.md`.
101
+
102
+ **Real estate and property.** Lists: Suburb market updates; New listings &
103
+ open homes; Landlord updates (landlords only). Groups: by suburb, buyers vs
104
+ sellers vs landlords vs tenants, appraisal requested, price band. Sold
105
+ results need care around vendor privacy.
106
+
107
+ **Finance, accounting and advisory.** Lists: Tax time & key dates (BAS,
108
+ EOFY, lodgement deadlines); Business tips; Client updates (current clients).
109
+ Groups: sole traders vs companies, BAS quarterly vs monthly, clients with
110
+ upcoming lodgements. If the firm holds an AFSL, broadcast content stays
111
+ general and carries their general advice warning; ask them for it.
112
+
113
+ **Coaching and consulting.** Lists: Weekly or fortnightly letter (the
114
+ owner's thinking, one idea per email); Programs & events. Groups: past
115
+ clients, workshop attendees, downloaded a guide.
116
+
117
+ **Hospitality** (cafes, restaurants, venues). Lists: What's on & specials;
118
+ Functions & events. Groups: by venue, booked a function, birthday month
119
+ (only if collected with consent).
120
+
121
+ ## What the owner should leave with
122
+
123
+ - The lists, each with its promise wording (this becomes the consent wording
124
+ version 1), cadence and starting count.
125
+ - The starter groups, each as a sentence and a count.
126
+ - What happens to people who fit no list: they stay as contacts and are not
127
+ emailed until they join something.
@@ -0,0 +1,101 @@
1
+ # Moving a list off Mailchimp, ActiveCampaign or Ontraport
2
+
3
+ Read this before importing from another platform. The aim is to bring the
4
+ consent records as well as the addresses, so that on day one everyone's
5
+ status is known and nobody who left is ever emailed again.
6
+
7
+ ## Into Awesomate's Contacts & email
8
+
9
+ The owner imports, in the hub at https://hub.awesomate.ai/contacts/import
10
+ (Bring your list). It takes a spreadsheet (a CSV with an email column),
11
+ Mailchimp (an API key, which is used once and not kept, or the subscribed,
12
+ unsubscribed and cleaned export files), an ActiveCampaign export (one file per
13
+ status, or one file with a Status column) or an Ontraport export (with the
14
+ Bulk Email Status column). The hub reads each person's status, puts the
15
+ unsubscribed and bounced in first, and sorts everyone by the record of how
16
+ they agreed: a sign-up record, needs the owner's word, or unknown. At review
17
+ the owner picks the lists, gives their word for the people with no record if
18
+ they can, may say that everyone with a given tag is a customer they work with
19
+ regularly (which puts them on a customers list), and commits. They can undo an import until the end of that day.
20
+
21
+ You can't import or commit, because committing is the owner's statement about
22
+ who agreed. Your part: read the export first, report the counts per status,
23
+ and suggest which list each group or tag belongs on (below).
24
+
25
+ ## Bring these, not just the emails
26
+
27
+ - Status (subscribed, pending, unsubscribed, bounced, complained).
28
+ - When and how they signed up: time, source or form, IP if recorded,
29
+ confirmation time if double opt-in.
30
+ - Groups, interests and tags (they map to lists or groups, see below).
31
+ - Custom fields worth keeping (suburb, customer type, last job).
32
+ - The last 12 months of clicks if available, to send to the most engaged
33
+ first while a new sending address warms up.
34
+
35
+ ## Status maps
36
+
37
+ | Platform | Status in the source | Becomes |
38
+ |---|---|---|
39
+ | Mailchimp | subscribed, with OPTIN_TIME / CONFIRM_TIME | Can be emailed on the matching list |
40
+ | Mailchimp | subscribed, no sign-up record | Needs the owner's statement before anyone emails them |
41
+ | Mailchimp | pending (never confirmed) | Not emailed. See `asking-permission.md` |
42
+ | Mailchimp | unsubscribed | Suppressed, permanently |
43
+ | Mailchimp | cleaned (hard bounced) | Suppressed, permanently |
44
+ | Mailchimp | transactional, archived | Not on any marketing list |
45
+ | ActiveCampaign | Active (list status 1) | Can be emailed on that list |
46
+ | ActiveCampaign | Unconfirmed (0) | Not emailed |
47
+ | ActiveCampaign | Unsubscribed (2), Bounced (3) | Suppressed |
48
+ | Ontraport | Opted-in, Double opt-in | Can be emailed |
49
+ | Ontraport | Transactional Only | Not on any marketing list |
50
+ | Ontraport | Hard bounce, Under review | Suppressed |
51
+
52
+ Where to find them: Mailchimp exports an audience as a ZIP with subscribed,
53
+ unsubscribed and cleaned files (Audience, All contacts, Export Audience); the
54
+ API also returns `timestamp_signup`, `timestamp_opt` and `ip_opt`.
55
+ ActiveCampaign's API URL and key are under Settings, Developer. Ontraport's
56
+ API key and App ID are under Administration, Integrations; the email status
57
+ field is `bulk_mail` (Bulk Email Status in an export). For Awesomate, only
58
+ Mailchimp is read by API key; ActiveCampaign and Ontraport come in as export
59
+ files.
60
+
61
+ Platform field names change; check the export headers rather than trusting
62
+ this table blindly, and say so if a column you expected isn't there.
63
+
64
+ ## Groups and tags: list or group?
65
+
66
+ - A group or interest someone **chose** on a sign-up form ("Tips", "Specials")
67
+ is a promise: map it to a list.
68
+ - A tag the business **applied** ("customer", "Carindale", "VIP") is a fact:
69
+ map it to a field or a group, never to a list.
70
+ - When a source has one big list and no groups, everyone goes on the list
71
+ closest to what the sign-up form promised. Find the form wording if you
72
+ can.
73
+
74
+ ## Order of work
75
+
76
+ 1. Read the source and report counts per status before importing anything.
77
+ 2. Agree the lists (see `list-planning.md`).
78
+ 3. Import, with suppressions first, so a suppressed address can never be
79
+ re-added as subscribed by a later row. (Awesomate's import does this
80
+ itself.)
81
+ 4. The owner confirms anything that needs their statement.
82
+ 5. Decide where new sign-ups go. If the new system takes sign-ups, point the
83
+ website form and any automations at it. Awesomate's Contacts & email
84
+ doesn't host a sign-up form, so keep the form in a tool that records what
85
+ each person agreed to, and import from it.
86
+ 6. **Keep the old platform open for 30 days after its last send.**
87
+ Unsubscribe links in old emails must keep working for that long. At the
88
+ end, import once more to catch late unsubscribes, then close it.
89
+ 7. Leave the old platform's DNS records alone until it is closed.
90
+
91
+ ## Things that go wrong
92
+
93
+ - Re-importing an old export after unsubscribes have happened, which
94
+ re-subscribes people. Suppressions always win.
95
+ - Treating "pending" as subscribed. They never confirmed.
96
+ - Importing a "leads" or "event attendees" list with no consent as if it
97
+ were subscribers.
98
+ - Mapping every tag to a list, so people are "on" ten lists they never
99
+ chose.
100
+ - Sending to the whole imported list on day one from a new address. Warm up
101
+ (see `deliverability.md`).
@@ -0,0 +1,53 @@
1
+ # Reading results honestly
2
+
3
+ Read this when reporting on a send, comparing sends, or when the owner asks
4
+ "was that good?".
5
+
6
+ ## What each number means
7
+
8
+ | Number | What it really tells you | Trust it? |
9
+ |---|---|---|
10
+ | Delivered | Accepted by the receiving server. Not "in the inbox". | Yes |
11
+ | Bounced | Address doesn't exist (hard) or is temporarily full or blocked (soft). | Yes |
12
+ | Clicked (people) | Unique people who clicked, after filtering inbox scanners. | Yes, the main signal |
13
+ | Replied | People who wrote back. Small but strong. | Yes |
14
+ | Booked, bought | Only if bookings or orders are connected and matched to the email. | Yes, when connected |
15
+ | Unsubscribed | People who left. Read with the content and cadence. | Yes |
16
+ | Complaints | People who pressed "Report spam". The one that hurts deliverability most. | Yes |
17
+ | Opened | Apple Mail and many scanners open emails automatically, so this overstates reading by a lot. | Trend only |
18
+
19
+ Never decide "who is engaged", pick A/B winners, or praise a send on opens.
20
+
21
+ ## Healthy ranges (rules of thumb, not benchmarks)
22
+
23
+ - Bounces under about 2% of a send. Above that, the list has old or bad
24
+ addresses; stop and clean before sending again.
25
+ - Complaints well under 0.1%. Gmail treats 0.3% as a hard line.
26
+ - Unsubscribes: a fraction of a percent per send is normal. A spike means
27
+ the content didn't match the promise, or the cadence went up.
28
+ - Clicks vary enormously by business and list. **Compare a business with its
29
+ own previous sends**, not with published industry averages, which are
30
+ built on opens and on businesses unlike this one.
31
+
32
+ ## What to do about what you see
33
+
34
+ | You see | Likely cause | Do |
35
+ |---|---|---|
36
+ | Bounces jumped | An old or bought list was imported, or a typo-heavy form | Remove hard bounces, check the source, add form validation |
37
+ | Complaints | People don't remember agreeing, or got more than promised | Check where those people came from; slow the cadence; make the reason-for-receiving line clearer |
38
+ | Unsubscribes spiked | Off-promise content, or a sudden frequency jump | Send what the list promised; offer a less-often option |
39
+ | Clicks dropping send on send | Same email every time, or too often | Fewer, more specific emails; send to a narrower group |
40
+ | Gmail delivering to spam | Authentication, complaints, or a burst to cold addresses | See `deliverability.md` |
41
+
42
+ ## How to report to the owner
43
+
44
+ One-line verdict, three numbers, at most three next steps, each tied to a
45
+ number. Credit honestly: a click is not a booking unless the booking is
46
+ connected.
47
+
48
+ > Your best send so far. 1,398 people got it, 214 clicked (15.3%, up from
49
+ > 14.7% in September), and nobody complained.
50
+ >
51
+ > Next: 46 people tagged hot water clicked the hot water
52
+ > link. I'd send them a short personal note about the new heat pump option.
53
+ > Want me to draft it?