← Review playground Ops Board ↗
Reader doc

Re-engaging last year's signups: who, what we say, the plan (RME-170)

Not indexed. Rendered from 02-projects/review-my-emails/social-media/linkedin-posts/2026-10-03-rme-170-reengage-strategy.md. Highlight any line and use Hypothesis on the right edge to leave a note.

Re-engaging last year's signups, by hand (RME-170)

What YT ruled (3 Oct, 20:40). Consent is settled. Everyone on last year's list ticked a checkbox and confirmed by double opt-in for the twice-a-week newsletter (promos and email info). The terms, privacy policy and forms were clear, and the lawyer is fine with it. Everyone can be emailed. The app is not live yet, so there is no rush. We do it by hand and personally, over one to two weeks.

The four steps.

  1. Look each person up online: LinkedIn, Google, and whether YT already knows them.
  2. YT swipes each person into a group: friends, testers, no idea who they are, email only (could

not find them on LinkedIn), email invalid.

  1. Reach out per group, in a personal way.
  2. Decide who continues, based on what came back.

The credits rule. Anyone who comes back gets their free credits, even with a different email address, newsletter or not. Everyone who signed up before /get-started also gets the waitlist 15,000 bonus on top (section 9).

Kept on the side until we start. This is the plan to pick up when YT is ready. Section 9 adds her 4 Oct answers: the ESP signup date as proof, two emails a month, the 15,000 bonus, new app accounts, and Resend for the groups and the order.

Nothing here is sent, scheduled or posted. YT writes to every person herself. Vy decides which post goes out which day. No signup data was read, queried or copied for this doc, and nobody was looked up. Every email fact comes from the Email Almanac snapshot in 01-library/email-almanac/, with its number beside it.


1. Before the first message

Four small things, all YT's, none of them a gate on consent.

  1. Export the list yourself into a private folder (for example ~/RME-private/), never into the

repo. Email, name, and any notes you have. That file is what the swipe tool reads.

  1. Take out anyone who unsubscribed since. An unsubscribe is a permanent stop, so nobody who

unsubscribed is written to again, whatever the original consent (006.017.009). Unsubscribes and bounces sit in each email tool separately, so pull them from every tool the list has been in (009.014.005).

  1. Run the list through our own clean first. The Almanac's first step for any list that has sat

quiet is to validate before sending anything (021.002.011). Every address the clean marks dead goes straight into the "email invalid" group, so the swipe starts with those already sorted.

  1. Write from yta@reviewmyemails.com, the publishable address, never the private mailbox.
  2. Keep the ESP signup date with each address. It is the double opt-in record. An address with no

signup date in the email tool has no record and is not written to (section 9).


2. Step 1 and 2: look up and swipe

The tool. A private swipe page that runs on YT's Mac only: social-media/reengage-swipe/. It reads the CSV YT points it at, shows one person at a time, and saves her picks to a second CSV right next to hers. It is not on the playground and never will be, because the playground is public.

What to search, per person. The tool has a button for each.

Gmail, Outlook or similar address, where the name alone is used.

What to note (the lookup columns in the picks file):

us (cleaned a list, asked a question, came from a webinar), how you know them.

The groups.

KeyGroupMeans
1FriendYou know them personally
2TesterThey used the tool or gave feedback
3No idea whoYou found them online, but you do not know them
4Email onlyYou could not find them on LinkedIn or anywhere else
5Email invalidThe address is dead (our clean said so, or it bounces)

3. Step 3: what we say, per group

The base message is the re-permission email from round 1, kept as YT approved it, with light tweaks so it reads as a note from a person rather than a campaign: no buttons, the reply is the answer, and it says what they signed up for. Every group gets that same honest core (who I am, sorry for the silence, one question, easy to say no). What changes per group is the first two or three lines, so the person can tell straight away that YT wrote it to them.

Why personal, from the Almanac. Someone who was engaged and then went quiet is worth a more personal re-engagement attempt than a bulk one (020.009.004). Be honest that time has passed, give an easy way out, and keep only the people who answer (021.002.011). People who do not remember signing up are far more likely to hit the spam button, so the first line has to tell them who is writing (020.005.007). And a reply is a far stronger sign than an open (020.009.004), which suits a message whose ask is "just reply".

The base message (the email only group gets it as it is)

Subject: We went quiet on you. Sorry. Subject, option B: Do you still want to hear from us?

Hi [first name, or "there"],

It is Yanna-Torry from Review My Emails. You signed up with us in [month year], picked up 1,000 free credits, and said yes to our newsletter.

Then you heard nothing. No welcome, no tips, nothing at all.

That is on us. We got buried in work and moved email tools more than once, and the emails we meant to send you got lost along the way.

It has been long enough that I do not want to assume you still want us in your inbox. So, one question.

Do you still want to hear from us? Just reply yes or no. A one-word answer is perfect.

If it is yes, you will get two emails a month. If it is no, or you would rather not answer, you will not hear from us again.

Either way, your free credits are yours, and because you signed up early you get 15,000 bonus credits on top. [App line, whichever is true on the day: "The app opens in a couple of weeks and I will set up your account and send you the link." or "The app is live at reviewmyemails.com/get-started and your first 1,000 are free."]

Thank you for signing up in the first place.

Yanna-Torry Aspraki Founder, Review My Emails

[postal address] ยท Not for you? Reply "stop" and that is the last you hear from us.

What every message carries, even hand-written. The company's postal address and an easy way out, both CAN-SPAM requirements for commercial email, and opt-outs honoured within ten business days at the latest (008.002.009). We honour a "stop" the same day.

The openers, per group

These replace the first paragraph of the base message. Everything after "Then you heard nothing" stays.

1. Friends. Any channel YT normally uses with them (email, LinkedIn, WhatsApp). Short, warm, no script feel.

Hey [name], this one is not a newsletter, it is me. You signed up for Review My Emails last year, and like everyone else on that list you then heard nothing from us. I am fixing that one person at a time, and you are near the top.

Then the core, and one extra line: "And if anything about the app or the site looks off to you when it opens, tell me. You are exactly who I want that from."

2. Testers. Email, or wherever YT talked to them before. They used it, so lead with that.

Hi [name], you were one of the first people to put a list through Review My Emails [last year / in month], [one line from the lookup notes, e.g. "the list from the webinar"]. You signed up for our newsletter too, and then we went silent on you.

Then the core, and one extra line: "The app is close. Would you be up for a first look before everyone else?"

3. No idea who (found online). Email, the channel they signed up on. The lookup gives the opener one true, specific line, so it does not read like a mail merge.

Hi [name], it is Yanna-Torry from Review My Emails. You signed up with us in [month year], and I can see you are [role] at [company]. I wanted to write to you myself rather than send another bulk email, because you have not heard from us since.

Then the core from "Then you heard nothing". Do not mention how we found them beyond the role. A LinkedIn connection request is optional and only after they reply, never instead of the email.

4. Email only. The base message exactly as above. Nothing to personalise beyond the name and the signup month, so do not invent anything.

5. Email invalid. No email. There is no point asking a question to a mailbox nobody reads (021.002.011). If YT found them on LinkedIn during the lookup and wants to, one short note there:

Hi [name], you signed up for Review My Emails last year, but the address we have for you no longer works. If you still want our newsletter, or the free credits you signed up for, reply with the address you use now and I will set it up.

That is the credits rule in action: a new address still gets the credits.


4. The rhythm: one to two weeks

No dates, because there is no rush. Day 1 is the day YT starts swiping. By hand, a handful a day, the pace is set by YT's time, not by risk. It stays far below the 200 to 500 a batch the Almanac uses as the careful starting size for a quiet list (021.002.011).

WhenStepWhat happens
Before day 1Section 1Export, take out unsubscribes, run our clean, invalids pre-sorted
Days 1 to 3Look up and swipeA sitting at a time in the swipe tool. Counts per group at the end, numbers only
Days 3 to 4FriendsFirst, because they answer fast and will tell YT if the message reads wrong. Fix the core before anyone else gets it
Days 4 to 5TestersWith the "first look" line
Days 6 to 8No idea whoA few a day, each with its one line from the lookup
Days 8 to 10Email onlyA few a day. If two or three bounce in a day, stop and re-run the clean
Any dayEmail invalidLinkedIn note only, only where YT found them
Two weeks after each messageReply windowA person's window closes two weeks after their own message
Around day 10 to 14Step 4YT looks at the counts per group and decides who continues (section 6)

5. What we track, per person

One row per person in the picks file next to YT's own CSV, never in the repo. The swipe tool fills the first block. The rest YT fills as she goes, or asks Claude to update a row.

ColumnWhat goes in it
groupfriend, tester, dont-know, email-only, invalid
found_on, profile_link, lookup_notesfrom the lookup
channelemail, LinkedIn, WhatsApp, a call
sent_onthe date of the message
messagewhich opener (the group name is enough)
replyyes, no, stop, no answer, bounced
next_stepnewsletter, app invite, stop, YT's call
credits_givenyes, once their credits are on their account
came_back_asthe new address, if they came back with a different one

What leaves the file: counts per group and per reply, nothing else. Never a name, an address or a quote that could identify someone, in a chat, a post, the board or git.


6. Step 4: who continues, and when someone stops

Per person, when their reply comes in or their two weeks are up:

What came backWhat happens
Yes (or a reply that clearly means yes)Onto the newsletter. Credits confirmed. App link when it opens
A question or a conversationYT answers personally. That is the best outcome there is
No, or "stop"A permanent stop, the same day. Never written to again (006.017.009). If they ever come back on their own, the credits are still theirs
No answer after two weeksMoved off the active list, kept as a suppression, not deleted, and not chased (021.002.011, 020.009.004). The credits still stand if they ever come back
BouncedMoved to "email invalid". LinkedIn note only if YT found them
Came back with a new addressCredits on the new address, old one retired

The one exception to "no chaser": friends and testers, YT's call. The Almanac allows a short re-engagement sequence of two to three messages for people who have gone quiet (020.009.004), but says a quiet list that did not answer a re-permission message should not be tried again (021.002.011). So one personal nudge, through another channel, only for people who know YT. Nobody else gets a second message.

Per group, at around day 10 to 14 (YT decides):

message goes. The Almanac's stop line for a quiet list is complaints above 0.1 percent, and at a handful a day that is one complaint (021.002.011).

and we use the strict end.

promised.

What success looks like. A smaller list where every person said yes this month. The Almanac says a two-year-old list might shrink to 10 or 20 percent after a reactivation and calls that an accurate list, not a failure (021.002.011). Our list is about a year old, so we set no target from that. We report what happens.


7. The LinkedIn posts: a suggestion for Vy's menu

The eight build-in-public drafts (post-b3-1 to post-b3-8 in 01-library/channels/content-library.json, full text in 2026-09-28-rme-170-reengage-series.md) still tell this story. Vy owns the posting schedule (decision 2026-10-01), so this is an order, not a booking. Each post reads on its own, so if Vy drops one the story holds.

OrderPostFitsChange needed after the ruling
1b3-1 We told you to stay consistent. Then we went quietAny time, even before day 1None
2b3-2 Am I still allowed to email them?Around the swipe daysLight rewrite of the ending. The answer is now yes: they ticked a box and confirmed it, and the form said what they were signing up for. The post's point holds (consent ages, so we still ask, 020.005.007). Drop "we are asking one", since the lawyer has already looked
3b3-3 Three email tools in one yearAny day in week 1None
4b3-4 The welcome email we never sentAny day in week 1None
5b3-5 Most lists go wrong at the formAny day in week 1None, and it now has a good example: our form was clear
6b3-6 The email I am about to sendThe day the first friends get their messageRewrite. It describes buttons and batches. Now it is: I looked each person up, sorted them, and I am writing to them one at a time, starting with people I know
7b3-7 What they told usAfter the last reply window closesFill every [N] from counts only. Add a line per group if the numbers are interesting
8b3-8 Why we are not writing to themNot postedDrop. It was the fallback if consent was not there, and it is

The b3-2 and b3-6 rewrites are not in this PR. They are a small follow-up for the Content lane once YT has read this.


9. YT's 4 Oct answers, added on top

From 2026-10-03-rme-170-consent-ruling.md. None of these changes the by-hand plan above. They fill in what it left open.

  1. The proof of consent. The signup date held in the email tool (ESP) is each person's double

opt-in record. No ESP signup date means no record, and that address is not written to.

  1. What yes-sayers get. Two emails a month. That fills the blank in the base message.
  2. The 15,000 bonus. Every newsletter signup from before /get-started opened gets the waitlist

15,000 bonus. The old newsletter list joins the waitlist list as one list.

  1. App accounts. There never were app accounts. We create one for each person who comes back, and

their welcome email asks them to set a password and welcomes them to the app.

  1. Resend, not the devs. YT builds the groups and segments in Resend (the five swipe groups map

straight onto them), and sets the order of the re-permission message and the welcome email there by hand, later. The devs build nothing for any of it.


8. What could go wrong (the premortem, updated)

It is mid-November and this went badly. Most likely first:

  1. A name, an address or a lookup note ends up somewhere public. The playground is public, and

the social media library builder reads .md, .txt and image files under social-media/. Prevented by: the CSV and picks live outside the repo, the tool folder's .gitignore blocks everything except the tool, and the README says no notes or screenshots in that folder.

  1. The lookup reads as creepy. "I saw you were promoted in March" from a stranger is too much.

Prevented by: the "no idea who" opener uses role and company only, never anything personal.

  1. Someone who unsubscribed in an old tool gets a message. Prevented by section 1, point 2.
  2. A yes arrives and nothing happens. The waitlist capture is broken right now (RME-190) and

confirmations look near zero (RME-146). Prevented by: yes is a reply to YT, not a form, and YT adds yes-sayers herself until those two are fixed.

  1. A friend tells YT the message sounds like a template. That is the point of sending to friends

first. Fix the core, then carry on.

  1. It drags past two weeks. No harm. The app is not live, and a person's two weeks start from

their own message.


Red-zone check on this doc and the tool

Grepped before commit for client names, the sibling brand, the validation vendor, the vendor behind "Sonar", YT's private mailbox, label counts and old label names. Nothing found. No real person's name or address appears. The only names are YT's own signature, our publishable address, and the made-up people in the tool's example file (on the reserved example domains).