Redesigning Custom Dimensions at Clarisights


About the company

Clarisights provides real-time, interactive, and contextual reporting for high-performance marketing teams. Primary users included marketing teams in large organizations (e.g. Delivery Hero, Hello Fresh, Livspace, AJIO, etc). In less than two years from inception, Clarisights is replacing excel sheets and other BI tools for large-scale marketing teams around the world.


Role and responsibility

I worked with the Clarisights team as a UX Designer from Feb 2019 till Jan 2020. I have been involved in the redesign process of core product features like Custom Dimensions, Widget Creation, Integrations, and Filters. I collaborated with the Customer Success team, Product Managers, and the Dev team.



Scope of this project

Every Clarisights report is built with dimensions and metrics.

Dimensions: Dimensions are attributes of your data. The dimension Country indicates the country, for example, "Germany" or "Norway", where a sale happens.

Metrics: Metrics are anything you can count. The metric Items Sold is the total number of items sold in that country. The metric Revenue is the revenue generated on the sale of those items.

Generally, a data table will have dimension values arranged in rows and metrics in columns. For example, this table shows one dimension (Country) and two metrics (Items sold and Revenue).

Custom Dimensions are like default dimensions, except you create them yourself to cater to additional attributes that default dimensions don't cover. Custom Dimension allows you to group your Accounts, Campaigns, or any elements of advertising channels that share a common property. e.g. Product category Location Brand

Old design for listing Custom Dimensions in Clarisights.


With the help of regular customer interviews, the team recognized that the custom dimension creating and analysis was limiting in certain areas. This project aimed to tackle those limitations.



Problem



Problem 1: Redundant steps to add identical filters to multiple ad channels

While creating or editing a custom dimension, users had to write filters for each advertising channel separately. With the ad channel count increasing and the filter rules getting longer, it became time-consuming to create a custom dimension.

As we looked more into the filters data, it came up that in most cases the filters for different ad channels were identical. We wanted a smarter way to reduce this redundancy while creating a custom dimension.


Problem 2: Indirect effect caused by editing dependant custom dimensions

In some cases, a custom dimension is used as a part of filters for another custom dimension. This creates a link between the two. On the modification of one, the other one is indirectly affected. The user has no idea about this until one custom dimension gives out weird outputs. No warning on indirect effect on dependant custom dimensions.


Problem 3: Lack of first glance information

For any marketing lead/manager, it took more than 2 clicks just to view the filters for any custom dimension. With more than 100 custom dimensions in some cases, this slowed down the analysis process considerably.



Research


Customer Inputs:

The Customer Success team at Clarisights is in touch with the customers on a daily basis via Zoom video calls. The team has made their calendars public so that anyone from the team can join the meetings with customers.

These meetings are a source of the long list of customer inputs, reviews, frustrations; giving us an insight into their behaviour about platform usage and allows us to explore ideas with them about how Clarisights can improve their daily workflow.

We used to record each input, tag them and analyse them to narrow down and prioritise items to pick up.


Development Team Inputs:

Given the scale of the platform, and the complexities that come along with it; we involved the development team in the design cycle from the start. It helps us in understanding the approach dev team had while building the product, and take that into account while designing.




Solution


Solution to Problem 1: Update to Information Architecture

A custom dimension is a grouping of filters for one or multiple ad channels. But in the previous design, ad channels having the same filters were not clubbed, due to which the user had to write the same set of filters multiple times for different ad channels.

e.g. Dimension Value Brand had the same filter Account contains Brand repeated for Facebook, Twitter, and Google Ads.

To overcome this, we updated the information architecture.

Before: Custom Dimension → Ad Channel(s) → Value(s) → Filter(s)

After: Custom Dimension → Value(s) → Rule(s)

Rule = Ad Channel(s) + Filters

Update to Information Architecture

In the new structure, Values are the primary citizens of any custom dimension. A value can have multiple rules, which comprises of multiple ad channels. The user now had to write the repeating filter across multiple channels just once.




Solution to Problem 2: Introducing Dependencies

In some cases, a custom dimension is used as a part of filters for another custom dimension. This creates a link between the two. On the modification of one, the other one is indirectly affected. The user has no idea about this until one custom dimension gives out weird outputs.

There was no way for the user to be alerted before they made any modification in such interlinked custom dimensions.

To solve this, we introduced Dependencies. Dependencies displayed the correlation between different custom dimensions. The user could now see the inter-linking between custom dimensions up to filter level.

Dependancies modal view

Dependencies even allowed the user to cross-check, before publishing, on how the changes made to one Custom Dimension may/may not affect any other Custom Dimension.




Solution to Problem 3: Updated UI for listing custom dimensions

The updated UI gives single-click access to all critical information about a custom dimension. This includes the custom dimension values, advertising channels, filters, and dependencies. This also reflects the changes in the information architecture mentioned above.

Updated UI for listing Custom Dimenions. Dummy data added.

Components for custom dimensions

Base grid unit: 7px



Other Minor Updates:


Automatic levels assignment: Earlier, while adding a filter to a particular ad channel, the user had to choose at what level the filter needed to be applied. But in the updated version, the system automatically detects the level based on the filters applied. Although this was not a design decision, but an implementation upgrade, it did change the end-user experience significantly. Hence the mention here.

Improved Copy: Clear messaging, guided descriptions and errors to ensure the user is not lost at any step.

Colour-coded rules (filters): Filters can get long and hard to read very easily. Color-coding and/or conditions improved readability of those long filters.

Filter dropdown UI update: Filter dropdown was redesigned from scratch. But since it was treated as a separate component, I will write about it in detail in a separate post.



The Rollout

Being a significant development effort, the team is carrying out an incremental rollout with few essential features at a time. Initial feedback from the customers seems promising.

The team is keeping a tab on each feedback and is in the process of polishing the rough edges and in parallel release remaining features.



Impact



Improved product stickiness

Increase in YoY CD value creation by 2.2x. Customers creating custom dimensions on Clarisights, tailored to their business use-cases, improves product stickiness as it becomes difficult for them to switch to any other system.


Reduction in creation times for multi-channel custom dimensions

24% CD values with multi-channel rules leading to a significant reduction in time taken to add new values having multiple advertising channels with the identical rules.


• • • •


Special thanks to Yash, Pranav, Sumangal, Kushagra, Anmol and other members of the development team who contributed to this project.