HourdiniDocs

Import from another tool

Move your Clockify, Toggl, or Harvest history into Hourdini without retyping anything.

If you've been tracking time somewhere else, drop your CSV and Hourdini will create the clients, projects, and entries for you. We'll work through anything ambiguous (defaults, currencies, possible duplicates) in chat before any rows land.

Get an export

You're looking for a detailed report, not a summary. Every tool calls it something slightly different:

  • Clockify. Reports → Detailed → Export → CSV.
  • Toggl Track. Reports → Detailed → Download → CSV.
  • Harvest. Reports → Detailed time report → Export → CSV.
  • Something else. Any CSV with one row per time entry should work.

Make sure the export covers the dates you actually want imported, and that it has a project, client, time, and duration on each row. Files up to 10 MB and 50 000 rows are fine. Larger than that, split it.

Upload it

There are two entry points. During onboarding, the first wizard step is "Migrating from another tool?". After onboarding, open Settings → Imports and click Start a new import. Both land you on the same drag-drop page.

Screenshot pending
The import upload page with the drop area and an empty session list.

Walk through the chat

Once the file is uploaded, the assistant reads it and opens with what it found: how many rows, which currencies are in there, anything unresolved. Then it asks one question at a time. The usual ones:

  • What currency should I assume for rows without one? Most exports don't put a currency column in the file. Pick what you bill in and we'll apply it across the rows.
  • What rate should I use for projects without one? Some tools include a rate column, some don't. If yours doesn't, supply a default and we'll snapshot it onto each entry.
  • Should I merge with an existing client? If a name in the CSV matches a client you already have, the assistant asks before creating a duplicate.

Say "apply" when you're satisfied. The assistant inserts the rows in one shot. If anything is still unresolved, it refuses and tells you what's outstanding.

Screenshot pending
The smart-import chat asking about a default currency for the file.

For every unique client name in the file you get a client; for every unique project under that client, a project; for every row, a time entry. Billable rates are snapshotted at import time the same way they are everywhere else in Hourdini, so editing a project's rate later won't rewrite the imported history.

When the file looks familiar

We hash the upload and check it against your prior batches. If the content matches one already imported, the assistant tells you when it landed and warns you that applying again will duplicate everything. It's a heads-up, not a block, so if you rolled the original back and want it back, just say apply.

Undo

Every applied import is a batch. From Settings → Imports, you can roll one back within 7 days and it deletes every client, project, and time entry the batch created. Anything already invoiced is protected and stays put.

Screenshot pending
Settings → Imports with two batches listed and the Undo button.

A few things that don't come along

Tags don't ride with imported entries; re-tag from the Time page if you need them. Open sessions and running timers don't import (only completed entries do). And invoices from the other tool stay there. Hourdini's invoicing draws from time entries, so the imported time becomes invoiceable, but the original PDFs don't migrate.

Next

On this page