Skip to content

Onboard new signs up through an onboarding issue board

Hypothesis

We believe when a new user signs up for GitLab, it can be challenging for them to know what to do next. We believe we can intuitively onboard users to the GitLab platform by creating an Onboarding issue board for them. Which is automatically prepopulated with open onboarding issues for them to complete.

By utilizing an issue board we can:

  • Gamify the process by displaying actions that are already complete in the closed column (i.e. sign up for GitLab or create a group if that becomes part of onbording)
  • Dog food our own product
  • Onboard users to a core feature of GitLab (Issues/Boards) while helping them get core setup tasks completed
  • In future versions make the issues in the board unique based on the user's role and/or jobs to be done.
  • Give the user a dedicated space (board) that they can always reference as they go through the onboarding process

Mockup of a possible future state:

Onboarding_Issue_Board

Note: issues listed in the boarding board are not final, these are listed purely as examples of onboarding topics we could create as issues for users

MVC work to help support this hypothesis

We understand that building out a new issue board with predefined issues for new users would likely represent a large amount of development work so we first want to validate the hypothesis.

  • Conduct user interviews to gauge if users understand utilizing an issue board to manage their own onboarding
  • Get access to/dig into usage data to understand which new user actions have the biggest impact on new user retention and upgrades

ICE score

Impact Confidence Ease Score
9 7 5 7

Issues to include in onboarding board

Novice user:

Open To Do
What's in free vs what's in paid Create/import your code into your Project (Repository)
Get to know the help resources you have access to Create/import issues (tickets) to collaborate on ideas and plan work
Start a free trial of GitLab Gold - no credit card required Invite your colleagues
Setup your profile and set your status Submit your first MR
Create a milestone
Setup CI/CD pipelines to build, test, deploy, and monitor your code as part of a single, integrated workflow

Experienced user:

Open To Do
What's in free vs what's in paid Create/import your code into your Project (Repository)
Get to know the help resources you have access to Create/import issues (tickets) to collaborate on ideas and plan work
Start a free trial of GitLab Gold - no credit card required Invite your colleagues
Setup your profile and set your status Setup CI/CD pipelines to build, test, deploy, and monitor your code as part of a single, integrated workflow
Using Kubernetes Clusters
Using Container Registries & Docker images

Implementation steps for engineering

Walkthrough of the final user experience, each new screen/step is documented below.

After a user goes through standard sign up questions (name/email/password)

  • Implement a tracker in the page header that tracks which step number a user is on in the following steps (1-4 below)
  • Screen/step 1: Implement a screen to allow a user to create a group (design)
  • Screen/step 2-a: Implement a screen to allow a user to create a project within the group they just created. (design)
  • Screen/step 2-b: Implement a project import tab within screen 2-a, these links should bring the user directly within their group to the import project page related to the link they selected.
  • Screen/step 3: If a user choice to create a project then following screen will ask them their experience level either 'novice' or 'experienced', we need to utilize the option they select in step 5. (design: create project, import project)
  • Screen/step 4: a user should then land on their group overview page with a tooltip where they are forced to select a "learn GitLab" Project we've created for them. We then follow up with two additional tool tips to walk the user through clicking on "issues" and "boards" to get them to the self-paced onboarding board. (design: tooltip-1, tooltip-2, tooltip-3)
  • Screen/step 5: a user lands on the "Learn GitLab" issue board which contains issues we've created for them. These issues are individually documented above and we should display either the novice or experienced issues depending on what option they selected in step 3 above. All of these issues should automatically be created within the "learn GitLab" project and assigned to the user that just signed up. (design)

Tracking

  • We'd like to run this as an experiment so 50% of net new sign ups will get this experience to start. We should be able to track the namespaces that created in both the control and experiment group. We should also be able to track the stages they adopt and the conversion rate to paid.

Designs and specs

Prototype flow

Screens

Profile setup Group Project Import Welcome Tooltip
profile 03-group 04-project 04b-import 05-welcome tooltip
Spacing / Specs Spacing / Specs Spacing / Specs Spacing / Specs Spacing / Specs Spacing / Specs

Other

SVGs and JPG already optimised.

Novice Experienced Learn GitLab avatar
novice.svg experienced.svg
Edited by Alex Buijs