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

[Gutenboarding]: add analytics (tracks) #38799

Closed
ramonjd opened this issue Jan 13, 2020 · 2 comments · Fixed by #39001 or #39392
Closed

[Gutenboarding]: add analytics (tracks) #38799

ramonjd opened this issue Jan 13, 2020 · 2 comments · Fixed by #39001 or #39392
Assignees
Labels
[Feature] Tracks Metrics & Monitoring Capturing analytics about user behavior on WordPress.com. [Goal] New Onboarding previously called Gutenboarding [Type] Task

Comments

@ramonjd
Copy link
Member

ramonjd commented Jan 13, 2020

Subtask of EPIC #38701

Along with generating a temporary user account and site to allow users to interact with Gutenboarding, we’ll probably have to set up some way to track it all.

⚠️ We'll need to work out whether we're going to import lib/analytics into the project.

From the discussion in p1579140697040600-slack-gutenboarding I think the consensus is that:

  • we start with just tracks for Gutenboarding
  • instead of pulling in the entire lib/analytics behemoth, we build a tiny tracks lib in @automattic/analytics package, which will furnish the necessary tracks methods:
    • recordEvent, recordPageView

Sub tasks

After account creation, and reassign events triggered by the anonymous ID

For WordPress.com, before users sign up, we set a cookie that assigns to them an anonymous ID.

After sign up, Calypso calls a method called identifyUser , which records the user’s new ID and username, both of which we send back in the API response after a successful account creation.

Tracks then (somehow) reassigns events triggered by the anonymous ID to the new user ID. 👍

We’d have to determine whether anonymous ID tracking in Gutenboarding before user sign up/sign in is acceptable.

Since it’s working currently on WordPress.com however, my guess is that it is appropriate. A conversion with folks from data might be enough to give us the greet tick.

Event validation

Double check with the data team that our events and props are okay in light of the product.

Related links

p1579140697040600-slack-gutenboarding

Some initial investigation on anonymous IDs: pbxlJb-4t-p2

@ramonjd ramonjd added [Goal] Gutenberg Working towards full integration with Gutenberg [Feature Group] Signup & Site Onboarding Tools for user registration and onboarding new users to the site. [Type] Task [Feature] Tracks Metrics & Monitoring Capturing analytics about user behavior on WordPress.com. labels Jan 13, 2020
@ramonjd ramonjd changed the title Track Gutenboarding users and reassign events triggered by the anonymous ID [Gutenboarding]: Track users and reassign events triggered by the anonymous ID Jan 13, 2020
@ramonjd ramonjd added [Goal] New Onboarding previously called Gutenboarding and removed [Goal] Gutenberg Working towards full integration with Gutenberg [Feature Group] Signup & Site Onboarding Tools for user registration and onboarding new users to the site. labels Jan 15, 2020
@ramonjd
Copy link
Member Author

ramonjd commented Jan 16, 2020

I think the consensus is that:

  • we start with just tracks for Gutenboarding
  • instead of pulling in the entire lib/analytics behemoth, we build a tiny tracks lib in @automattic/analytics package, which will furnish the necessary tracks methods:
    • recordEvent, recordPageView
  • if we're super lucky and nice, we'll get assistance from @jsnajdr / @Automattic/team-calypso

See context in p1579140697040600-slack-gutenboarding

@ramonjd ramonjd changed the title [Gutenboarding]: Track users and reassign events triggered by the anonymous ID [Gutenboarding]: add analytics (tracks) Jan 16, 2020
@roo2 roo2 self-assigned this Jan 20, 2020
@roo2
Copy link
Contributor

roo2 commented Jan 20, 2020

I'm making a start on pulling the track analytics code into the shared lib. @automattic/calypso-analytics
Slack discusion: p1579140697040600-slack-CNMU1UHHB
PR to refactor lib/analytics to be more tree-shakeable and remove the signup specific functions
#37913
jetpack's analytics example https://github.com/Automattic/jetpack/tree/master/_inc/client/lib/analytics

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
[Feature] Tracks Metrics & Monitoring Capturing analytics about user behavior on WordPress.com. [Goal] New Onboarding previously called Gutenboarding [Type] Task
Projects
None yet
2 participants