Custom reports


THE GOAL
ROLE
TEAM MEMBERS

Let merchants build the reports that matter most to them.

Product design lead

Project manager, frontend developer, backend developer

Let’s set the stage.

When I first started at Recharge in 2017, the product didn’t have any analytics. Merchants had to look to third-party tools to measure the success of their subscription efforts.

Over time, we built a comprehensive analytics platform into the Recharge product, including over 14 pre-built dashboards and 23 done-for-you reports.

However, a common theme when talking to merchants was that every merchant was unique. They had their own questions to ask and things to care about when it came to their analytics. A one-size-fits-all solution would never serve everyone well.

We were particularly hearing this feedback when it came to reports.

How might we let merchants keep track of the metrics that mean the most to them?

The current state of reports

We already had a lot of reports built for merchants. These reports:

  • Fell under 4 categories (revenue, customers, subscriptions, actions)

  • Gave date range controls

  • Gave minimal display controls (display by day/week/month)

  • Allowed filtering by product, variant, or segment

An example of an existing report

Problems with the current state of reports

  • Merchants could customize reports to their heart’s desire, but they couldn’t save their custom views. Merchants would have to come back to a report, reproduce all of their filters and customizations every single time they wanted to see it.

  • Filters and grouping controls were limited and didn’t allow merchants to slice their data many ways.

  • Loading times were lengthy whenever a merchant made a change to the view.

  • Existing reports wayfinding couldn’t support a growing list of reports.

Old reports navigation was built into our main sidebar navigation

The goal:

Allow merchants to customize and build reports that are uniquely meaningful to them.

  • Let merchants modify existing reports and save them

  • Let merchants build brand new reports, from scratch

  • Expand report controls so merchants can find exactly the data they need

  • Reduce time spent waiting on a report to load

  • Revamp reports wayfinding, planning for a world with many more reports

Priorities

This was a lot to tackle all at once, and backend needed us to ease into steps of the project here. The project manager and I decided it would be best to break out our goals into milestones:

  1. Milestone #1: Let merchants save reports

  2. Milestone #2: Let merchants more easily find reports

  3. Milestone #3: Improve functionality for existing reports

  4. Milestone #4: Allow merchants to build brand new reports from scratch

Milestone #1: Let merchants save reports

This was the first step forward. How might we allow merchants to save the modifications they were making to existing reports so that they could quickly and easily come back to their custom views?

We didn’t need to reinvent the wheel here, as we had save patterns already established in app.

We did have a key decision to make: Would we let merchants override preset reports? Because we wanted merchants to always be able to access our preset reports and their value, we decided merchants could not save “over” one of the Recharge presets. This behavior was consistent with Shopify’s custom report builder, which is a familiar space for our merchants.

A preset report would only have “Save as new report”
Merchants would be prompted to name their new report
Custom reports could be deleted, saved, or saved as new