FetchBuzzScoopOchoSeeti
Snapshots

Every email leads to a first hand off, plus one Fetch line

Being built
  • Today the product sends plain team emails and no pushes; no paying step exists.
  • Tomorrow a day 0 to day 28 sequence is built to reach the first hand off.
  • Sign offs: Fetched. Good throw. Nap time. See you Monday.
  • Emails about a failed read, money, privacy or an apology carry no character.
  • At most one push a day, 60 characters, never at night.
60character ceiling for a push
Your call

Who sends the person written emails until a support inbox exists?

Marketing and growth · 10.8 · Fetch

Lifecycle, Fetch

DraftLast checked Mon Oct 26Owner Param

Answer

Every email and message from the first read to a paying brand: today the product sends a dozen plain team emails and no pushes, and tomorrow's sequence leads every new brand to its first hand off, with Fetch adding one line and a person writing everything that matters.

Today

What the product sends now

Message When Source
Invite: someone invited you to the brand When a teammate invites brew/auth.js:189
Someone joined the brand When a colleague joins brew/auth.js:125
Admin changes When an owner adds, removes or hands over admin brew/auth.js:209-211
Check what we read, then still waiting A few hours after the read waits, then a day later brew/confirm-remind.js:1-21 brew/confirm-remind.js:70
Open your feed to start the Plays; the subject still uses the old word Same timing, when nobody opened the feed brew/confirm-remind.js:84
Your first Plays are ready; all are ready; some were updated As the first Plays land, when all land, when they are rewritten brew/build.js:1012
The Monday digest: what changed, rival ads, what people said, the next date, the jams waiting on you Monday 09:00 or later, brand time, seven days after the last; skipped when nothing is new; also to Slack brew/digest.js:1-14 brew/digest.js:132
Jam emails: tagged, asked, given a jam, asked for your OK Right away; new messages batched to one per jam every 15 minutes brew/jam-mail.js:74 brew/jam-mail.js:106 brew/SCOPE.md:25
A brief sent to our team, and each status step to the sender When sent and each time our team updates it brew/jam-mail.js:119 brew/brief-status.js:5
A connected account's sign in runs out A week ahead, to owners and admins brew/connectors/index.js:489 brew/SCOPE.md:14

Rules in the code

Rule Source
Every email comes from the internal name at hello@send.joinsquareup.com, through Resend brew/auth.js:176
Recipients are the brand's team and the person who started the read, only on the brand's own email domain brew/digest.js:10 brew/auth.js:31
Every email has mute and only tags links; a person can turn all mail off brew/SCOPE.md:25 brew/digest.js:10
The demo site sends no email brew/SCOPE.md:25
No push notifications: the service worker only installs the app shell brew/public/sw.js:1-2
Never an email or WhatsApp to a brand's own customers brew/SCOPE.md:38
No paying step exists; pricing is parked memory brew-pricing-parked

Tomorrow

Four phases, and the join between each

Phase The join we design Version Tag
Discovery The read as a reveal, one shareable finding v1 New
Onboarding Three questions, then the first win: heart one, make one, hand off one v1 New
Repeat loop The Monday drop of five picks, finite, then caught up v1 New
Endgame What we know about you, as a brand book the brand owns v1 Changes
Paying A plan and wallet once pricing is set, said by a person v1 New, parked

Fetch: First fetch, first win, then every Monday. That is a good dog life.

The onboarding sequence

Day Subject, Fetch's version From Job Stops when Version Tag
0, minute 1 Throw me your store, I am on it The founder who said yes Say what happens and how long Never skipped v1 New
0, read done Fetched. Your store is read The person who ran it Open one finding first Read failed: the plain error instead v1 Changes
1 One pick, dropped at your feet The product Open one pick in Make it A hand off happened v1 New
2 Three quick questions, one treat each The product What you handle, your next big moment, one thing you never post Answered during the read v1 New
First hand off Good dog. You handed one off A founder Say well done, show where the brief went Sent once v1 New
7 Your first Monday, five at your feet The product Five picks, one named Turned off v1 Changes, from the digest
14 Second Monday. Same ball, new picks The product The habit Turned off v1 Changes
28 Four weeks of fetching. How is it going? A founder What should change Never skipped for partners v1 New

Activation is the first hand off. The ten minute first win is a design aim, not a measure, until we time it.

Fetch's one line in each email

Email Sign off
Welcome Nose down, tail up.
Read ready Fetched.
First pick Dropped at your feet.
Three questions One treat per answer.
First win Good throw.
Brief page Fetched for you. Over to you now.
Friday partner note Nap time. See you Monday.

Emails about a failed read, money, privacy or an apology carry no character.

Notifications, Fetch's rules

  • At most one push a day, and only two kinds: your picks are here, and someone needs your yes.
  • 60 characters at most, one thing, opens exactly that thing.
  • Fetch's voice in the picks push, plain in the yes push.
  • Never at night in the founder's time zone. Never to say you missed something.
Push Words Version Tag
The Monday drop Five picks at your feet. One is my ball. v1 New
Need your yes Need your yes: use the rain photo on Instagram? v1 New
Skip this week Rest day; never guilt, never a broken run v1 New

The paying step

Item Version Tag
A person talks about cost with each partner before anything changes for them v1 Stays
A plan and wallet email, plain, from a person, no character v1 New, parked until pricing is agreed
A posting approval message for each scheduled post v2 New
How it went, per live pick v3 New

Names

Item Version Tag
The internal name leaves every subject, sender and footer; a wordmark slot until the name is picked v1 Changes
The old word for Plays leaves every subject v1 Changes

How we do it

  1. Every message opens exactly one thing, and names a real pick for the real store.
  2. Count every push toward the ceiling above, Need your yes pushes included.
  3. A person writes the welcome, the read ready note, the first win, the day 28 note and anything about money, privacy or a mistake.
  4. Turn a sequence off the moment its job is done.
  5. Send every new email to a staff address on staging before it reaches a brand; the demo site sends no email, so it cannot test one.
  6. Check every subject with the writing checker before it ships.

Numbers

Metric Definition Where measured Status
Activation New brands that hand off a pick in their first week Brief status and jam records Proposed
Days to first hand off From read to the first brief shared or sent Brief status and jam records Proposed
Second Monday Share of new brands that open Today the next Monday Feed opens Proposed
Opens per message Opens divided by sends, per message The mail provider Proposed
Mail off rate Share of people who turn all mail off Mail preferences Proposed

Open

  1. Who sends the person written emails? Proposal: Param, from his own address, until a support inbox exists.
  2. Do the day 1, day 2 and day 14 emails start now, before the Monday drop ships? Proposal: no; start with the welcome, read ready and day 28 by hand.
  3. Does the Monday digest become the Monday drop? Proposal: yes, one Monday message, never two.
  4. When do pushes start? Proposal: with the installed app and the Monday drop, under Fetch's ceiling above.
  5. What is the paying message? Proposal: written when pricing is agreed with Sai; until then, cost is talked about in person.
Sources
  • brew origin/main a559de6: auth.js:31, 125, 176, 189, 209-211; confirm-remind.js:1-21, 70, 84; build.js:1012; digest.js:1-14, 132; jam-mail.js:74, 106, 119; brief-status.js:5; connectors/index.js:489; public/sw.js:1-2; SCOPE.md:14, 25, 38
  • brand-directions/book/content/h.js h-8 phases, onboarding-emails, messages, monday
  • brand-directions/dog/comms.html k2, k3, k4, k5
  • brand-directions/docs2/data/dirs.json dog
  • memory: brew-access-rules, brew-pricing-parked

Source file content/marketing-and-growth/lifecycle.dog.md · For agents: Markdown · JSON