Reports

The Reports module gives you visibility into two critical areas of your business: revenue performance and team time allocation. Reports are generated live from the database — they always reflect the current state of your data with no caching delays.


Accessing Reports

Navigate to Reports in the left sidebar. You will see two main report types:

Report Purpose
Revenue Report Shows invoiced amounts, payments received, and outstanding balances
Time Logs Report Shows hours logged by employee, project, and task

Revenue Report

The revenue report gives you a financial summary for any date range you choose. Use it to understand cash flow, outstanding debt, and billing activity.

How to run the revenue report

  1. Go to Reports → Revenue.
  2. Set the Date Range:
    • Use the date pickers to set a custom from/to range, or
    • Use the presets: This Month, Last Month, This Quarter, This Year
  3. Click Generate Report.

Report output

Metric Description
Total Invoiced Sum of all invoice subtotals issued in the date range
Total Paid Sum of subtotals for invoices marked paid in the date range
Outstanding Total Invoiced minus Total Paid
Overdue Sum of subtotals for invoices currently in overdue status
Invoice Count Number of invoices issued in the period
Average Invoice Value Total Invoiced divided by Invoice Count

Below the summary metrics, a line-item table shows every invoice in the period:

Column Description
Invoice # Invoice number
Client Client name
Issued Issue date
Due Due date
Amount Subtotal
Status draft, sent, paid, overdue

Filtering the revenue report

Filter Options
Date range Custom or preset
Client Filter to a single client
Status All, Paid only, Outstanding only, Overdue only

Time Logs Report

The time logs report shows how many hours your team has logged, broken down by employee and project. Use it for billing reconciliation, capacity planning, and performance reviews.

How to run the time logs report

  1. Go to Reports → Time Logs.
  2. Set the filters:
Filter Options
Date Range Custom from/to, or presets: This Week, Last Week, This Month, Last Month
Employee All employees, or select a specific team member
Project All projects, or filter to a single project
  1. Click Generate Report.

Report output — Summary

Metric Description
Total Hours Sum of all hours in the filtered period
Billable Hours Hours logged against billable tasks (if task billing type is set)
Employees Active Count of distinct employees who logged time

Report output — Employee breakdown

A table showing hours per employee:

Column Description
Employee Name of the team member
Total Hours Hours logged in the filtered period
Projects Number of distinct projects worked on

Report output — Project breakdown

A table showing hours per project:

Column Description
Project Project name
Client Client name
Total Hours Hours logged against this project in the period
Employees Number of distinct employees who logged time

Below the tables, a detailed log list shows every individual time entry: employee, date, task, hours, and note.


Exporting to CSV

Both reports can be exported to CSV for further analysis in a spreadsheet tool.

  1. Run the report with your desired filters.
  2. Click Export CSV in the top-right of the report page.
  3. A CSV file downloads to your browser's download folder.

What the CSV includes

Revenue CSV columns:

invoice_number, client_name, issue_date, due_date, subtotal, status, paid_date

Time Logs CSV columns:

employee_name, project_name, task_title, log_date, hours, note
💡
Use CSV for client billing reports

If you bill clients for time and materials, export the time logs filtered to that client's project and share the CSV (or a formatted version) as a billing appendix with your invoice.


Interpreting the Data

Revenue report

  • Outstanding is not necessarily a problem — invoices that are sent but not yet due will appear here. Focus on Overdue as the metric that needs action.
  • Total Invoiced includes draft invoices by default. Filter to sent + paid + overdue status for a more accurate view of active billing.
  • Month-over-month comparisons are most useful when using the Last Month and This Month presets consistently.

Time logs report

  • High hours with low progress on tasks may indicate estimation problems rather than productivity issues.
  • If an employee shows zero hours in a period, check whether they forgot to log — the absence of logged time is not the same as the absence of work.
  • Per-project hour totals are most useful when compared against the estimated hours in the original proposal.

Limitations

⚠️
Live data — no historical snapshots

Reports are generated live from the current state of the database. If an invoice is edited or deleted after you viewed a previous report, the numbers will differ the next time you run it. There is no snapshot or period-lock feature — the report always reflects the data as it stands today.

ℹ️
No tax reporting

The reports module does not calculate or report VAT, GST, or other taxes. All amounts shown are the raw subtotals from invoices. For tax reporting, export the CSV and process it in your accounting software.

ℹ️
Date filter applies to creation/issue date

The revenue report filters by the invoice issue date, not the payment date. An invoice issued in January but paid in February will appear in January's report. Keep this in mind when reconciling against bank statements.