Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

RFC: Onboarding 2.0 #64

Closed
joethreepwood opened this issue Sep 27, 2022 · 19 comments
Closed

RFC: Onboarding 2.0 #64

joethreepwood opened this issue Sep 27, 2022 · 19 comments
Assignees

Comments

@joethreepwood
Copy link
Contributor

Request for comments: Onboarding 2.0, Joe

What are we fixing?

The onboarding email flow is currently limited. Until very recently it's been unclear to many people what emails are sent when. We currently send few emails to encourage exploration and use of certain features, with no personalization based on ICPs or other criteria. We can do better.

What's do we do right now?

I've mapped out a visual representation of the current onboarding flow. Link to Miro.

Screenshot 2022-09-27 at 15 32 18

@kappa90 has also got a list of transactional emails here, which links directly to the content.

Both of these only reflect a partial view of the potential full email experience our users get however, as these emails are sent within the product to all users. Other email systems which exist:

  • Array: Sent to all users, by Mailchimp, every two weeks
  • Hogmail: Sent to subscribed users, by Mailchimp, every two weeks
  • G2 request: Sent to all new users per month, by Mailchimp, every month
  • Post-demo Outreach: Sent to users who have had a demo, via Hubspot, after a demo

What do competitors do?

I did a bunch of research when we looked at Onboarding 1.0 / 1.5 as project earlier this year. No reason to think it has changed since. Full detail here.

In summary:

  • Amplitude sends a four-email flow. Welcome email (Day 0), Personal follow-up (Day 1), Reminder (Day 4) and final reminder (Day 7).
  • LogRocket also send a four email flow. Welcome email (Day 0), Personal follow-up (Day 4), Reminder (Day 8) and final reminder (Day 8/9).

PostHog, in comparison, has a zero-email flow with two optional emails which are triggered by a failure to ingest events.

Success criteria and proposal

I'm proposing three main goals for the onboarding flow:

  • Personalize email content based on ICP criteria, so we do a better job of giving users relevant information
  • Use emails to encourage best practices and initial behaviours for users, e.g. invite new users
  • Create a flow which directs users to explore additional features beyond insights, in particular session recording

The flow I'm proposing to achieve this would look like this. Link to Miro:

Screenshot 2022-09-27 at 16 18 49

This flow has several improvements over the existing version:

  • It includes a welcome email for first and invited users, highlighting resources to help them get started
  • It offers tailored ingestion advice for new users based on ICP
  • It extends the ingestion assistance path to a third step
  • It includes three onboarding emails to encourage best practices and exploration

For now, I'm proposing that we encourage users to explore Session Recording specifically because it is a feature of immediate use to the most users and one we plan to bill for separately in the future. Other features (e.g. Feature Flags) may not be intuitive or desireable for many users (e.g. non engineers).

I'm proposing that we use this flow for both PostHog Cloud and Self-Hosted, potentially with some minor copy or content variations depending on the chosen product. However, depending on how session recording is delivered as a product it may also need a new flow (or consideration for how this path would be adapted if users just want SR, cc @benjackwhite)

Session recording can also act as a good point of reference as we can monitor whether adoption increases. If it does, we can consider a 2.5 which suggests other features, such as FFs, potentially based on ICP criteria.

Can we personalize further, based on ICP criteria such as industry? I've elected not to consider this for now, as it's unclear whether industries will have different product needs beyond privacy (which will be solved by the Cloud/SH decision).

Design and delivery

This is a V2 project, so design may want to get involved in improving emails. However, I think the existing email templates are perfectly serviceable so there's no urgent design need. Maybe some new Hedgehog art, though?

In terms of how the emails will be delivered, I think it's simplest and best to continue sending these emails through the product itself in the existing method.

Sprints and what's next?

Looking for general feedback on the proposed flow, with a specific question about how we can pull the relevant information from Clearbit or Hubspot to reliably inform whether the recipient is an engineer or not. If we're unable to do this consistently, we can keep the existing step either as a fallback, or just as it is.

Following feedback, I can begin creating email copy and supporting content for these emails across 1-2 sprints. Some engineering support (I believe @kappa90 is also interested 🤞) may be needed to help get them into the product.

@joethreepwood joethreepwood self-assigned this Sep 27, 2022
@joethreepwood
Copy link
Contributor Author

@lharries
Copy link
Contributor

lharries commented Sep 27, 2022

Great work and very comphrensive Joe! I've added thoughts and prompts below. Let me know if there's any other specific prompts you want input on

  1. No reason to think it has changed since. Onboarding 1.5 emails posthog#9784 (comment).

  • Likely not important for now but it might have changed as they optimize their flows. Could be worth revisiting periodically but not important for this version
  1. "Member joined alert" sent to all user in org. This seems heavy for orgs with large numbers of users - could do a weekly roll up for them in future? but likely out of scope of this version
  2. Should we send the onboarding email campaign to each new user in the org as a way to help activate more features and help them learn best practices, rather than just the first user to sign up?
  3. Which tool are we using for these email sequences? Are we setup so that we can A/B test the headlines and flows - this can product compounded improvements over time? I've used Customer.io before and was impressed (and it integrates with Posthog) - there are also other tools on the market.
  4. (For future versions) Do we want extra email flows when they activate Session recordings to help them get the most value from it? And the same with the other product areas such as feature flags and experiments
  5. Agreed on session recording being the next activation over feature flags and experiments as the primary. Would we want an extra email after which highlights feature flags and experiments?
  6. "I'm proposing that we use this flow for both PostHog Cloud and Self-Hosted" - agreed!
  7. Which metrics should we be tracking for this? Is there a Posthog dashboard that we could make for use over time?

@benjackwhite
Copy link
Contributor

Generally think this all a great idea and approach 👍

Self hosted may be tricky as typically they don't set up email reliably and by default we would use their email provider to send these emails which could be seen as a bit cheeky...

Question here is whether it makes sense to "outsource" this to a third party email campaign tool to take care of the logic, scheduling etc. If we did this then both self hosted and cloud would work the same in just pinging this service. Otherwise self hosted becomes trickier (I think).

@andyvan-ph
Copy link

Self-interested suggestion alert: at some point, it would be nice to alert new users about HogMail, preferably pitching the "new tutorials and tips" angle.

@joethreepwood
Copy link
Contributor Author

joethreepwood commented Sep 28, 2022

  1. "Member joined alert" sent to all user in org. This seems heavy for orgs with large numbers of users - could do a weekly roll up for them in future? but likely out of scope of this version

Agree. I'll defer to others on if it's out of scope, as I think the barrier here is more going to be on implementing the logic than the content/design side which I can be more directly responsible for.

I've tried to ascertain the average number of users in an org, to get a grip on how much of an issue would be. But it's apparently not possible.

  1. Should we send the onboarding email campaign to each new user in the org as a way to help activate more features and help them learn best practices, rather than just the first user to sign up?

Possibly unclear on the chart, but that's the intention yes. All invited users join the first user flow after a (probably slightly different) welcome email. If there's been ingested events, they get the onboarding flow. If there's ingestion failure, they join the troubleshooting flow and then enter the onboarding emails after ingestion works.

  1. Which tool are we using for these email sequences? Are we setup so that we can A/B test the headlines and flows - this can product compounded improvements over time? I've used Customer.io before and was impressed (and it integrates with Posthog) - there are also other tools on the market.

I'm ambivalent on tooling. Currently the transactional emails in this vein are sent via the product, which feels servicable and works for centralizing things. There are tools we could use -- Intercom, Customer.io, Braze, Hubspot, etc. -- and in my experience they're all roughly equivalent. Customer.io would definitely suit our needs, as long as the app we have is up to scratch.

  1. (For future versions) Do we want extra email flows when they activate Session recordings to help them get the most value from it? And the same with the other product areas such as feature flags and experiments
  2. Agreed on session recording being the next activation over feature flags and experiments as the primary. Would we want an extra email after which highlights feature flags and experiments?

I'd be in favour of building these flows out as a next step, if we see success. For now, I'm mainly wary of bombarding users with a neverending stream of emails that could annoy them. Adding an email for FFs and Experimentation would mean that most (e.g. invited) users are getting 5-8 emails when they join already.

  1. Which metrics should we be tracking for this? Is there a Posthog dashboard that we could make for use over time?

I'd propose we use the following metrics:

  • Number of organizations which successfully ingest within 7 days (to monitor if the ingestion assistance emails work)
  • Session recording adoption (to monitor if we're successfully driving users there)
  • Pageviews of content/tutorials linked to (to monitor engagement with the content)

If we're considering using a tool such as Customer.io or Mailchimp then that would enable us to look at additional engagement metrics: open rate, CTR, unsubscribes, etc.

Self-interested suggestion alert: at some point, it would be nice to alert new users about HogMail, preferably pitching the "new tutorials and tips" angle.

I'd definitely see us working that into content where we can. Footer, if nothing else.

@joethreepwood
Copy link
Contributor Author

Our sign-up to log-in conversion also seems really low, especially for a product which requires a fair bit of intent. We should probably take that as a success metric too.

Screenshot 2022-09-29 at 11 17 50

@simfish85
Copy link

This is great - especially if (selfishly from a CS perspective) we can track all of this activity through events. One thing that people really like is the linkage between everything (Funnels > Session Recordings being a prime example). I often use AARRR as a getting started framework when doing in-person onboarding for customers, with a general flow like:

  1. Ingest events
  2. Identify users
  3. Create Actions to track your Acquisition and Activation metrics
  4. Create a trend for Acquisition
  5. Create a funnel for Activation (then highlight the linkage between drop-off and recordings in the funnel)
  6. Create a dashboard (optional CTA to share it externally)

All of the data to help us automate this lives in PostHog as we track it all.

@joethreepwood
Copy link
Contributor Author

Had a chat with @kappa90 about this this week and I'm now assuming that we'll consider an external tool for this, as it'll enable greater/easier control over flows as they continue to evolve and start to include different product use-cases.

I'll spend some time looking at tools in an upcoming, post-EU cloud sprint -- but flagging here in case anyone wants to suggest tools for us to consider.

@kappa90
Copy link

kappa90 commented Oct 6, 2022

For the sake of discussion, the current onboarding flow only takes into account users wanting to ingest data - but not users who want to just use session recordings.

I would implement the current suggestions, but we should probably then add a secondary onboarding flow in a subsequent change, for users who want to setup recordings, with its own email campaigns.

@joethreepwood
Copy link
Contributor Author

joethreepwood commented Oct 17, 2022

Still paused on this for the moment while I shift to prioritize the roadmap project, but I managed to catch up with a friend of mine who does CRM and product ownership in this area and whose opinion I really value. Picked her brains for advice and here are the cliffnotes for future reference...

  • Hubspot and Mailchimp should support these sorts of flows, and are preferable because we already use those tools to some degree.
  • Other, dedicated options like Braze will be expensive. Obviously at a different scale, but not unheard of to spend $400,000 per year on Braze emails alone. If we're investing in new tools and think email will be a bigger part of the product going forward, we should consider having a dedicated CRM/Martech person to manage these tools.
  • We would need some engineering support to create trigger events which can map to the CRM, ideally with event properties. This is hard to scope out in detail right now.
  • We must be sure to capture explicit consent. Onboarding emails are technically marketing emails and opting all users in will create complaints.
  • Braze has a send-rep process where users must build lists over time to avoid having a rep-hit which puts emails in Spam. If we choose a new tool, we should consider this. Mailchimp explicitly doesn't do this.

@joethreepwood joethreepwood transferred this issue from another repository Oct 26, 2022
@charlescook-ph
Copy link
Contributor

Sorry I know my feedback is super late here, so feel free to disregard!

  • You mention what our competitors do, but have you seen examples of other companies who do excellent work here? (Just so we're avoiding doing 'Amplitude +20% better'). If we do something that has bags of personality, it could be a way to really differentiate ourselves (e.g. what if every email came from a different person on the team?)
    • What about if you complete onboarding, we send you merch? Could just be stickers. Or even if you don't complete it, we send you stickers anyway.
  • I understand the rationale for pushing session recordings, but given we do get more and more people signing up for feature flags alone, is it possible to almost have people 'choose their own adventure' - we could ask them 'what brought you to PostHog?' and then depending on what they click, they get a different onboarding flow. Appreciate this is more a V2 idea rather than MVP.

@joethreepwood
Copy link
Contributor Author

Sorry I know my feedback is super late here, so feel free to disregard!

  • You mention what our competitors do, but have you seen examples of other companies who do excellent work here? (Just so we're avoiding doing 'Amplitude +20% better'). If we do something that has bags of personality, it could be a way to really differentiate ourselves (e.g. what if every email came from a different person on the team?)

Tricky one, as I think the best onboarding email flows are those which are short and which add value to the user, rather than leading with upsells.

I'd want to specifically avoid examples that I've seen on platforms such as Wordpress, where we send users congratulatory emails along the lines of 'You created your first insight, well done'.

Similarly, I want to avoid the approach of nagging users for not successfully doing things, which is another common approach. I think each message should be adding value for users, giving them information about more things they can do or unblocking them from issues.

Mailchimp, unsurprisingly, is the best which comes to mind -- big, bold images and short, empowering language which focuses on getting users to do the basic essential actions.

  • What about if you complete onboarding, we send you merch? Could just be stickers. Or even if you don't complete it, we send you stickers anyway.

I love this idea, though rather than put it in the onboarding flow I'd suggest we put it in the user-invite-to-org. Get people started on a positive, rather than tacking it on to the end of the flow where potentially many will not reach.

  • I understand the rationale for pushing session recordings, but given we do get more and more people signing up for feature flags alone, is it possible to almost have people 'choose their own adventure' - we could ask them 'what brought you to PostHog?' and then depending on what they click, they get a different onboarding flow. Appreciate this is more a V2 idea rather than MVP.

That's something Em and I discussed as an eventual inevitability, with our product vision. I don't think it's something we need to do for this next version however due to the situation around SR - and because the number of people signing up for FFs shows it has decent discoverability. SR, on the other hand, is somewhat overlooked.

@posthog-contributions-bot
Copy link

This issue has 2121 words at 13 comments. Issues this long are hard to read or contribute to, and tend to take very long to reach a conclusion. Instead, why not:

  1. Write some code and submit a pull request! Code wins arguments
  2. Have a sync meeting to reach a conclusion
  3. Create a Request for Comments and submit a PR with it to the meta repo or product internal repo

Is this issue intended to be sprawling? Consider adding label epic or sprint to indicate this.

@joethreepwood joethreepwood transferred this issue from another repository Oct 27, 2022
@joethreepwood joethreepwood transferred this issue from another repository Oct 27, 2022
@joethreepwood
Copy link
Contributor Author

In the spirit of transparency and in order to see if there's user feedback, I've moved this issue to a public repo.

@abheek9
Copy link

abheek9 commented Oct 27, 2022

Thanks Joe for the transparency! Would love to add Laudspeaker to the list of tools to consider - we just got approved on your app page (link, we are open source, backed by YC and building out all the functionality you'll find with braze/ customer io etc. We are scrappy and would love the opportunity to help you build out the flows you need!

@kappa90
Copy link

kappa90 commented Oct 28, 2022

I understand the rationale for pushing session recordings, but given we do get more and more people signing up for feature flags alone, is it possible to almost have people 'choose their own adventure' - we could ask them 'what brought you to PostHog?' and then depending on what they click, they get a different onboarding flow. Appreciate this is more a V2 idea rather than MVP.

I love this. People could select what they would like to integrate, and then the onboarding flow could change based on that, e.g. once you have integrated events, they could have optional (very short) flows that explain how to setup SR or FF.

@joethreepwood
Copy link
Contributor Author

Took a first stab at content yesterday, so we can start mocking things up. Feedback welcome.

@joethreepwood
Copy link
Contributor Author

After getting some feedback, making copy updates to reflect the now-removed demo and some awesome art assistance from @lottiecoxon, I've now finalized the copy which we'll use for the emails and I believe @smallbrownbike has finalized the layouts too.

I've dropped images into the doc for now, to illustrate what it'll look like.

Next step will be to build these in Customer.io.

@kappa90 @raquelmsmith If I put together a flow in Customer.io by Monday, could one of you help me deactivate the old flows and confirm the new one is configured correctly?

@kappa90
Copy link

kappa90 commented Dec 1, 2022

Shipped, we have new onboarding flows built with Customer.io.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

8 participants