Business Tips
How to Export Billable Hours Before Tax Season Without Rebuilding Excel
Billable hours become a tax-season problem when the only copy of the year lives in your head, a pile of PDFs, and a spreadsheet you swore you would keep updated in February. An accountant cannot file from vibes. A bookkeeper cannot reconstruct which client owned March from your GitHub green squares.
This is not tax or legal advice. If you invoice in Quebec, the rest of Canada, or as a U.S. 1099 contractor, talk to a professional about GST/QST, sales tax, and income reporting. What follows is an export habit: get a year of time out of your tracker in a file someone else can sort, before the calendar turns into a dare.
Tax prep wants a table, not a memory. Invoices are for clients. Exports are for the people who have to add the year up. Run reports on a schedule. Download CSV, Excel, or JSON while you still remember what the columns mean.
Why March archaeology is so expensive
Freelancers delay the export because the week already had an invoice. The PDF looks finished. Then April asks different questions: How much did this client represent of the year? Which months were retainers vs projects? What was billable versus the internal time you tracked so quotes would get less stupid?
Those questions are painful if you have to open 40 PDFs and retype line items. They are ordinary if you have a report by client and by date range that already knows the hierarchy: client, project, task. The invoice is a document you sent. The export is the ledger underneath it.
Weekly invoice hygiene — History, one report, extras and tax, send — is how you get paid. We wrote that close as close the week before Friday panic. Tax season is the annual version of the same idea: do not invent the year while the file is downloading.
Your accountant is not your AP contact. The client needed a PDF they could match to a purchase order. Your tax person needs rows: who, when, how much, which entity. Mixing those jobs is how you send a pretty invoice and still rebuild Excel in a panic.
What to export (and how often)
Pick a cadence you will actually keep. Quarterly is enough for most independents. Month-end is better if you have mixed GST/QST, several entities, or a bookkeeper who invoices you for panic.
- One report per money question. What (clients or projects, optional tasks) × Who (you, or a tiny team) × When (the quarter, the calendar year, the fiscal year your accountant actually uses).
- Grand total and billable total. If you round up, keep both. Original duration is what you lived. Billable rounded total is what you charged. Mixing them in April is how you explain 10 minutes becoming 12 for the fifteenth time.
- A file your tools can open. CSV for almost everyone. Excel (XLSX) if the bookkeeper lives in workbooks. JSON if you or a developer will script a rollup. Do not hand someone a screenshot of a dashboard.
- A copy next to the invoices. Same folder scheme as the PDFs: year / client / quarter. The export is evidence, not a second product.
Pivot the same report by client when you are asking “where did the year go,” by project when a fixed-price engagement needs a post-mortem, by user if you subcontracted and kept two rate cards. The reports guide is the field-level walkthrough. The habit is: generate, glance, export, file. Do not wait until you are also collecting T4As, 1099s, or a shoebox of QST returns.
What an export is not
It is not a full accounting suite. Marking invoices paid in QuickBooks, chart-of-accounts coding, and payroll live elsewhere. A time tracker that generates invoices from time is doing a billing job. Pretending the CSV is your entire finance stack is how the export stops happening.
It is not GST/QST setup. Named tax percentages on an invoice (GST/QST, VAT, or “this client is tax-exempt”) belong on the document you send. How those numbers interact with your registration is a conversation with a professional. If you need the invoice-side walkthrough, use how to put GST and QST on a time-based invoice — then still export the underlying hours.
It is not a substitute for rates you never wrote down. Cost profiles (billable rate and, if you care about margin, internal cost) should exist before the year ends. Currency as a symbol or code you actually print. If a user rate and a team rate both exist, know which one won. April is a bad time to remember.
A 20-minute quarterly close
- History pass on anything still obviously wrong (wrong client, timer left overnight).
- Report for the quarter: all clients you invoice, you as Who, dates that match the quarter.
- Export CSV and XLSX. Drop them next to the invoices you already sent.
- Optional: one extra report for internal / sales / unpaid discovery so your “real hourly rate” is not a fiction.
If a project used a tracker (estimate, budget, or revenue goal), glance at whether you ignored the emails. Trackers are not the running timer; they are the early warning you wish you had in June, not in tax season.
Where MinuteShark does the last twenty percent
If you already track in MinuteShark, the path is the one the product was built around. Time lives on tasks under clients and projects. Generate a report with What × Who × When. After it runs you get a grand total, a billable rounded total if rounding is on, a chart and a table, and export to CSV, Excel, or JSON. Generate Invoice stays a separate action for the client document (PDF, DOCX, or CSV) with a cost profile, extras, and named tax percentages.
MinuteShark AI can open a report with filters in plain English. It still does not file your taxes, sync a catalog of accounting tools, or mark a bill paid in someone else’s ledger. Custom development exists for specialized consulting workflows. For most independents, the quarterly export above is the whole job.
Starter is enough to practice the habit on a few clients. Standard is $5/user/month (or $50/user/year) when you need unlimited clients and projects and you actually have a year worth exporting. Put the next quarter’s export on a calendar. Let the calendar remind you. Let the file come from time you already trust.