Time Anchor (also known as "fact date") is the timestamp used to determine where the value of a particular metric aggregate.
Each report in Gladly is attached to a specific Time Anchor, which guides each report's data output. When you begin to analyze different reports, it's important to know which Time Anchor a report is using as each report's output will be different.
How Time Anchor works
Let's say you run a report that query data between 1 PM and 2 PM.
For things like individual events that only happen at one point in time, finding the right set of data is pretty straightforward—did the event happen in that period of time?
For things like Contacts and Conversations, which have a “state” (e.g., Queued, Fulfilled, and End state), it’s imperative to know which event/time it’s anchored to. This determines the set of data you’re considering for analysis.
Let's use the Inbound Contacts report, which uses Queued as the Time Anchor. The report would then consider these Contacts:
The Abandoned Contacts report uses Ended as the Time Anchor. The report would consider these Contacts:
You can see how it wouldn’t make sense to conclude comparing (i.e., creating an average) information from the two reports that use two different Time Anchors because you would be analyzing different sets of data.
On the other hand, if both reports were anchored to the same event, you would be able to make comparisons and draw conclusions from the same set of data.
A simplified example
Here’s a simplified example. Let’s assume we compare the 2 reports mentioned above, Inbound Contacts and Abandoned Contacts.
- Inbound Contacts report is anchored to Contact Queued.
- Abandoned Contacts report is anchored to Contact End.
If you tried to make a comparison between these two reports, you might reason that there are:
- 2 Inbound Contacts (Queued)
- 3 Abandoned Contacts (Ended)
3 Abandons / 2 Inbound = 150% of Contacts between 1-2pm are abandoned!
The insights are mixed up. If you’re comparing apples-to-apples, you’d either say:
- 100% of Contacts ended between 1-2 PM are abandoned
- 0% of Contacts started between 1-2 PM are abandoned
So you can see why Time Anchor is important.
Time Anchor table
Below is a master table of Time Anchors used by each report. Help docs specific to each report also specify what Time Anchor a report uses.
|Reports Name||Time Anchor||Group|
|Active Conversation Handle Time by Agent||Conversation last closed at||Agent|
|Active Conversation Handle Time by Agent by Channel||Conversation last closed at||Agent|
|Agent Performance Summary||Varies by metric||Agent|
|Contacts by Agent by Channel||Contact queued at||Agent|
|Conversation Close Time by Agent||Conversation Closed at||Agent|
|Conversation Close Time by Agent by Channel||Conversation Closed at||Agent|
|Conversation Reassignments Received by Agent||Conversation reassigned at||Agent|
|Conversation Reassignments Sent by Agent||Conversation reassigned at||Agent|
|Created and Closed Tasks by Agent||Time of event - Task created or closed||Agent|
|Customers Helped by Agent||Contact fulfilled at||Agent|
|Declined and Missed Calls by Agent||Time of event - Declined or Missed Contact||Agent|
|Declined and Missed Contacts by Agent||Time of event - Declined or Missed Contact||Agent|
|First Contact Resolution by Agent||Conversation last closed at||Agent|
|Payments by Agent||Date Payment Request||Agent|
|Task Close Time by Agent||Task closed at||Agent|
|Topic Usage by Agent||Time of event - when Topics were updated on a Conversation||Agent|
|Transferred Calls Received by Agent||Contact transferred at||Agent|
|Transferred Calls Sent by Agent||Contact transferred at||Agent|
|Task Activity by Agent||Event occurred at||Agent|
|Answer Usage||Time of event - when Answer was used||Answer|
|Answer Usage by Agent||Time of event - when Answer was used||Answer|
|Abandoned Calls in IVR||IVR started at||Contact|
|Channel Mix||Contact queued at||Contact|
|Channels in Multichannel Conversations||Conversation last closed at||Conversation|
|Customers Helped by Channel||Contact fulfilled at||Customer|
|SLA Attainment by Channel||Contact fulfilled at||Contact|
|Abandoned Calls||Contact ended at||Contact|
|Average Conversation Contacts||Conversation last closed at||Conversation|
|Conversation Close Time||Conversation Closed at||Conversation|
|Conversation Close Time by Channel||Conversation Closed at||Conversation|
|Customer Wait Time by Channel||Contact fulfilled at||Customer|
|IVR||Contact initiated at||Contact|
|Payments Summary||Date Payment Request||Payment Request|
|Reopened Conversations||Time of event - Conversation reopened||Conversation|
|Proactive Voice Summary||Voice Outreach Time||Contact|
|Topics||Varies by metric||Topic|
|Auto-Throttle Missed Conversations||Time of event||Sidekick|
|Active Conversation Handle Time by Customer||Conversation last closed at||Customer|
|Inbound Contacts by Customer||Contact queued at||Customer|
|Inbound Contacts by Customer by Channel||Contact queued at||Customer|
|Multichannel Conversation Combinations||Conversation last closed at||Conversation|
|Multichannel Conversations||Conversation last closed at||Conversation|
|Task Export (Beta)||Task created at||Task|
|Contact Export||Contact queued at||Contact|
|Conversation Data Export (Beta)||Time of event - Conversation Opened, Closed, Reopened||Conversation|
|FORECASTING AND STAFFING|
|Agent Available Time||Bucketed||Agent|
|Agent Away Time||Bucketed||Agent|
|Agent Durations||Duration Started||Agent|
|Agent Login Time||Bucketed||Agent|
|Created and Closed Conversations||Time of event - Conversation created or closed||Conversation|
|Work Sessions||Contact ended date (UI), Contact ended at (API)||Work Session|
|Agent TimeStamps||Time of event||Agent|
|Active Conversation Handle Time||Conversation last closed at||Conversation|
|Active Conversation Handle Time by Channel||Conversation last closed at||Conversation|
|Active Conversation Handle Time by Topic||Conversation last closed at||Conversation|
|Conversation Reassignments||Conversation reassigned at||Conversation|
|Costly Conversations||Conversation last closed at||Conversation|
|Created and Closed Tasks||Time of event - Task created or closed||Task|
|Customers Helped||Contact fulfilled at||Customer|
|First Contact Resolution||Conversation last closed at||Conversation|
|Inbound Contacts||Contact queued at||Contact|
|Inbound Contacts by Channel||Contact queued at||Contact|
|Operational Summary||Varies by metric||n/a|
|SLA Percentile||Contact fulfilled at||Contact|
|Task Close Time||Task closed at||Task|
|Transferred Calls||Contact transferred at||Contact|
|Contact Summary||Contact ended at||Contact|
|Chat Display % Changes||Time of event - when Throttle % is changed||n/a|
|Quick Actions Usage||Time of event - when a link is clicked||Sidekick|
|Sidekick Contact Points||Contact queued at||Contact|
|Sidekick Answer Search||Time of event - when a search happens||Sidekick|
|Sidekick Answer Usage||Time of event - when a link is clicked||Sidekick|
|Help Center Answer Search||Time of event - when a search happens||Help Center|
|Help Center Answer Usage||Time of event - when a link is clicked||Help Center|
Time Anchor definitions
In order to truly understand how Time Anchors are used to display data in the reports, it's important to know how each Time Anchor is defined.
Conversation last closed at
A Conversation that was closed-reopened-closed-reopened-closed would be anchored to the very last close event. In this example, it's considered a single close event.
Conversation Closed at
A Conversation that was closed-reopened-closed-reopened would be anchored to every close event. In this example, there are two close events.
Conversation reassigned at
When a Conversation was last reassigned.
Contact queued at
Time a Contact was queued.
Contact fulfilled at
Time a Contact was fulfilled.
Contact initiated at
Time a Contact was initiated.
Contact transferred at
Time a Contact was transferred.
Contact ended at
Time a Contact ended.
Contact ended date (UI), Contact ended at (API)
Specific to the Work Session report.
- UI - Contact ended date is the date a Contact is ended.
- API - Contact ended at is the date a Contact ended.
Event occurred at
Time when the relevant event occurred.
Time of event - when Answer was used
Time an Answer was last used.
Time of event - Conversation reopened
The time a Conversations is closed-reopened-closed-reopened would be anchored to every close event. In this example, there are two reopen events.
Time of event - Conversation created or closed
Time a Conversation was either created or closed.
- Created - When a Conversation was created during a specific time frame.
- Closed - Any time when a Conversation was closed during a specific time frame. This can happen multiple times for one Conversation.
Time of event - Task created or closed
Time a Task was either created or closed.
- Created - When a Task was created during a specific time frame.
- Closed - Any time when a Task was closed during a specific time frame. This can happen multiple times for one Task.
Time of event - Declined or Missed Contact
Time a Contact was either declined or missed.
- Declined - Any time when a Contact was declined during a specific time frame.
- Missed - Any time when a Contact was missed during a specific time frame.
Time of event - when Topics were updated on a Conversation
Time a Topic or set of Topics was added to a Conversation.
Time of event - when Throttle % is changed
Time throttle % was changed as a reaction to incoming chat volume.
Time of event - when a link is clicked
Time when a link is clicked
Time of event - when a search happens
Time a search was started/initiated.
Time of event
Time an event occurred.
Task closed at
Time a Task was closed.
Task created at
Time a Task was created
IVR started at
Time when a call entered the IVR.
Date Payment Request
Date when the card payment request was requested.
Segments of time across different "buckets" or time granularities specified using the report's rollup filter. For example, an Agent going "available" at 9:01 and then "away" at 12:15 has a reportable segment of over 3 hours. If the rollup is set to "half-hourly", one might approach the scenario one of the following ways:
- Anchor to the start of the timespan. So, the 9-9:30 granularity would say 3h 14m.
- Anchor to the end of the timespan, so the 3h 14m would be in the 12-12:30 rollup.
- Distribute the timespan to each of the "bucket" of time. This is how reports using "bucketed" as time anchors work:
- 9-9:30 - 29m
- 9:30-10 - 30m
- 10-10:30 - 30m
- 10:30-11 - 30m
- 11-11:30 - 30m
- 11:30-12 - 30m
- 12-12:30 - 15m
Voice Outreach Time
Time when a Proactive Voice recipient was updated to a complete status.