Custom Reporting: A Basic Understanding

Kustomer reporting is an extremely useful tool to retrieve metrics on things such as; agent performance, an organization’s activity, satisfaction data, and Service Level Agreements. Although, as powerful as the Reporting tool can be, it can be very tricky to build custom reports. A lot of the questions I’ve seen come from confusion in the Chart Editor and which data, date range, actions and filters that should be applied. In this blog I will discuss each step of the Chart Editor and share some of the popular properties and how they’re used.

The Chart Editor

When clicking on the “New Chart” button, the Chart Editor menu will appear that has an “Explore Chart Templates” feature. I always recommend using the search field and drill down menu to search through pre-made chart templates, as Kustomer may already have a template laid out for you that will save you time from building out your own chart. 

After searching through the templates, you don’t find a chart template that will help you get the data you’re looking for. So next, you click the “+ Start From Blank” link and the blank template menu appears starting in the Build Data - Step 1 tab. The Build Data step has all the sub-steps in order:

  1. Data Type

  2. Date Range 

  3. Chart Type

  4. Actions (This is an option field)

  5. Filters

Step 1, Data Type. This field is pretty self explanatory, as you will choose which data type you are trying to pull data from: Conversation, Customer, Message, Kobjects. 

  • Conversation is the most used object type as you have access to detailed information pertaining to the conversations you are having with your customers. Attributes such as: Channel, Created At/By, First Response Time, Message Count..etc

  • Customer is used to access information related to the customer attributes such as: Customer Name, Company, Email, Phone…etc.

  • Message contains data on individual interactions with a customer, within a conversation. This object is helpful to report on when you don’t want details relevant to a conversation level and want to dig down into specific things like, what channel a message came through on, or what languages are used by your customers.

  • KObject reporting allows organizations to report on stored information specific to their business and customer records as well as any other standard or custom KObjects. 

Step 2, Date Range, is when things can start to get a little confusing for some. The date range will vary depending on which data type was selected. However, some date range options can be found in multiple data types. The more familiar we make ourselves with the date ranges and what data they have access to, the easier it is to create custom charts for reporting. I won’t go through all the date range options as Kustomer has some great documentation on most of the Standard Objects which you can view HERE. Below are some common date ranges that you will not find on that list. 

Conversation Date Range:

  •  Conversation First Message In Sent is a date/time that is applied to the first inbound message that created the conversation. This data can be used to track the volume of initial inbound messages.

  • SLA Matched At is a date/time that is set when the first Service Level Agreement is satisfied. The SLA Matched At date range is useful for seeing if agents are keeping up with the queue and satisfying different SLA’s.

  • First Response Breach At/Satisfied At is a date/time that is applied when the First Response Service Level Agreement has been breached/satisfied. This data range is used when there is an SLA on First Responses and will show when that SLA has been breached or Satisfied. 

  • Longest Unresponded Message SLA Breach/Satisfied At is a date/time that is set for a specific time period to track when the last inbound message was responded to. 

Work Session Date Range:

  • Signed In At is a date/time for when a user signs in. This data can be used to create reports on how often agents are signing in.

  • Total Available Status At is a date/time that a user’s status is set to available. This data is used to create a report track the how long an agent's status has been set to available. 

Step 3, Chart Types. Chart types may not seem like much and some may think that they can use just any chart type to show data. While that may be partially true, some charts may limit the options you have in step 4, Choose Action. Such as, the KPI Card only allowing one action option and not giving a “Segmented By” option. KPI Cards can also only exist on the same row as other KPI Cards. Also, the Table chart will allow you to “Segment By” multiple attributes. Below are the best uses for each chart type:

  • Column Charts are mostly used for when you want to show values that are categorized by different characteristics (ie. Number of conversations by Channel, Queue, Team…etc).

  • Line Charts are used for counts or proportions of one variable and one value you want to track over time (ie. “Avg Messages Per Conversation” or “SLA by Status”). 

  • Stacked Column Charts are ideal for calculating metrics over time. (ie. “Conversations by Status” or “Customer Sentiment on Conversations with a Closed Status”). 

  • Area Charts are ideal for showing data around volume changes over a period of time (ie. Comparison over time of “avg first response” and “avg first resolved”) . 

  • Stacked Area Charts are great for understanding the composition or contribution of subgroups to a total value over time (ie. Number of “Inbound Conversations by Channel”).

  • Pie Charts are best used when you want to present a sum of several different variables in one category (ie. “Number of Conversations in a Queue” or “ it’s ideal to display data for 6 categories or less as things can start looking a little chaotic.

  • Tables are used when pure numerical values are all you’d like to display (ie. “Agent Performance Metrics”).

  • KPI Cards are great for when you want to see how your teams are performing against your Key Performance Indicators (ie. An Agent’s “Avg First Response Time” or “Avg Resolution Time”). With this card, you can toggle the metric on and off to compare the currently trending, to the previous period. 

Step 4, Actions, is an optional field but very rarely does it go unused. Choosing one of these actions allows you to define how you want to segment or narrow the data coming into your chart. As I mentioned in the Chart Types section, multiple actions can be added to certain charts. Multiple “Segment By” actions are available when using Tables and segmenting field calculations (ie. using Segmented By as the first action and then choosing between any of the other actions options for the second action) is allowed on all charts except Pie Charts. Below are the descriptions of each Action option which can also be found in the Kustomer help documents, Define a Custom Report Action:

  • Segmented by splits your data by values or labels so that you can easily see how different portions compare against each other (ie. Segmenting conversations by teams, assigned users and even by queue).

  • Distinct can help you narrow your data down to one specific property, such as the conversation status or customer locale.

  • Average is the average of whatever data you are looking at in your chart. Keep in mind that the average can always be skewed by outlier data. It is always a good idea to also look at the median number as well to compare.

  • Median makes sure that your data lies equally on either side of the median number. Use this action to find the true middle of your data range.

  • Max returns the highest, or maximum, value in your data set.

  • Min returns the lowest, or minimum, value in your data set.

  • Sum is best selected when you need to know the total value of your data set.

Step 5, Filters. This is probably the second most important step behind making sure you’re pulling from the right data type. These filters work exactly like creating searches. This is why I always recommend creating a search to compare with your report data. It allows you to check your work and help find potential discrepancies in the data that may not catch your eye at first glance. I won’t do a deep dive into filters for this blog, but you can find some great information in Kustomer’s help documents, Understanding Filter Operators.

This isn’t considered a step, but the next field in the Build Data menu allows a limit to the amount of results shown in a chart. Normally I recommend leaving this section empty, but if you want to sow a set number of results this is the place to do it.

Before clicking “Next” and moving forward, you will notice that there is the option to add a second query in the bottom left corner of the Chart Editor menu. 

This feature will allow you to add another query to compare two metrics over the same time period in a single chart. You will basically go back through steps 1-5. However, adding a second query does have some limitations as to which charts can be used. Only the Column, Line, Stacked Column, Area and Stacked Area charts can have a second query. The second query will only be available as a Line Chart. 

We’ve, finally, finished up the “Build Data” step, we’ll click the “Next” button and move on to the Customization tab. In this area, you will be able to customize the title, description, X and Y axis names, set the default chart view for the time interval and add target values for each time interval. 

The Title of chart is the only required field in this section. However, I would recommend adding a short Description of what data the report is supposed to be showing, as this can help aid anyone coming to make any necessary changes or with an investigation if the report begins to show discrepancies in the data. The X and Y axis names can be changed, but it’s personal preference as they are given a default name to what the property is. The Time Intervals can be applied depending upon the date range selected. If you view up to one day of data, you can select the Per Minute interval. If viewing two weeks of data or less, you can select Quarter Hourly, Half Hourly, or Hourly intervals. Finally, the last remaining section, Add Targets. To help better understand your performance, this feature allows you to place numerical input target values for each time interval you plan to review this metric in.  

If you’ve made it to this point, hopefully, you have a better understanding of custom reports and how they are created. The more familiar you get with the date ranges and the data that each option provides, the easier these charts will be to create. Sometimes it just comes down to trial and error.