← All field notes / Help users reach first value

SaaS makers · Team activation

Why were 45 workspace invitations delivered but only 12 teammates joined?

Follow one invitation from the mail server to an accepted workspace membership. A small event ledger shows which failures justify resending and which need a product fix.

GimmeTheSauce editorial ·

Of fifty invitations, forty-five reached a recipient mail server, eighteen reached an authenticated redemption attempt, and twelve created a membership.
Of the eighteen attempted redemptions, six did not create a membership. Those six traces are a practical starting point for investigation.

Start with one invitation that failed to create a membership. Find the last step you can confirm. A mail server can accept a message while the intended teammate never sees it. A teammate can open the link, sign in with a different account and still fail to join. Sending another copy helps only some of those people.

Resend, for example, reports a delivered event when the recipient’s mail server accepts the email. A permanent rejection produces a bounced event. Check your provider’s definitions before using its dashboard to count invitations. Resend’s email event definitions

Build the invitation ledger

Use one row per invitation to one workspace and recipient, with an internal invitation ID. Keep delivery attempts separately so that resends and repeated event notifications do not inflate the number of invited teammates. Record expiry, provider outcome, authenticated redemption attempt and successful membership creation. Keep raw addresses and invitation tokens out of the analysis.

Suppose fifty invitations each had one delivery attempt, a seven-day validity window and a full seven days of observation. These hypothetical counts use the same invitation IDs throughout.

What happened within the windowUnique invites
Issued50
Accepted by the recipient mail server45
Permanently bounced5
Reached a signed-in redemption attempt among the 45 delivered18
Created membership among those 1812

12/50 = 24% of invitations created membership. 12/18, about 67%, of the signed-in attempts succeeded. Six attempts deserve an error trace. The other 27 delivered invitations have no observed signed-in attempt. Some recipients may have read the email or tried to sign in. You cannot determine which from the delivery event.

Rehearse three recipient paths

  • Bounced. Ask the inviter to check the destination before sending again. Retrying the same invalid address cannot correct a typo.
  • Delivered, no signed-in attempt. With a willing tester, try the invitation on a separate device with a fresh browser. Follow the link through sign-in. Does it return to the intended invitation and identify the workspace? Use a test mailbox and avoid pasting a live token into a support ticket.
  • Signed in, no membership. Reproduce an expired invitation and a sign-in under the wrong account. The app should explain the next action and avoid granting membership to the wrong identity. Verify that an authorized reissue produces one membership, even when the recipient taps twice.

Suppose four of the six failed attempts show that sign-in dropped the pending invitation, and replaying the path reproduces the bug. Fix that handoff first. Investigate the other two individually. For the 27 without an observed attempt, ask a small sample what they expected and whether they found the message. A second reminder to everyone would conceal the effect of the sign-in fix.

Count the next shared task

After the fix, take another fully observed batch and compare successful memberships per signed-in attempt alongside memberships per issued invite. Then check whether a joined teammate actually reviewed, edited or shared something with the inviter. The second-real-job example shows how an intermediate technical success can precede the first useful outcome.

Bring one failed trace and the two denominators to Jon Yongfook’s AI mentor to choose the next activation test ↗. State which step is observed and which is still a guess.