Time Tracking
In Ascent, time is logged against individual tickets. Technicians record the minutes they spend resolving a ticket, mark it billable or non-billable, and optionally turn that time into an invoice. The Time Tracking sidebar item opens a read-only Time report that summarizes all of this logged time across your organization.
There is no global timer, weekly timesheet, or approval workflow — time entries are created and managed directly on each ticket.
Overview
Time tracking lets you:
- Log time (in minutes) against a ticket, with an optional description and date
- Mark each entry as Billable or non-billable
- See per-ticket totals for total time, billable time, and unbilled time
- Create a draft invoice directly from a ticket's uninvoiced billable time
- Review utilization and billable value across users, clients, and weeks in the Time report
Logging time on a ticket
Time entries live on the ticket itself. Open a ticket from PSA → Tickets (/tickets), then either select the Time tab or use the Add Time Entry button under Quick Actions in the sidebar.
To add an entry:
- On the Time tab, click Add Time (or use Add Time Entry from Quick Actions). The Add Time Entry dialog opens.
- Fill in the fields:
- Minutes (required) — the time spent, entered in whole minutes (for example,
30). - Description — a short note about what you worked on.
- Date — the date the work was done (defaults to today).
- Billable — toggle on to mark the time as billable (on by default).
- Minutes (required) — the time spent, entered in whole minutes (for example,
- Click Add Time to save.
The dialog does not expose an hourly rate field; entries are created without a rate set (see Billable vs non-billable for how this affects reporting).
Time entry fields
| Field | Description |
|---|---|
| Minutes | Duration of the work in minutes. Required; minimum 1. |
| Description | Optional note describing the work performed. |
| Date | When the work occurred. Defaults to the current date. |
| Billable | Whether the time can be invoiced to the client. Defaults to on. |
The display formats minutes as hours and minutes (for example, a 90-minute entry shows as 1h 30m).
Reviewing a ticket's time
The Time tab on a ticket lists every entry and shows a summary line at the top: Total, Billable, and, when applicable, Unbilled time.
Each entry row shows:
- The duration (formatted as hours and minutes)
- A Billable badge if the entry is billable
- A Billed badge once the entry has been invoiced
- The description (if provided)
- The user who logged it and the entry date
You can delete an entry that has not yet been billed using the trash icon on its row. Once an entry has been billed, the delete control is hidden, so billed entries cannot be removed. Time entries are not edited in place from this tab — to change an entry, delete it (while still unbilled) and add a new one.
Billable vs non-billable
The Billable toggle controls whether a time entry can be invoiced:
- Billable entries count toward the ticket's billable and unbilled totals and can be turned into invoice line items.
- Non-billable entries are recorded for reporting but are never invoiced.
Each entry also carries an optional hourly rate, which the Time report multiplies by the logged hours to calculate billable value. The Add Time Entry dialog does not include a rate field, so entries logged this way have no rate and are counted as zero billable value in the Time report.
Creating an invoice from billable time
When a ticket has uninvoiced billable time, the Time tab shows a Create Invoice button. Clicking it opens the Create Invoice from Billable Time dialog, which shows how much unbilled time is available and lets you choose how line items are grouped:
| Grouping | Result |
|---|---|
| By Ticket | One line item for this ticket. |
| Individual Entries | A separate line item for each time entry. |
| Summary | A single line item for all the time. |
The invoice is created as a draft so you can review and edit it before sending. Once time is invoiced, those entries are marked Billed and can no longer be deleted from the ticket. For more on what happens next, see Invoices and the Billing overview.
The Time report
The Time Tracking sidebar item under PSA (/time) opens the Time report — the same report also reachable from Reports → Time (/reports/time). It is read-only analytics; you cannot create or edit time entries here. The Time Tracking sidebar link is shown only to users with read access to ticket time (ticket_time).
Period selector
Use the period dropdown to change the reporting window:
| Option | Range |
|---|---|
| Last 7 days | Trailing 7 days |
| Last 30 days | Trailing 30 days (default) |
| Last 90 days | Trailing 90 days |
| Last 12 months | Trailing 12 months |
Summary cards
The top of the report shows four cards for the selected period:
| Card | Shows |
|---|---|
| Total Hours | All hours logged in the period. |
| Billable Hours | Billable hours, with non-billable hours noted underneath. |
| Billable Rate | Billable hours as a percentage of total (utilization). |
| Billable Value | Total billable value, with the average hourly rate noted underneath. |
Breakdowns
Below the cards, the report breaks time down several ways:
- Time by Category — split between Billable and Non-billable work.
- Weekly Trend — total and billable hours per week over the period.
- Time by User — total hours, billable hours, utilization, and billable value per team member.
- Time by Client — total hours, billable hours, billable value, and share of total per client.
The page includes an Export button in the header. Note that in the current release the export action is not yet wired to produce a file.
Tips
- Log time as you work. Entries are tied to tickets, so add time from the ticket you're actively resolving.
- Set the billable flag correctly. Only billable, uninvoiced time can be turned into an invoice, and it drives the utilization and billable-value figures in the Time report.
- Invoice before you clean up. Once an entry is billed, it's locked — you can no longer delete it from the ticket.
- Use the period filter in the Time report to compare utilization across different windows.