Achieving a 100% adoption rate on the Guest Migrations feature at Lunchbox

Achieving a 100% adoption rate on the Guest Migrations feature at Lunchbox

Achieving a 100% adoption rate on the Guest Migrations feature at Lunchbox

Achieving a 100% adoption rate on the Guest Migrations feature at Lunchbox

Background

When a client deploys to Lunchbox Loyalty, there is a need to migrate their existing users information into the platform. This guest migration includes info like – Name, Phone/Email, Birthday, and Points and/or Credits

When a client deploys to Lunchbox Loyalty, there is a need to migrate their existing users information into the platform. This guest migration includes info like – Name, Phone/Email, Birthday, and Points and/or Credits

About

The Onboarding team was spending on average a couple days a week manually tweaking and fixing errors in guest migration imports. As lead product designer on the project, I set out to understand pain points in the journey to redesign the experience to get customer loyalty programs live quickly, and with lower error rates

The Onboarding team was spending on average a couple days a week manually tweaking and fixing errors in guest migration imports. As lead product designer on the project, I set out to understand pain points in the journey to redesign the experience to get customer loyalty programs live quickly, and with lower error rates

Time frame

May – Jun 2024

May – Jun 2024

Personnel

Matthew Bookhout

Product Manager

Engineering Team

Onboarding Team

Matthew Bookhout

Product Manager

Engineering Team

Onboarding Team

Achieving a 100% adoption rate on the Guest Migrations feature at Lunchbox

Background

When a client deploys to Lunchbox Loyalty, there is a need to migrate their existing users into the platform. This guest migration includes information like – Name, Phone/Email, Birthday, and Points and/or Credits

About

The Onboarding team was spending on average a couple days a week manually tweaking and fixing errors in guest migration imports. As lead product designer on the project, I set out to understand pain points in the journey to redesign the experience to get customer loyalty programs live quickly, and with lower error rates

Personnel

Matthew Bookhout

Product Manager

Engineering Team

Onboarding Team

Time Frame

May – Jun 2024

Macbook showing new dashboard design
Macbook showing new dashboard design
Macbook showing new dashboard design
Macbook showing new dashboard design
Macbook showing new dashboard design

Business Context

Lunchbox was investing in larger bets and needed to be ready to onboard larger enterprise clients. Moving up market would require greater efficiency and better solutions with less errors and quicker completion times

Problem

Onboarding was spending hours configuring and troubleshooting guest migrations, often receiving repeated error messages and no guidance on how to resolve errors

Goal

To increase adoption and buy-in of the feature on the new dashboard across the Onboarding team, to enable and empower everyone on the team to handle migrations, and to reduce friction and error rates with the import process

User Research

User Research

User Research

User Research

User Research

I knew that to uncover solutions, I had to fully understand the problems the team was facing. I started by interviewing 3 key people on the Onboarding team, followed by 2 other internal SMEs. Some key takeaways included:


  • The Onboarding team had their go-to person for migration troubleshooting. Each week he was dropping what he was working on to spend several hours fixing file upload errors

  • Uploading was confusing! There was only 2 file statuses (uploaded or failed). They couldn’t tell when a file was successfully uploaded

  • There was a general distrust of the new admin dashboard. How could I help bridge that gap and build trust for the team through design?

  • It’s not clear what’s needed from a file to begin uploading. This translates into Onboarding confusion, thus confusion for clients and increased errors

User Research

2 people speaking on google meets video call
2 people speaking on google meets video call
Old dashboard design with annotated callouts

User Research Cont'd & Design Audit

User Research Cont'd & Design Audit

User Research Cont'd & Design Audit

User Research Cont'd & Design Audit

I had Onboarding walk me through the process of how they upload a migration file on the old dashboard. The entire process was recorded for team review and ingested via Dovetail.


I began with a hypothesis that by helping users understand what is needed for a file upload (and providing help for navigating upload errors), and by providing a cleaner interface that communicated upload status, we could reduce overall time spent by the Onboarding team carrying out migration uploads.

CUSTOMER TEAM MEMBER QUOTE • OLD DESIGN

CUSTOMER TEAM MEMBER QUOTE • OLD DESIGN

CUSTOMER TEAM MEMBER QUOTE • OLD DESIGN

CUSTOMER TEAM MEMBER QUOTE • OLD DESIGN

Just improving this error handling and helping empower others would save me hours per week… people wouldn't have to rely on me for migrations!

Just improving this error handling and helping empower others would save me hours per week… people wouldn't have to rely on me for migrations!

Just improving this error handling and helping empower others would save me hours per week… people wouldn't have to rely on me for migrations!

Just improving this error handling and helping empower others would save me hours per week… people wouldn't have to rely on me for migrations!

Just improving this error handling and helping empower others would save me hours per week… people wouldn't have to rely on me for migrations!

Table showing score results from interviews
Table showing score results from interviews

Baseline Metrics

Baseline Metrics

Baseline Metrics

Baseline Metrics

Baseline Metrics

Before delving into ideation and exploring directions, I wanted to level-set some metrics to track over time. These results also helped us define what the MVP should deliver:


  • A general consensus of not being sure how a file should be formatted and what might cause an error in upload

  • Upload statuses (or lack thereof) were a major point of confusion

  • Users wanted to see an error log of what caused a file upload to fail

User sentiment around innovation of the current design clocked in at a mean score of 40%. A new goal emerged from this research as well – Besides driving adoption of the new dashboard, we had to help build Onboarding's trust in the platform.

Baseline Metrics

Engineering Constraints

Engineering Constraints

Engineering Constraints

Engineering Constraints

Engineering Constraints

Engineering Constraints

The backend wouldn't allow for multiple file uploads to occur simultaneously; it was too taxing and costly! We would have to find a solution that would seamlessly allow for one file upload at a time, without adding too many steps or bogging the user down

The backend wouldn't allow for multiple file uploads to occur simultaneously; it was too taxing and costly! We would have to find a solution that would seamlessly allow for one file upload at a time, without adding too many steps or bogging the user down

The backend wouldn't allow for multiple file uploads to occur simultaneously; it was too taxing and costly! We would have to find a solution that would seamlessly allow for one file upload at a time, without adding too many steps or bogging the user down

Insight #1: Users were frustrated by the lack of file statuses

Insight #1: Users were frustrated by the lack of file statuses

Solution: The upload system needs to keep users updated on exactly what is happening.


We created new statuses to clearly label what stage a file was in to deliver a reliable and predictable experience, and to ensure accessibility, buttons were aligned with the strictest WCAG standards for contrast ratios. To improve upload visualization, we introduced a progress bar complete with upload percentage, which users loved!

Insight #1: Users were frustrated by the lack of file statuses

New button designs and file upload progress status bar
New button designs and file upload progress status bar
Closeup of Download CSV template button
Closeup of Download CSV template button

Insight #2: Users weren’t sure what’s needed from a file

Insight #2: Users weren’t sure what’s needed from a file

Solution: What could we create that doesn’t require any backend changes? We came up with the idea to have a downloadable CSV template that would have all the headers correctly formatted so information would be parsed without hiccups.

Users really liked this simple addition that served a couple purposes – it was a training tool for those new to handling migration uploads, but it was also a helpful resource that Onboarding could share with clients to educate them on how the CSV files should be formatted (or if they needed a refresher themselves). A win-win!

Solution: What could we create that doesn’t require any backend changes? We came up with the idea to have a downloadable CSV template that would have all the headers correctly formatted so information would be parsed without hiccups.

Users really liked this simple addition that served a couple purposes – it was a training tool for those new to handling migration uploads, but it was also a helpful resource that Onboarding could share with clients to educate them on how the CSV files should be formatted (or if they needed a refresher themselves). A win-win!

Insight #2: Users weren’t sure what’s needed from a file

Insight #3: The backend would only allow one file injection at a time

Insight #3: The backend would only allow one file injection at a time

Insight #3: The backend would only allow one file injection at a time

Insight #3: The backend would only allow one file injection at a time

Insight #3: The backend would only allow one file injection at a time

Solution: Working with the constraints provided earlier from Engineering, we were able to solve for the use-case when a user has multiple files loading into the system at the same time.


To reduce stress on the backend, we would allow multiple files to be able to "pre-verify", but only allow one file at a time to inject into the database.

Insight #3: The backend would only allow one file injection at a time

Closeup showing multiple files uploading to the dashboard
Closeup showing multiple files uploading to the dashboard
Tool tip showing more information about a file upload status
Tool tip showing more information about a file upload status

Insight #4: The layout was confusing and didn't help users easily find a file

Insight #4: The layout was confusing and didn't help users easily find a file

Insight #4: The layout was confusing and didn't help users easily find a file

Insight #4: The layout was confusing and didn't help users easily find a file

Insight #4: The layout was confusing and didn't help users easily find a file

Solution: The layout should highlight essential elements while reducing clutter. We added the file name and file icon to each respective upload, new headers to identify what status a file was in (with a tool-tip for further details) and a file search and sort via status/date functions.


Users really liked these changes as this helped them reduce scrolling and speed up the search in the case that there were multiple file uploads over time, and – instead of just a long list of uploads, the new design improved the hierarchy to give a clearer overview of all file upload statuses at a glance.

Insight #4: The layout was confusing and didn't help users easily find a file

Insight #5: In the case of a failed upload, users weren’t sure how to resolve that file

Insight #5: In the case of a failed upload, users weren’t sure how to resolve that file

Solution: The upload system should provide guidance and actionable steps to help users diagnose errors.


In the instance that a file has errors preventing its upload, we provide an overview of the general formatting errors, how to fix them, and the ability to download the error log for a closer look on what went wrong.

Insight #5: In the case of a failed upload, users weren’t sure how to resolve that file

Error dialog for a failed file upload
Error dialog for a failed file upload

The Finished Product

The Finished Product

After a few rounds of usability testing and revisions, we arrived at the final approved direction. The new design delivered on the goal to provide users with an improved guest migration process and enjoyable dashboard experience, and to provide them with the tools they needed to fix errors quickly.

Image showing 100% adoption rate of the design from the onboarding team
Image showing 100% adoption rate of the design from the onboarding team

Takeaways

Takeaways

Takeaways

Takeaways

Takeaways

Tracking the success metrics we set early on in the process, we were excited to see that post-launch, we had achieved an adoption rate of 100% by the Onboarding team! Other key wins included:


  • 39% reduction in error task completion time – With the new file validation flow designed to catch errors early in the upload process and guide them through error resolution, users spent less time overall troubleshooting files!

  • Increased customer ratings – Customer surveys reported strong gains in ease of use, visual effectiveness, trust, hierarchy, and feelings of innovation in a cross analysis scoring of the old design vs. the new design

  • Team members felt more empowered – Through the new CSV template button and the error log help, the team was able to take troubleshooting matters into their own hands

Takeaways

Business Context

The Onboarding team was still using the old legacy dashboard for guest migrations. A barebones version on the new dashboard existed, but with limited functionality, thus low usage rates. For Phase 1, we would be focusing this rollout internally only.

Problem

Onboarding was spending hours configuring and troubleshooting guest migrations, often receiving repeated error messages and no guidance on how to resolve errors

Goal

To increase adoption and buy-in of the feature on the new dashboard across the Onboarding team, to enable and empower everyone on the team to handle migrations, and to reduce friction and error rates with the import process

Just improving this error handling and helping empower others would save me hours per week… people wouldn't have to rely on me for migrations!

CUSTOMER TEAM MEMBER QUOTE • OLD DESIGN