Kitebill

Timesheet to invoice

Billing by the hour? Enter or paste the time you worked, pick how to round it and how to group it, and get the invoice lines (hours × rate) plus a timesheet you can attach, in English, Arabic or Urdu. One click opens the free invoice generator with the lines filled in. Nothing you type leaves your browser.

The entries below are an example. Replace them with yours, or click Fill with sample.

Time entries

Fill in a start and end time (and any break), or just the hours (1.5, 1:30 or 1h 30m). Untick Billable for time you won't charge; it still shows on the timesheet.

DateTaskStartEndBreak (min)or HoursRateBillable
Paste hours from a spreadsheet or a CSV export

Billable: - See the timesheet ↓

Invoice lines

Save it in the free app →

Make the invoice opens the free invoice generator with these lines, your rate, the client and a note about the hours filled in. Save it in the free app skips that step: the Kitebill app opens in a new tab with the same lines and client, gives the invoice your next number and today's date, and saves nothing until you check it and click Save. Either way the details travel in the part of the link after #, which browsers don't send to any server. For the timesheet PDF, choose Save as PDF in the print dialog.

How the numbers work

  1. Time per entry = the hours you typed, or end − start − break. An end time earlier than the start counts past midnight (the page warns you).
  2. Rounding applies to each billable entry, not to the total: up to the next step or to the nearest step (6, 15 or 30 minutes), or none.
  3. Invoice lines add up the rounded entries per task, per day, per entry or in one line. Entries with their own rate get their own line. Line hours are rounded to 2 decimals.
  4. Line amount = line hours × rate. The total is worked out the same way as on the invoice generator, so both show the same number.

Sample on this page (made-up work): 6 entries, one of them not billable (0.50 h of admin). The 5 billable entries are 12.67 hours as recorded and 13.00 hours after rounding each one up to 15 minutes: Homepage design 9.75 h, Client call 0.75 h, Mobile layout fixes 2.50 h. At 40 an hour that is 520.00. Round to the nearest 15 minutes instead and it is 12.75 h = 510.00.

Rounding: agree it before you bill

Many freelancers bill in 6-minute (0.1 hour) or 15-minute steps, and some round only the total. Whichever you use, put it in your contract or proposal and keep it the same every month. Rounding every entry up is the most generous to you, so short tasks like a 5-minute email become a full step: say so up front rather than letting the client discover it. The printed timesheet states the rule, and the hours before rounding.

Which grouping to choose

Pasting from a spreadsheet or time tracker

Most spreadsheets copy as tab-separated rows, and most time trackers can export a CSV. Paste either into Paste hours. With a header row, the page matches columns by name (Date or Start date, Description or Task, Project, Duration or Hours, Start time, End time, Break, Rate, Billable); a project and a description are joined as "Project: description". Durations like 1.5, 1:30 or 01:30:00 and times like 09:00, 9.30 or 5:30 pm are understood. Dates like 03/10/2026 are ambiguous, so tell the page whether your dates are day first or month first. Always check the imported entries before you invoice.

After the invoice

Paid in full or in part? Make a payment receipt. Several invoices open with the same client? Send a statement of account. Late? The payment reminder email generator writes the follow-up. Not sure your hourly rate covers fees and quiet weeks? Check it with the freelance rate calculator, and see what actually lands after fees with the payout fee calculator.

This page does arithmetic on the numbers you type. It is not legal or tax advice.

More free tools

Questions

How do I turn a timesheet into an invoice?

Add each block of work with a date, a task and either a start and end time or a number of hours, and set your hourly rate. Every billable entry is rounded the way you choose, entries are grouped into invoice lines (by task, by day, one line per entry or one line in total), and each line is hours × rate. Make the invoice from these hours opens the free invoice generator with those lines filled in. With the sample on this page: 13.00 billable hours × 40 = 520.00.

Should I round my hours?

Only if your contract or your client agrees to it, and say so on the timesheet (this page prints the rule you picked). Rounding every entry up adds up: in the sample, 12.67 recorded billable hours become 13.00 billed when each entry is rounded up to the next 15 minutes. Rounding to the nearest 15 minutes gives 12.75. No rounding bills exactly what you recorded.

Can I paste hours from a spreadsheet or a time tracker export?

Yes. Copy the rows from a spreadsheet, or paste a CSV export. If the first row is a header, columns named like Date or Start date, Description or Task, Project, Duration or Hours, Start time, End time, Break, Rate and Billable are matched and anything else is ignored. Without a header, each row should be a date, a task, then either hours or a start and an end time. Check the entries after importing. Nothing is uploaded.

Does the Kitebill app track time?

No. The Kitebill app has no timer and no timesheets. It keeps your invoices: hours go in as the quantity on an invoice line, and the app tracks each invoice until it is paid. For the hours themselves, use this page, a spreadsheet or a time tracker.

Can the timesheet be in Arabic or Urdu?

Yes. Choose English + Arabic or English + Urdu. Headings such as Date, Task, Hours and Total hours print in both languages; your own text prints as you type it.

Does this page save or send what I type?

No. Everything is worked out by JavaScript in your browser. Nothing is stored, the page makes no requests to other sites, and it is all gone when you close the tab. Print or save the timesheet as a PDF first.