Skip to main content
๐Ÿ”—

Import Excel Timesheets into QuickBooks Desktop

7 min readOctober 27, 2026

Quick Answer: QuickBooks Desktop has no "import timesheet from Excel" button. The documented route is an IIF file built from your sheet: a !TIMERHDR header block followed by !TIMEACT rows (date, customer:job, employee, service item, duration, class, note, billing status), imported through File > Utilities > Import > Import IIF after a backup. The format has no payroll item column, so payroll details are not carried by the file. If you track time every week, QuickBooks Time or a dedicated importer is usually less work.


Getting Excel timesheets into QuickBooks Desktop means translating each row of hours into a time activity that QuickBooks recognises. Intuit documents one way to do that in bulk: the Timer section of its IIF format, which still ships in the IIF Import Kit on Intuit's support site. It works, but it is strict about names, dates and durations, and it cannot undo itself.

Drop your bank statement here

PDF or OFX ยท Max 4.4 MB

Uploaded over an encrypted connection. We never ask for your bank login. Privacy

Preview free with no account. Free account to download.

Which routes exist for timesheet data?

Before building anything, decide which of these fits how often you do it and how many people are involved.

RouteWhat it brings inGood fitMain limit
IIF file with TIMEACT rowsTime activities: date, customer:job, employee, service item, hours, class, note, billable flagOccasional catch-up, one-off migration, a few dozen rows a weekNo payroll item field; no undo; Intuit gives no assisted support for IIF
Excel/CSV import in DesktopLists and some transaction typesLoading employees, customers and service items firstIntuit's Desktop import article does not list time data as an Excel/CSV import type
QuickBooks TimeClock-in/out or manual hours, synced to QuickBooksCrews tracking time dailyA separate subscription; its own CSV import is capped at 750 rows
Third-party importerVaries by productLarge or recurring loads with validationAnother vendor to evaluate and pay
Typing into the weekly timesheetAnything QuickBooks allows on screenUnder an hour of entrySlow and error-prone at volume

Intuit's article on importing and exporting data in QuickBooks Desktop covers the list and transaction types that Excel and CSV can carry, and it sends time data to QuickBooks Time rather than to a spreadsheet import. That leaves IIF as the built-in bulk path for Desktop.

What does a TIMEACT row need?

The IIF Import Kit that Intuit links from its IIF overview article includes header help files for the Timer. They define the columns this way:

  • DATE: the day the work was done, in MM/DD/YY format (June 21 entered as 06/21/97 in Intuit's own example).
  • JOB: the customer, or customer and job separated by a colon, such as Hartley Dental:Suite 4 remodel. Both names must already be on the Customers & Jobs list.
  • EMP: the employee's name exactly as it appears on the Employee list.
  • ITEM: a service item from the Item list that describes the type of work.
  • PITEM: the kit says to leave this blank because QuickBooks does not use it.
  • DURATION: hours and minutes as HH:MM. Four and a quarter hours is 4:15. The value cannot exceed 23:59.
  • PROJ: a class from the Class list, if you use classes to group time.
  • NOTE: up to 1,000 characters on one line; /n stands for a line break.
  • BILLINGSTATUS: 0 not billable, 1 billable and not yet billed, 2 already billed.

The time block must start with a TIMERHDR record. Its columns are VER, REL, COMPANYNAME (exactly as shown in the Company Information window), FROMTIMER (Y when bringing activity data into QuickBooks) and COMPANYCREATETIME. Intuit's sample file, "Timer Activity.iif", also carries a standard !HDR line before the activities. Open that sample next to your own file and copy its header rows rather than typing them from memory.

The payroll item gap

There is no payroll item, wage rate or overtime column in TIMEACT. If your timesheets feed paychecks, the import only gives you the hours against an employee, customer and service item. Plan to review those entries inside QuickBooks before you run payroll, and do not assume the file can set up pay types for you.

How do you turn an Excel timesheet into IIF rows?

Keep your original timesheet untouched and build a second sheet that holds nothing but IIF output. Suppose the source sheet has these columns: A = work date, B = customer, C = job, D = employee, E = service item, F = decimal hours, G = billable (Yes/No), H = notes.

  1. Date. In the output sheet use =TEXT(Source!A2,"mm/dd/yy") so Excel's date serial becomes the two-digit-year text the kit specifies.
  2. Customer:job. =IF(Source!C2="",Source!B2,Source!B2&":"&Source!C2) joins the two only when a job exists.
  3. Duration. Timesheets usually store hours as decimals. =TEXT(Source!F2/24,"[h]:mm") turns 4.25 into 4:15 and 7.5 into 7:30. Flag any row where F2 is 24 or more with =IF(Source!F2>=24,"SPLIT",""), because a single activity cannot pass 23:59.
  4. Billing status. =IF(Source!G2="Yes",1,0) gives the 0 or 1 the format expects. Use 2 only for time you have already invoiced some other way.
  5. Note. =SUBSTITUTE(Source!H2,CHAR(10),"/n") removes in-cell line breaks that would otherwise split the row.
  6. Row label. Put the literal text TIMEACT in the first column of every activity row and leave PITEM empty.

Above the activity rows, paste the !TIMERHDR, TIMERHDR, !HDR, HDR and !TIMEACT lines from Intuit's sample, then edit COMPANYNAME to match your file. Save the sheet as tab-delimited text and change the extension to .iif. The kit's manual describes IIF as a tab-delimited file that is often edited in a spreadsheet, so keep tabs, not commas, between the columns.

Here is how three source rows come out:

Source (date, customer, job, employee, item, hours, billable)IIF fields produced
3 Mar 2026, Hartley Dental, Suite 4 remodel, Ana Ruiz, Labor, 6.25, Yes03/03/26, Hartley Dental:Suite 4 remodel, Ana Ruiz, Labor, 6:15, 1
3 Mar 2026, Office, (blank), Ana Ruiz, Admin, 1.5, No03/03/26, Office, Ana Ruiz, Admin, 1:30, 0
4 Mar 2026, Lee Residence, (blank), Sam Okafor, Labor, 9, Yes03/04/26, Lee Residence, Sam Okafor, Labor, 9:00, 1

What should you check before importing?

The kit's manual is blunt that the format is unforgiving. Its tips translate into a short pre-flight list for timesheets:

  • Back up the company file. Intuit's export, import and edit IIF files article says this first, and the kit adds that there is no undo.
  • Create every name first. Employees, customers, jobs, service items and classes must exist before the activity rows arrive. Compare spellings with an export of each list, since a stray trailing space counts as a different name.
  • Practise on a copy. The kit tells you not to import its examples into your real company file. Restore your backup under a new name and import there first.
  • Import once. Nothing stops the same IIF file from going in twice, which doubles every hour. Rename the file after a successful run, for example by adding "-imported".
  • Find what landed. If an import reports success but you cannot see the entries, the kit suggests Edit > Find on the Advanced tab with an Entered/Modified filter set to today.

In QuickBooks Desktop 2019 and later, Intuit's improved IIF import scans the file and produces a new IIF containing only the rows that failed, with error descriptions. Fix those rows and import only that file. Intuit advises against the "Import it for me. I'll fix it later" option, which skips the review.

When are QuickBooks Time or an importer the better choice?

IIF suits a migration or a backlog. For live weekly hours it adds a manual conversion step every pay period. Intuit says QuickBooks Time integrates with QuickBooks Desktop and syncs time data to accounting and payroll. If you already have hours in a spreadsheet, QuickBooks Time has its own CSV import (Punch Time Import and Manual Time Import) with a test mode, a 750-row cap per file, and a rule that at least one customer or job must exist first.

Commercial importers sit between the two: they map spreadsheet columns, validate names against your lists and often handle many record types. Our Transaction Pro importer review looks at one such tool from the QuickBooks Online side. Check that any tool you choose explicitly lists time activities for the Desktop edition you run.

Where bank statements fit

Timesheets cover labor; the bank side of the same books is a separate import. If you are catching up on a quarter of time, you are probably catching up on a quarter of bank and card activity too. Our guide to converting Excel files to IIF for QuickBooks covers transactions such as checks and deposits. For statements that only exist as PDFs, QuickBankConvert reads the statement and produces rows you can download as a QBO file on a paid plan, a format QuickBooks Desktop accepts as a Web Connect import. The QuickBooks integration page explains that route.

Frequently Asked Questions

Can QuickBooks Desktop import timesheets directly from an Excel file?

Not as an .xlsx. Intuit's Desktop import article does not list time data among the Excel/CSV import types, so the sheet has to be rewritten as a tab-delimited IIF file with TIMERHDR and TIMEACT rows.

Why does my IIF time import say the employee or job does not exist?

Every employee, customer:job, service item and class named in a TIMEACT row must already be on the matching list, spelled identically. Add the missing names or fix the spelling, then import only the rows that failed.

Can an IIF file set the payroll item for imported hours?

No. The TIMEACT format has no payroll item column, and the PITEM column is documented as unused. Review the imported time inside QuickBooks before running payroll.

How do I enter a 10-hour shift that goes past midnight?

Split it into two activities, one per date. A single TIMEACT duration cannot be longer than 23:59, and the date should be the day each part of the work was done.

Is QuickBooks Time required to track hours for QuickBooks Desktop?

No. It is one option that syncs time with Desktop. Small teams can keep a spreadsheet and convert it to IIF each period, or type hours into the timesheet screens.

Ready to convert your bank statement?

Free to preview. No bank login. Results in about a minute.

Convert a statement