Metrics Reference

27 min read

Active Agents

Number of agents that are currently active in all the connected platforms. Active agent is an agent that exists in the platforms and is not deleted. It does not imply the agent is available to engage with customers.

SELECT COUNT(Agent) 
  WHERE Agent ⏵ State IN ("Active")
public_active_agents

Agent Conversations

Number of conversations in which agent was engaged. If an agent starts multiple engagements in a single conversation in the given time frame it is still counted as 1, unlike number of engagements.

SELECT COUNT(Engagement ⏵ Conversation) 
  WHERE Engagement ⏵ Type IN ("Agent")
public_agent_conversations

Agent Conversations per Customer

The average number of conversation per one customer.

SELECT AVG(
  SELECT Agent Conversations 
    BY Customer)
public_agent_conversations_per_customer

Agent Engagements

Total number of agent engagements. This includes agent engagements that are associated with the agent including engagements that are in progress or marked as corrupted.

SELECT COUNT(Engagement) 
  WHERE Engagement ⏵ Type = "Agent"
public_agent_engagements

Agent Engagements Ignored in SLA

Number of agent engagements that are not included in service level calculation.

SELECT Agent Engagements
  WHERE Engagement ⏵ Service Level IN ("Ignore")
public_agent_engagements_ignored_in_sla

Agent Engagements Tagged as Reviewed

Number of engagements that have at least one tag "Reviewed".

SELECT COUNT(Engagement)
  # Including only those negagement where an agent was involved
  WHERE Engagement ⏵ Type IN ("Agent")
    # Making sure that we include only completed reviews because those are there to stay
    AND Review ⏵ State IN ("Completed")
    # PID for Questions "Reviewed" that is used to tag reviewed engagements
    AND Question IN ("24bc8f9c-f340-4a41-8e77-9d364384f0ac")
  # We ignore Question level filters as this metric explicitly focused on "Reviewed" tag
  WITH PARENT FILTER EXCEPT Question
public_agent_engagements_tagged_as_reviewed

Agent Engagements Tagged as Reviewed %

Percentage of enagegemtns that are reviewed out of all agent engagements.

SELECT Agent Engagements Tagged as Reviewed
  / Agent Engagements
public_agent_engagements_tagged_as_reviewed_percentage

Agent Engagements for SLA

The number of agent engagements that is used for the total number of engagements included in the calculation.

SELECT Agent Engagements
  WHERE Engagement ⏵ State IN ("closed", "solved", "Completed")
    AND Engagement ⏵ Service Level NOT IN (NULL , "Ignore")
public_agent_engagements_for_sla

Agent Engagements in Progress

The number of agent engagements that are in progress. An agent started working on them but they were not marked as completed.

SELECT Agent Engagements 
  # The condition to include only engagements in progress
  WHERE Engagement ⏵ State IN ("In Progress")
public_agent_engagements_in_progress

Agent Engagements on Hold

The number of agent engagements that are on hold. An agent started working on them but were not finished. In the same time they were marked as on hold meaning the agent is not spending time with them.

SELECT Agent Engagements 
  # The condition to include only engagements on hold
  WHERE Engagement ⏵ State IN ("On Hold")
public_agent_engagements_on_hold

Agent Engagements out of SLA

Number of agent engagements that not match requirements for service level.

SELECT Agent Engagements
  # Condition to include only engagements out of SLA from the source platform
  WHERE Engagement ⏵ Service Level IN ("Out of SLA")
public_agent_engagements_out_of_sla

Agent Engagements per Agent

Total number of engagements per agent.

SELECT AVG(
  SELECT Agent Engagements 
    BY Agent)
public_agent_engagements_per_agent

Agent Engagements per Agent, Day

Shows average number of agent engagements per agent per day based on the time when the engagement started. This can be used to show average agent performance when comparing teams or just having an overall performance trend for the entire contact center. Includes only instances in the average when the agent had at least one engagement that day.

SELECT AVG(
  SELECT Agent Engagements 
    # group the count by both start time and the agent
    # the average then averages nuumber of engagements in those segments
    BY Start Time ⏵ day, Agent)
public_agent_engagements_per_agent_day

Agent Engagements per Agent, Hour

Shows average number of agent engagements per agent per hour based on the time when the engagement started. This can be used to show average agent performance when comparing teams or just having an overall performance trend for the entire contact center. Includes only instances in the average when the agent had at least one engagement that hour.

SELECT AVG(
  SELECT Agent Engagements 
    BY Start Time ⏵ hour, Agent)
public_agent_engagements_per_agent_hour

Agent Engagements per Available Hour

Number of enagegement per hour that agent is in any available activity.

SELECT Agent Engagements
  / (Total Available Time / 3600)
public_agent_engagements_per_available_hour

Agent Engagements per Case

Average number of agent engagements per single case.

SELECT AVG(SELECT Agent Engagements 
  BY Engagement ⏵ Case)
public_agent_engagements_per_case

Agent Engagements per Conversation

Average number of agent engagements per single conversations.

SELECT AVG(
  SELECT COUNT(Engagement) 
    BY Engagement ⏵ Conversation
    WHERE Engagement ⏵ Type = "Agent")
public_agent_engagements_per_conversation

Agent Engagements per Customer

The average number of agent engagements per single customer.

SELECT AVG(
  SELECT Agent Engagements 
    BY Customer)
public_agent_engagements_per_customer

Agent Engagements per Hour of Day

Average agent engagements happening every hour.

SELECT AVG(SELECT Agent Engagements 
  BY Start Time ⏵ hourOfDay)
public_agent_engagements_per_hour_of_day

Agent Engagements with Agent Review

Number of agent engagements that have at least one given a

SELECT COUNT(Engagement, Review)
  WHERE Engagement ⏵ Type IN ("Agent") 
    AND Review ⏵ Type IN ("Agent")
    AND Review ⏵ State IN ("Completed")
public_agent_engagements_with_agent_review

Agent Engagements with Agent Review %

The percentage of agent engagements that have at least one review from the agent out of all completed agent engagements.

SELECT Agent Engagements with Agent Review /
 Completed Agent Engagements
public_agent_engagements_with_agent_score_percentage

Agent Engagements with Auto Review

Number of completed agent engagements that have at least one automatic review.

SELECT COUNT(Engagement, Review)
  WHERE Engagement ⏵ Type IN ("Agent") 
    AND Engagement ⏵ State IN ("Completed")
    AND Review ⏵ Type IN ("Auto")
    AND Review ⏵ State IN ("Completed")
public_agent_engagements_with_auto_review

Agent Engagements with Auto Review %

Percentage of engagements that have at least one completed auto review out of all completed engagements.

SELECT Agent Engagements with Auto Review 
  / Completed Agent Engagements
public_agent_engagements_with_auto_review_percentage

Agent Engagements with Customer Review

Number of completed agent engagements that have at least one review from the customer.

# Count engagements and make sure multiple reviews of the engagement only count as one
SELECT COUNT(Engagement, Review)
  # Only in agent engagements, if there was just waiting in the queue or similar experience, we do not care
  WHERE Engagement ⏵ Type IN ("Agent") 
    # Include only completed engagements as in progress may still have chnages in the future
    AND Engagement ⏵ State IN ("Completed")
    # Include only reviews from customers
    AND Review ⏵ Type IN ("Customer")
    # Include only completed, so if there is just a request for review and customer has not (yet) responded it does not count
    AND Review ⏵ State IN ("Completed")
public_agent_engagements_with_customer_review

Agent Engagements with Customer Review %

Percentage of engagements with at least one review from customers out of total completed engagements.

# Take all metric engagements that have at least on completed customer review
SELECT Agent Engagements with Customer Review 
  # Divide it by all completed agent engagements to get percentage
  /Completed Agent Engagements
public_agent_engagements_with_customer_review_percentage

Agent Engagements with Review

Number of agent engagements that have a any completed review.

# Count engagements and make sure multiple reviews of the engagement only count as one
SELECT COUNT(Engagement, Review)
  # Only in agent engagements, if there was just waiting in the queue or similar experience, we do not care
  WHERE Engagement ⏵ Type IN ("Agent") 
    # Include only completed engagements as in progress may still have chnages in the future
    AND Engagement ⏵ State IN ("Completed")
    # Include only completed, so if there is just a request for review and customer has not (yet) responded it does not count
    AND Review ⏵ State IN ("Completed")
public_agent_engagements_with_review

Agent Engagements with Review %

SELECT Agent Engagements with Review /
 Completed Agent Engagements
public_agent_engagements_with_review_percentage

Agent Engagements with Review Score

The number of engagements with at least one completed review from a reviewer.

SELECT COUNT(Engagement, Review)
  WHERE Engagement ⏵ Type IN ("Agent") 
    AND Review ⏵ Type IN ("Reviewer")
    AND Review ⏵ State IN ("Completed")
public_agent_engagements_with_review_score

Agent Engagements with Reviewer Score %

SELECT Agent Engagements with Review Score /
 Completed Agent Engagements
public_agent_engagements_with_reviewer_score_percentage

Agent Engagements within SLA

Number of comleted agent engagements that were handled within the service level.

SELECT Agent Engagements
  WHERE Engagement ⏵ State IN ("Completed", "closed", "solved")
    AND Engagement ⏵ Service Level IN ("Within SLA")
public_agent_engagements_within_sla

Agent Score

The score of a review provided by the agent engaged in the reviewed engagement.

SELECT Review ⏵ Score
  WHERE Review ⏵ Type = "Agent"
public_agent_score

Agent Service Level

Service level (SLA) for agent engagements. Percentage of engagements within service level out of all engagements that should be included in the calculation.

SELECT Agent Engagements within SLA /
  Agent Engagements for SLA
public_agent_service_level

Agents with Engagement

Number of agents that had any engagement. Depending on use of start time or end time this metric shows how many agents started resp. concluded their engagements.

SELECT COUNT(Agent, Engagement) 
  WHERE Engagement ⏵ Type = "Agent"
public_agents_with_engagement

Auto Score

Review score that was provided by an automated service or tool such as ML/AI model.

SELECT Review ⏵ Score
  WHERE Review ⏵ Type IN ("Auto")
public_auto_score

Available Time %

The percentage of available time out of total.

SELECT Total Available Time
  / Total Activity Time
public_available_time_ratio

Average Agent Score

Average score from reviews that agents provided for their engagements.

SELECT AVG(Agent Score)
public_average_agent_score

Average Auto Score

The average score received by automatic reviews.

SELECT AVG(Auto Score)
public_average_auto_score

Average Capped Conformance per Agent, Day

Conformance averaged per agent per day.

# Average of conformance that gives an idea of individual performance on agent and daily basis
SELECT AVG(
  # Capped conformance that cannot go over 100%
  SELECT Conformance Capped to Scheduled Time 
    # Average by agent by date, so weekly conformance would calculate it as average of days
    # rather than using total time in activity and scheduled time of the entire week
    BY Agent, Interval Date ⏵ day)
public_average_capped_conformance_per_agent_day

Average Conformance per Agent, Activity, Day

Conformance averaged by agent activity and day.

SELECT AVG(
  SELECT Conformance
    BY Agent, 
      {label/agent_activity}, 
      Interval Date ⏵ day)
public_average_conformance_per_agent_per_month

Average Conformance per Agent, Day

Conformance averaged per agent per day.

SELECT AVG(
  SELECTConformance 
    BY Agent, Interval Date ⏵ day)
public_average_conformance_per_agent_day

Average Conformance per Agent, Week

Conformance averaged per agent per week.

SELECT AVG(
  SELECTConformance 
    BY Agent,  Interval Date ⏵ week)
public_average_conformance_per_agent_week

Average Conversation Start to Engagement End

Average time from conversation start to engagement end rounded to minutes because date dimensions do not support second level accuracy.

SELECT AVG(Conversation Start to Engagement End)
public_average_conversation_start_to_engagement_end

Average Conversation Start to Engagement Start

Average time from conversation start to engagement start rounded to minutes because date dimensions do not support second level accuracy.

SELECT AVG(Conversation Start to Engagement End)
public_average_conversation_start_to_engagement_start

Average Customer Score

Average review score received from all customers.

SELECT AVG(Customer Score) 
  WHERE Review ⏵ State IN ("Completed")
public_average_customer_score

Average Customer Score - Last 30 Days

SELECT Average Customer Score 
  WHERE Start Time ⏵ day > THIS(DAY, -30)
    AND Start Time ⏵ day <= THIS(DAY)
public_average_customer_score_last_30_days

Average Empathy

SELECT AVG(Empathy)
public_average_empathy

Average Engagement Time

Average time agents spends engaged to the customer. This is from the moment when agent accepted invitation to join the conversation until the moment the agent moved to wrap up phase or completed the engagement.

SELECT AVG(Engagement ⏵ Engagement Time)
public_average_engagement_time

Average Engagement Time per Conversation

Average engagement time required for a single conversation. If multiple agents are engaged in the conversation at the same time this time is counted also multiple times. This metric tries to attribute time spent by all agents on the conversation.

SELECT AVG(
  SELECT Total Engagement Time 
    BY Engagement ⏵ Conversation)
public_average_engagement_time_per_conversation

Average Engagement Time per Customer

Average time agents were engaged with the customer.

SELECT AVG(
  SELECT Total Engagement Time 
    BY Customer)
public_average_engagement_time_per_customer

Average Engagement Time without Agent

SELECT Average Engagement Time 
  BY ALL OTHER
public_average_engagement_time_without_agent

Average Engagement Time without Agent Filter

SELECT Average Engagement Time 
  WITH PARENT FILTER 
  EXCEPT Agent
public_average_engagement_time_without_agent_filter

Average Focus Time

The average time the agent was focused on the customer. Unlike the Engagement Time this attributes time when the user had the engagement actually open in the agent desktop and does not include time when the agent was focused on something else while the engagement was not yet focused. This includes time during both engagement and wrap up phase. Most data sources do not support this level of detail.

SELECT AVG(Engagement ⏵ Focus Time)
public_average_focus_time

Average Invitation Time

The average time it takes an agent to respond to an invitation to the conversation. For rejected or missed invitation this it the time it takes an agent to reject the invitation.

SELECT AVG(Engagement ⏵ Invitation Time)
public_average_invitation_time

Average Preparation Time

Average preparation time the agent spends before engagement preparing for it.

SELECT AVG(Engagement ⏵ Preparation Time)
public_average_preparation_time

Average Review Delay

SELECT AVG(Review Delay)
public_average_review_delay

Average Reviewer Score

The average score received from a reviewer normalized to range 0 to 100%.

SELECT AVG(Reviewer Score)
public_average_reviewer_score

Average Schedule Adherence per Agent, Day

Average schedule adherence averaged by agent and day. This metric is average of individual agent daily performance.

SELECT AVG(
  SELECT Schedule Adherence
    # Average by agent and date
    BY Agent, Interval Date ⏵ day)
public_average_schedule_adherence_per_agent_day

Average Scheduled Time per Agent

The average scheduled time an agent is scheduled for activities.

SELECT AVG(
  SELECTTotal Scheduled Time
    BY Agent)
public_average_scheduled_time_per_agent

Average Score

The average score of all reviews that are completed.

SELECT AVG(Review ⏵ Score)
  WHERE Review ⏵ State IN ("Completed")
public_average_score

Average Wait Time

Average wait time before a customer is connected to an agent or leaves the queue.

SELECT AVG(Engagement ⏵ Wait Time)
public_average_wait_time

Average Wait Time 🜄 Previous Time Period

SELECT Average Wait Time
  FOR PREVIOUSPERIOD(Start Time ⏵ day)
public_average_wait_time_previous_time_period

Average Wrap Up Time

Average time it takes agents to wrap up an engagement. This includes work such as filling information about the engagement into a CRM or create followups.

SELECT AVG(Engagement ⏵ Wrap Up Time)
public_average_wrap_up_time

Completed Agent Engagements

Number of agent engagements that were completed.

SELECT COUNT(Engagement) 
  WHERE Engagement ⏵ Type IN ("Agent")
    AND Engagement ⏵ State IN ("Completed")  
public_completed_agent_engagements

Completed Agent Reviews

The number of reviews that the agent provided.

SELECT COUNT(Review) 
  WHERE Review ⏵ Type IN ("Agent")
    AND Review ⏵ State IN ("Completed")
public_completed_agent_reviews

Completed Auto Reviews

The number of reviews that customer provided by the AI.

SELECT COUNT(Review) 
  WHERE Review ⏵ Type IN ("Auto")
    AND Review ⏵ State IN ("Completed")
public_completed_auto_reviews

Completed Customer Reviews

The number of reviews that customer provided responses to.

SELECT COUNT(Review) 
  WHERE Review ⏵ Type IN ("Customer")
    AND Review ⏵ State IN ("Completed")
public_completed_customer_reviews

Completed Queue Engagements

Number of queue engagements that were completed.

SELECT Queue Engagements
  WHERE Engagement ⏵ State IN ("Completed")
public_completed_queue_engagements

Completed Reviewer Reviews

Number of completed reviews by the reviewer.

SELECT COUNT(Review) 
  WHERE Review ⏵ Type IN ("Reviewer")
    AND Review ⏵ State IN ("Completed")
public_completed_reviewer_reviews

Completed Reviews

Number of reviews of all types that are completed. Results from this reviews can be used for the reporting.

SELECT COUNT(Review) 
  WHERE Review ⏵ State IN ("Completed")
public_completed_reviews

Conformance

Conformance reports on total time spent in agent activities compared to scheduled time. This metric uses weighted average of individual activities thus spending more time in individual activities than scheduled time may offset for less then scheduled time spent in other activities. Note that agent by spending more time in an unproductive activity such as "break" may hide shorter activity time in a productive activities. For this reason use filters and/or segmentation by Agent Activity in insights and dashboards. You can also use metric Conformance Capped to Scheduled Time to mitigate this behavior.

# Total of all actual activity time of the agent (the time the agent actually spent in that activity)
SELECT Total Activity Time
# As this is weighted average by Scheduled Time we use its total actoss all activities as denominator
/ Total Scheduled Time
public_conformance

Conformance Capped to Scheduled Time

Conformance reports on total time spent in agent activities compared to scheduled time. This metric uses weighted average of individual activities but caps individual activities to their scheduled time. This prevents behavior in which spending more time than scheduled in unproductive activities such as "break" offset less time spent in productive activities.

# The actual time spent in the give activitities
SELECT SUM(
  # Choose the lower time from the total scheduled time and actual activity time
  SELECT LEAST(
      Total Scheduled Time, 
      Total Activity Time)
    # Group the individual activities to cap each individually
    BY {label/agent_activity})
# Total time scheduled actoss all activities as denominator in the weighted average
/ Total Scheduled Time
public_conformance_capped_to_scheduled_time

Conformance Unavailable Capped to Scheduled Time

Conformance reports on total time spent in agent activities compared to scheduled time. This metric uses weighted average of individual activities but caps individual activities to their scheduled time. This prevents behavior in which spending more time than scheduled in unproductive activities such as "break" offset less time spent in productive activities.

# The actual time spent in the give activitities
SELECT (
  # First sum all unavailable time
  SELECT SUM(
  # Choose the lower time from the total scheduled time and actual activity time
    SELECT LEAST(
      Total Scheduled Time, 
      Total Activity Time)
      # Group the individual activities to cap each individually
      BY {label/agent_activity} 
      WHERE {label/availability} IN ("Unavailable"))
    # Then add all activity time in available activities
    + (SELECT 
        Total Activity Time 
        WHERE {label/availability} IN ("Available")))
# Total time scheduled actoss all activities as denominator in the weighted average
/ Total Scheduled Time
public_conformance_unavailable_capped_to_scheduled_time

Conformance for Available Activities

Conformance reports on total time spent in agent activities compared to scheduled time. This metric uses weighted average of individual activities thus spending more time in individual activities than scheduled time may offset for less then scheduled time spent in other activities. Note that agent by spending more time in an unproductive activity such as "break" may hide shorter activity time in a productive activities. For this reason use filters and/or segmentation by Agent Activity in insights and dashboards. You can also use metric Conformance Capped to Scheduled Time to mitigate this behavior.

# Total of all actual activity time of the agent (the time the agent actually spent in that activity)
SELECT Total Activity Time
  # As this is weighted average by Scheduled Time we use its total actoss all activities as denominator
  / Total Scheduled Time
  # This prevents the unavailable activities from offsetting time spent in available activities
  WHERE {label/availability} IN ("Available")
public_conformance_for_available_activities

Constant 100%

Convenience constant metric equal to 100%. You can use this number as a target in insights and dashboards.

SELECT 1
public_constant_100_percent

Conversation Start to Engagement End

The time from conversation start to engagement start.

SELECT DATETIME_DIFF(
  Conversation Start Time ⏵ minute, 
  End Time ⏵ minute)
  # Recalculate to seconds to have the same units as other metrics
    * 60;
public_conversation_start_to_engagement_end

Conversation Start to Engagement Start

The time from conversation start to engagement start.

SELECT DATETIME_DIFF(
  Conversation Start Time ⏵ minute, 
  Start Time ⏵ minute)
  # Recalculate to seconds to have the same units as other metrics
    * 60;
public_conversation_start_to_engagement_start

Conversations

Total number of conversations. When reporting on conversations make sure you understand that any conversation that have at least one engagement matching a filtering criteria or belonging to a given segment is counted. If you have one conversation with 2 engagements each starting at a different date the conversation will get reported in both days.

SELECT COUNT(Engagement ⏵ Conversation) 
  WHERE Engagement ⏵ Type IN ("Agent")
public_conversations

Conversations per Agent per Day

Total number of conversations. When reporting on conversations make sure you understand that any conversation that have at least one engagement matching a filtering criteria or belonging to a given segment is counted. If you have one conversation with 2 engagements each starting at a different date the conversation will get reported in both days.

SELECT AVG(
  SELECT Conversations 
    BY Agent, Conversation Start Time ⏵ day)
public_conversations_per_agent_per_day

Conversations per Agent per Hour

Total number of conversations. When reporting on conversations make sure you understand that any conversation that have at least one engagement matching a filtering criteria or belonging to a given segment is counted. If you have one conversation with 2 engagements each starting at a different date the conversation will get reported in both days.

SELECT AVG(
  SELECT Conversations 
    BY Agent,  Conversation Start Time ⏵ hour)
public_conversations_per_agent_per_hour

Conversations with Review

Number of conversations that have a any completed review.

# Count engagements and make sure multiple reviews of the engagement only count as one
SELECT COUNT(Engagement ⏵ Conversation, Review)
  # Only in agent engagements, if there was just waiting in the queue or similar experience, we do not care
  WHERE Engagement ⏵ Type IN ("Agent") 
    # Include only completed engagements as in progress may still have chnages in the future
    AND Engagement ⏵ State IN ("Completed")
    # Include only completed, so if there is just a request for review and customer has not (yet) responded it does not count
    AND Review ⏵ State IN ("Completed")
public_conversations_with_review

Conversations with Review %

SELECT Conversations with Review /
  Conversations
public_conversations_with_review_percent

Corrupted Engagements

Total number of corrupted engagements. These are engagements where the original data source provided incomplete or unexpected information about the engagement and it is impossible to represent the metrics with confidence.

SELECT Engagements
  WHERE Engagement ⏵ State = "Corrupted"
public_corrupted_engagements

Customer Review Coverage FIX

SELECT Completed Customer Reviews 
  / Started Conversations
public_customer_review_coverage

Customer Review Response Rate

The percentage of customer reviews that got a response from the customer out of total number of requested.

SELECT Completed Customer Reviews 
  / Requested Customer Reviews
public_customer_review_response_rate

Customer Score

The score that is received from the customer normalized to percentages in range from 0 to 100%.

SELECT Review ⏵ Score
  WHERE Review ⏵ Type = "Customer"
public_customer_score

Customers

The total number of customers.

SELECT COUNT(Customer)
public_customers

Customers Left

Number of queue engagements in which the customer has left before being moved to another queue or an agent started to engage with them.

SELECT Queue Engagements 
  WHERE Engagement Outcome ⏵ Name IN ("Customer Left")
public_customers_left

Customers Left %

Percentage of queues in which customer left before transfer to another queue or starting to talk to agents.

SELECT Customers Left 
/ Completed Queue Engagements
public_customers_left_percentage

Customers Left % 🜄 Previous Time Period

SELECT Customers Left %
  FOR PREVIOUS(Start Time ⏵ day)
public_customers_left_percentage_previous_time_period

Customers Left 🜄 Previous Time Period

SELECT Customers Left 
  FOR PREVIOUS(Start Time ⏵ day) 
public_customers_left_previous_time_period

DEPRECATED Engagements Tagged as Reviewed

Number of engagements that have at least one tag "Reviewed".

SELECT COUNT(Engagement)
  # Making sure that we include only completed reviews
  WHERE Review ⏵ State IN ("Completed")
    # PID for Questions "Reviewed" that is used to tag reviewed engagements
    AND Question IN ("24bc8f9c-f340-4a41-8e77-9d364384f0ac")
  # We ignore Question level filters as this metric explicitly focused on "Reviewed" tag
  WITH PARENT FILTER EXCEPT Question
public_engagements_tagged_as_reviewed

Difference Between Agent and Review Score

SELECT ( Average Agent Score - 
  X Average Review Score)
  # we do not use percentage formating but percentage points so we multiply this to get from 0 to 1 range to 0 to 100 range
  * 100 
public_difference_between_agent_and_review_score

Difference Between Agent and Robot Score

SELECT ( Average Agent Score - 
  X Average Auto Score)
  * 100 # we do not use percentage formating but percentage points so we multiply this to get from 0 to 1 range to 0 to 100 range
public_difference_between_agent_and_robot_score

Difference Between Customer and Agent Score

SELECT (Average Customer Score - 
  Average Agent Score)
  * 100 # we do not use percentage formating but percentage points so we multiply this to get from 0 to 1 range to 0 to 100 range
public_difference_between_customer_and_agent_score

Difference Between Customer and Review Score

SELECT (Average Customer Score - 
  X Average Review Score)
  * 100 # we do not use percentage formating but percentage points so we multiply this to get from 0 to 1 range to 0 to 100 range
public_difference_between_customer_and_review_score

Difference Between Customer and Robot Score

SELECT (Average Customer Score - 
  X Average Auto Score)
  * 100 # we do not use percentage formating but percentage points so we multiply this to get from 0 to 1 range to 0 to 100 range
public_difference_between_customer_and_robot_score

Difference Between Review and Robot Score

SELECT (X Average Review Score - 
  X Average Auto Score)
  * 100 # we do not use percentage formating but percentage points so we multiply this to get from 0 to 1 range to 0 to 100 range
public_difference_between_review_and_robot_score

Empathy

The difference between agent and customer score associated with an engagement. The lower the value the larger difference between how agents perceive themselves and how customers perceive them.

SELECT 1 - ABS(
  SELECT Average Customer Score 
    - Average Agent Score 
    BY Engagement)
public_empathy

Engagements

Raw count of engagements. This metrics should be used for technical purposes mostly or just a building block as it does not exclude any engagements even those that are corrupted, technical and similar. It is very unlikely to see those in a single report with the rest unless for technical reasons.

SELECT COUNT(Engagement)
public_engagements

Engagements per Agent per Day

Average number of engagements per agent per day.

SELECT AVG(
  SELECT Agent Engagements 
    BY Start Time ⏵ day, Agent)
public_engagements_per_agent_per_day

Good Reviews

The number of reviews that have normalized score 100% or higher (if bonus score is allowed).

SELECT Completed Reviews
  WHERE Review ⏵ Score >= 1
public_good_reviews

Greatest Difference between Scores

SELECT GREATEST(
  ABS(Difference Between Customer and Agent Score),
  ABS(Difference Between Customer and Robot Score),
  ABS(Difference Between Customer and Review Score),
  ABS(Difference Between Agent and Robot Score),
  ABS(Difference Between Agent and Review Score),
  ABS(Difference Between Review and Robot Score))
public_greatest_difference_between_scores

Handling Time

Handling time is a time agent uses on their side to engage in a conversation. It represents the effort invested by the agent expressed in time.

SELECT IFNULL(Engagement ⏵ Preparation Time, 0) 
+ IFNULL(Engagement ⏵ Engagement Time, 0)
+ IFNULL(Engagement ⏵ Wrap Up Time, 0)
public_handling_time

In Adherence Time

SELECT LEAST(Scheduled Time, {fact/activitytime})
  WHERE Activity ⏵ Type IN ("Agent Activity") # todo remove this condition after clean up
public_in_adherence_time

Max Engagement Time

Longest engagement time.

SELECT MAX(Engagement ⏵ Engagement Time)
public_max_engagement_time

Max Focus Time

The maximum time the agent was focused on the customer. Unlike the Engagement Time this attributes time when the user had the engagement actually open in the agent desktop and does not include time when the agent was focused on something else while the engagement was not yet focused. This includes time during both engagement and wrap up phase. Most data sources do not support this level of detail.

SELECT MAX(Engagement ⏵ Focus Time)
public_max_focus_time

Max Invitation Time

The longest time it took an agent to accept, reject or miss an invitation to a conversation. You can filter by engagement status attribute to focus on accepted, rejected or missed invitations.

SELECT MAX(Engagement ⏵ Invitation Time)
public_max_invitation_time

Max Preparation Time

Average preparation time the agent spends before engagement preparing for it.

SELECT MAX(Engagement ⏵ Preparation Time)
public_max_preparation_time

Max Wait Time

Longest time a customer waited for connection with an agent.

SELECT MAX(Engagement ⏵ Wait Time)
public_max_wait_time

Max Wrap Up Time

Longest time an agent spent in a wrap up phase.

SELECT MAX(Engagement ⏵ Wrap Up Time)
public_max_wrap_up_time

Median Engagement Time

Median time agents spends engaged to the customer. This is from the moment when agent accepted invitation to join the conversation until the moment the agent moved to wrap up phase or completed the engagement.

SELECT AVG(Engagement ⏵ Engagement Time)
public_median_engagement_time

Median Invitation Time

The median time it takes an agent to respond to an invitation to the conversation. For rejected or missed invitation this it the time it takes an agent to reject the invitation.

SELECT MEDIAN(Engagement ⏵ Invitation Time)
public_median_invitation_time

Median Wrap Up Time

Median time it takes agents to wrap up an engagement. This includes work such as filling information about the engagement into a CRM or create followups.

SELECT AVG(Engagement ⏵ Wrap Up Time)
public_median_wrap_up_time

Mixed Reviews

The number of reviews that have normalized score higher than 0% but lower than 100%.

SELECT Completed Reviews
  WHERE Review ⏵ Score > 0 AND Review ⏵ Score < 1
public_mixed_reviews

Order of Engagement in Conversation

The order of engagement in a conversation ranked by start time of the engagement.

SELECT RANK(Engagement ⏵ Time) WITHIN(Engagement ⏵ Conversation)
public_order_of_engagement_in_conversation

Out of Adherence Time

The time the agent was out of adherence in a single time interval for a single activity.

SELECT GREATEST(Scheduled Time - {fact/activitytime}, 0)
public_out_of_adherence_time

Pending Reviews

The number of reviews that are still pending. A customer or a user was asked to provide the review but there is no response yet.

SELECT COUNT(Review) 
  WHERE Review ⏵ State IN ("Pending")
public_pending_reviews

Poor Reviews

The number of reviews that have normalized score 0% or lower (if negative score is allowed).

SELECT Completed Reviews
  WHERE Review ⏵ Score <= 0
public_poor_reviews

Queue Engagements

SELECT COUNT(Engagement)
  WHERE Engagement ⏵ Type = "Queue"
public_queue_engagements

Queue Engagements Completed

The number of completed queue engagements.

SELECT Queue Engagements
 WHERE Engagement ⏵ State = "Completed"
public_queue_engagements_completed

Queue Engagements Ignored in SLA

Number of queue engagements that should be excluded from SLA calculation. These are often engagements that were too short and customer left before the company had any realistic chance of handling them properly.

SELECT Queue Engagements
  WHERE Engagement ⏵ Service Level IN ("Ignore")
public_queue_engagements_ignored_in_sla

Queue Engagements by Date

SELECT AVG(
  SELECT Queue Engagements 
    BY Start Time ⏵ day)
public_queue_engagements_by_date

Queue Engagements in Progress

Number of queue engagements that were in progress during the last load of data.

SELECT Queue Engagements
  WHERE Engagement ⏵ State IN ("In Progress")
public_queue_engagements_in_progress

Queue Engagements out of SLA

The number of queue engagements that are not handled within the targets for service level.

SELECT Queue Engagements
  WHERE Engagement ⏵ Service Level IN ("Out of SLA")
public_queue_engagements_out_of_sla

Queue Engagements within SLA

Number of completed queue engagements that were handled within the target service level.

SELECT Queue Engagements
  WHERE Engagement ⏵ Service Level IN ("Within SLA")
public_queue_engagements_within_sla

Queue Engagements 🜄 Previous Time Period

SELECT Queue Engagements 
  FOR PREVIOUS(Start Time ⏵ day)
public_queue_engagements_previous_time_period

Queue Service Level

Percentage of completed queue engagements that were handled within the target service level.

SELECT Queue Engagements within SLA /
   Completed Queue Engagements
public_queue_service_level

Queue Service Level 🜄 Previous Time Period

SELECT Queue Service Level
  FOR PREVIOUS(Start Time ⏵ day)
public_queue_service_level_previous_time_period

Rank in Engagement Time

SELECT RANK(Engagement ⏵ Engagement Time)
public_rank_in_engagement_time

Rejected Invitations

SELECT COUNT(Engagement)
  WHERE Engagement ⏵ Type IN ("Invitation")
    AND Engagement Outcome ⏵ Outcome IN ("Rejected")
public_rejected_invitations

Requested Customer Reviews

Total number of reviews that were requested from the customer. Includes reviews that were completed but also those that are still pending, were ignored or rejected.

SELECT COUNT(Review)
  WHERE Review ⏵ Type IN ("Customer")
public_requested_customer_reviews

Review Coverage

SELECT Completed Reviews / Started Conversations
public_review_coverage

Review Delay

SELECT DATETIME_DIFF(
  End Time ⏵ minute, 
  Review Time ⏵ minute) 
  * 60 # So we have time in seconds as we have all duration times
public_review_delay

Reviewer Score

Score for a single review received from a reviewer. Normalized to 0 to 100%.

SELECT Review ⏵ Score 
  WHERE Review ⏵ Type IN ("Reviewer")
public_reviewer_score

Schedule Adherence

SELECT Total In Adherence Time 
/ Total Scheduled Time
public_schedule_adherence

Started Agent Engagements per Hour

SELECT AVG(
  SELECT Agent Engagements 
    BY Start Time ⏵ hour) 
public_started_agent_engagements_per_hour

Started Conversations 2

SELECT Agent Engagements 
  WHERE Engagement ⏵ Time = (SELECT MIN(Engagement ⏵ Time) 
      BY Engagement ⏵ Conversation ALL OTHER)
public_started_conversations

Started Conversations per Agent

SELECT AVG(
  SELECT Started Conversations 
    BYAgent)
public_started_conversations_per_agent

Started Conversations per Agent, Day

SELECT AVG(
  SELECT Started Conversations 
    BY Start Time ⏵ day, Agent)
public_started_conversations_per_agent_day

Started Conversations per Agent, Hour

SELECT AVG(
  SELECT Started Conversations 
    BY Start Time ⏵ hour, Agent)
public_started_conversations_per_agent_hour

Started Conversations per Hour

The number of conversations that were started per hour.

SELECT AVG(
  SELECT Started Conversations 
    BY Start Time ⏵ hour)
public_started_conversations_per_hour

Tags

SELECT COUNT(Review) 
  WHERE Review ⏵ State IN ("Completed")
    AND Review Answer ⏵ Answer IN ("f3a5cbc7-cea1-4dfe-b90b-e992c36e585d")
public_tags

Technical - Max Scheduled Time

SELECT MAX(SELECT Total Scheduled Time BY Agent)
public_technical_max_scheduled_time

Technical - Unknown Engagements

SELECT COUNT(Engagement)
  WHERE Engagement ⏵ Type IN ("Unknown")
public_technical_unknown_engagements

Total Activity Time

Total time agent actually spent in a given activity.

# TODO Remove filter - now because of schedule still being in data
SELECT SUM({fact/activitytime}) 
  WHERE Activity ⏵ Type IN ("Agent Activity")
public_total_activity_time

Total Available Time

Total time the agent was in any agent activity that is considered that the agent is available.

SELECT Total Activity Time
  WHERE {label/availability} IN ("Available")
public_total_available_time

Total Engagement Time

Total time spent engaged to the customer. If an agent is engaged to multiple customers at one time this metric counts that time multiple times.

SELECT SUM(Engagement ⏵ Engagement Time)
public_total_engagement_time

Total Engagement Time by Agent by Day

The average total engagement time per agent per day. This metric is useful to measure how close the agents are to an expected time spent with the customer

SELECT AVG(
  SELECT Total Engagement Time 
    BY Agent, Start Time ⏵ day)
public_total_engagement_time_by_agent_by_day

Total Focus Time

The total time the agent was focused on the customer. Unlike the Engagement Time this attributes time when the user had the engagement actually open in the agent desktop and does not include time when the agent was focused on something else while the engagement was not yet focused. This includes time during both engagement and wrap up phase. Most data sources do not support this level of detail.

SELECT SUM(Engagement ⏵ Focus Time)
public_total_focus_time

Total In Adherence Time

Total time in schedule adherence based on individual 15 minute intervals.

SELECT SUM(In Adherence Time)
public_total_in_adherence_time

Total Negative Transactions Revenue

Total of all negative revenue from all the transactions. This metric focuses specifically on transactions that had a negative financial impact such as refunds.

SELECT Total Transactions Revenue
  WHERE Transaction ⏵ Revenue < 0
public_total_negative_transactions_revenue

Total Out of Adherence Time

Total time out of adherence based on individual 15 minute intervals.

SELECT SUM(Out of Adherence Time)
public_total_out_of_adherence_time

Total Positive Transactions Revenue

Total of all positive revenue from all the transactions. This metric excludes all negative revenue such as refunds, charge backs, etc.

SELECT Total Transactions Revenue
  WHERE Transaction ⏵ Revenue > 0
public_total_positive_transactions_revenue

Total Revenue

The total revenue from all transactions.

SELECT SUM(Transaction ⏵ Revenue)
public_total_revenue

Total Scheduled Time

Total time scheduled for agents to spend in a given activity.

SELECT SUM(Scheduled Time) 
public_total_scheduled_time

Total Transaction Goods Volume

Total volume of goods included in the transactions.

SELECT SUM(Transaction ⏵ Volume)
public_total_transaction_goods_volume

Total Transactions Cost

Total cost of goods reported in the transactions.

SELECT SUM(Transaction ⏵ Cost)
public_total_cost

Total Transactions Discount

Total value of discounts provided in the reported transactions.

SELECT Total Transactions Price 
- Total Revenue
public_total_transactions_discount

Total Transactions Price

Total (standard) price of items involved in the reported transactions.

SELECT SUM(Transaction ⏵ Price)
public_total_transactions_price

Total Transactions Profit

Total profit generated in all reported transactions.

SELECT SUM(Transaction Profit)
public_total_transactions_profit

Total Transactions Revenue

Total revenue generated by the reported transactio

SELECT SUM(Transaction ⏵ Revenue)
public_total_transactions_revenue

Total Unavailable Time

Total time the agent was in any agent activity that is considered that the agent is not available..

SELECT Total Activity Time
  WHERE {label/availability} IN ("Unavailable")
public_total_unavailable_time

Total Wrap Up Time

SELECT SUM(Engagement ⏵ Wrap Up Time)
public_total_wrap_up_time

Transaction Discount

Transaction discount is calculated as the (standard) price minus the actual transaction revenue.

SELECT Transaction ⏵ Price - Transaction ⏵ Revenue
public_transaction_discount

Transaction Profit

The profit of a transaction calculated as a revenue generated minus associated costs.

SELECT Transaction ⏵ Revenue - Transaction ⏵ Cost
public_transaction_profit

Transactions

Total number of transactions associated with engagements. Transactions are operations that happened during the engagements and may or may not have financial implications. A transaction can be a sold product, refund of an existing product, change of state of an order, support request for a specific product and similar.

SELECT COUNT(Transaction)
public_transactions

Unavailable Time %

The percentage of not available time out of total.

SELECT Total Unavailable Time
  / Total Activity Time
public_unavailable_time_ratio

User Engagements

Total number of engagements with users - agents that are people. This metric excludes engagements with bots and other services.

SELECT COUNT(Engagement) 
  WHERE Engagement ⏵ Type = "Agent"
    AND Agent ⏵ Type = "User"
public_user_engagements

View

Metric useful for sorting the engagements and having click through to detailed customer journey. This metric does not show the actual number. It shows a constant text "View" that encourages users to click on it when viewing customer journey.

SELECT MAX(Engagement ⏵ Time)
public_view

View - Engagements With Review

Metric useful for sorting the engagements and having click through to detailed customer journey. This metric does not show the actual number. It shows a constant text "View" that encourages users to click on it when viewing customer journey.

SELECT MAX(Engagement ⏵ Time)
  WHERE (SELECT Completed Reviews 
    BY Engagement) >= 1
public_view_engagements_with_review

View - Engagements Without Reviews

Metric useful for sorting the engagements and having click through to detailed customer journey. This metric does not show the actual number. It shows a constant text "View" that encourages users to click on it when viewing customer journey.

SELECT MAX(Engagement ⏵ Time)
  WHERE IFNULL(
    SELECT Agent Engagements with Review 
      BY Engagement, 0) = 0
public_view_engagements_without_reviews

View - Engagements with Named Turns

Metric useful for sorting the engagements and having click through to detailed customer journey. This metric does not show the actual number. It shows a constant text "View" that encourages users to click on it when viewing customer journey.

# Enables use for sorting by Engagement start time
SELECT MAX(Engagement ⏵ Time)
  # Include only engagements that have at least one named turn
  WHERE (SELECT DEMO Named Turns 
    # Number of turns is individually calculated for every engagement
    BY Engagement) >= 1
public_view_engagements_with_named_turns
Did this answer your question?