• Customer Success Team Resources are currently available in English & Spanish, and we are working on localizing them into additional languages.

    Access the Spanish resources here

Capturing Tickets' Time To First Resolution

brtan
by: HubSpot Employee
HubSpot Employee

As a Customer Success Manager at HubSpot, customers often tell me it’s important for them to understand how quickly their team closes tickets, but data on resolution times tend to get inflated when these tickets are re-opened after they have been deemed resolved. 

 

When it comes to managing tickets, measuring the time it takes to close tickets is crucial in understanding your team’s efficiency and productivity. In HubSpot, this is shown in a ticket’s Time To Close property, which measures the time between when the ticket was created and closed.

 

However, standard reporting treats a re-opened ticket as a single continuous event. Whether a customer re-opens a thread for a new issue or simply to send a "thank you," the Time to Close property recalculates based on the final timestamp.

 

The result? Your reporting could show a 3-day resolution for a ticket that actually took 10 minutes.

 

This artificially inflates resolution times, penalizes efficient agents, and prevents leadership from seeing the true "Time to First Resolution” - a crucial datapoint in data-driven decision-making.

 

What Next?

To measure the time it takes for tickets to be resolved and closed for the first time (and not be influenced by a future re-opening of the ticket), all it takes is two custom properties and one Workflow automation. 


Step 1

Create the custom ticket property Time To First Close (unformatted). It should be a Number property, with its number format as unformatted.

Time to First Close (unformatted).png

 

Step 2

Create a Workflow (video tutorial) that copies the value from the default Time To Close ticket property to your created Time To First Close (unformatted) custom property when the ticket is moved to the "Closed" status in the ticket pipeline. As the re-enrolment setting is turned off, this Workflow will trigger only when the ticket is closed for the first time, and not trigger if the ticket re-enters the closed status again in the future.Workflow.png

 

Step 3

Create the custom ticket property: Time to First Close. It should be a Calculation property with a number output type, and its number format in duration. For the formula, simply select the property you created in Step 1.

 

Time to First Close.png

 

With Step 1 and Step 2, your tickets will automatically store the time taken to close the ticket for the first time. However, the property created in Step 1 will store this value in milliseconds which isn’t the most convenient to interpret. This brings us to Step 3, which converts the value into a more appropriate format (seconds, minutes, hours, days). The below screenshot shows an example of a ticket which was first closed in 81 minutes, but was re-opened and subsequently closed again:

 

Time to close vs Time to First Close.png

 

By capturing the true “Time to First Resolution”, you strip away the noise from ticket re-opens and gain a clear view of your team's actual speed and efficiency. This crucial, data-driven insight empowers leadership to recognize efficient agents, accurately staff support channels, and make meaningful improvements to the customer experience, ensuring that every resolution is measured by its true speed, not its final closure date.

 

If you need any guidance in setting these up, do reach out to our Support Team!

 

Note: Accounting for SLA

If you wish to measure the time taken in SLA hours instead, you can: