Salesforce Reports: Who moved the Cheese?There is a hugely popular management book called Who Moved My Cheese by Spencer Johnson M.D. which points out that if 3 different people look at an object from different angles they could all be 'correct' in describing what they see, but are in fact experiencing different/wrong results.
I was recently reminded of this during 2 different customer meetings last week where there was a reported issue with Salesforce reports.
Apparently, 2 or more users looking at the same data in reports were having separate results and we were asked to investigate what was going wrong.
These reported issues prompted this blog post.
How long was that telephone call?The first example I came across last week was one customer who had integrated their phone system within Salesforce.
3 different users in their business had created 3 different reports showing completely different 'Total Durations' of their phone calls.
They could all be 'correct'
With data, everyone 'singing from the same hymn sheet' is vital
To help clarify the issue, I asked each of the 3 business users how they would define a telephone call length.
- The total time (as experienced by the caller) that they were on the phone (from first typing the numbers)?
- The total time that the agent spoke to the caller (productivity)?
- The total time the agent spoke + any required after work/note taking?
- The total time the caller was interacting with the phone system, i.e. selecting menu options + talk time + after work time?
- All of the above with the additional of ringing/queuing times?
Whilst some of these questions seem similar, even a small misunderstanding or misalignment of their logic across a business will give different results.
For example, if I created a report and calculated the Average value of Talk Time it would give me one result. If I created another report with an Average value of 'Talk + Ring' my result would be different.
In this example, the 3 different users had created 3 different reports that were summing/totalling different columns of information.
Solution & RecommendationsIt may sound obvious but the solution to this problem was to get the 3 stakeholders together and get them to agree on a common convention for reporting.
I always like to use outlandish/extreme examples to get people thinking about the data they actually need and their definition of it - user-centric stories always work well.
If Customer A calls you, waits 10 seconds to enter their account number, waits 5 minutes in a queue, gets answered and talks to customer service for 5 more minutes, then customer service is working on his issue for 5 minutes after the call - how many minutes should this display as?
Once they had all agreed what a call actually was, it was simply a case of creating a single report for them within a shared folder inside of Salesforce that they would all use going forward.
For an idea of the different statistics that can be created with telephony integration check out these links from Tenfold and NewVoiceMedia
Tenfold Call Statistics Fields
NewVoiceMedia Statistics Fields
What is the service level for our Cases?
The question of 'how long did we work on this Case' can also have different results if your business logic is not applied consistently.
Out of the box reporting in Salesforce gives you a concept of Case Age.
Case Age tracks the entire time that a Case is Open through to Case Closure. It even factors in Business Hours and known vacations so that you can confidently say:
This Case was created, progressed, and closed in 3 days.
That metric may be useful for many businesses, but in my case, the customer was actually asking:
How much time did we actually work on this case?' (ignoring customer response waiting time)?For that kind of metric, you need to know how many activities took place, how long each activity took, and then deduct that from the overall total.
Just in the phone call example above, the different departments in the business had calculated the 'working time' on a Case differently using their own interpretation of 'working time'.
To solve this issue, we again had to bring the different stakeholders together and using real-life examples agree the convention be used in reporting.
Then, a single Case tracking report was created and put into a shared folder for them all to Access, and most importantly, to have consistent calculations applied to their service levels.
For the requirement to 'pause' the counter whenever customer service was waiting for a response I used an App called Case Flags by Internet Creations but you could also capture key times/dates using Process Builder and Custom Fields if needed.
For both of these problems, the key was getting everyone to agree on a standard definition for reporting terms and then creating a shared resource for them to access going forward.
I hope that helps. I'd love to hear of any other approaches you might have taken on solving reporting questions like this in Salesforce.
Good luck keeping that Cheese still.
Cheese Photo by NastyaSensei Sens from Pexels
Timer Photo by PixaBay from Pexels
Mouse Photo by PixaBay from Pexels