Help / Integrations

Migrating from Toggl Track

The Toggl migration works like the Harvest migration: connect with a token, import your setup data, then backfill history. Both steps are safe to re-run — records update instead of duplicating. You need the owner or admin role.

Connect your Toggl account

  1. In Toggl Track, open Profile Settings and scroll to API Token. Click to reveal it and copy it.
  2. In Time Trakkr, go to Integrations and find Migrate from Toggl Track.
  3. Paste the token and select Connect. If your token can reach more than one workspace, pick the one to import and select Use this workspace.

The token is stored encrypted and is only used for importing. Disconnect removes it.

Step 1 — setup data

Select 1 · Import clients, projects, tasks & people. This brings over:

  • Clients — projects without a client in Toggl are grouped under (No client).
  • Projects — with their billable flags and project rates. A project rate becomes a project-level billing rate; otherwise per-person rates from Toggl's project members apply.
  • Tasks — Toggl tasks are a paid feature and many entries have none, so every project also gets a Tracked time task that catches task-less entries.
  • People — active Toggl members arrive as invited members with their project assignments; they can't sign in until you invite them from Team. Deactivated Toggl members arrive as disabled members so their history still attributes.

Step 2 — backfill time entries

Select 2 · Backfill time entries. This runs in the background and walks your entire Toggl history a year at a time — Toggl's API allows about one request per second, so a workspace with many years of data can take a while. You'll get an email when it finishes.

The only before date protects you from double-counting: it defaults to the first day your team tracked natively in Time Trakkr, and only Toggl entries before that date are imported. Clear it to import everything.

What doesn't come over

Toggl has no invoices, expenses, or approvals to import. Tags on entries are not imported. Reports rebuild themselves from the imported entries automatically.

What happens to edits you have made here

Re-running an import does not overwrite changes you made in Time Trakkr. The import compares three things: what it wrote last time, what the record says here now, and what Toggl says now. A field only changes if you have not touched it since the last import.

Where both have changed — you renamed a client here, and it was renamed in Toggl too — your version wins, and the disagreement is recorded rather than discarded.

Integrations → Kept your version lists those: which record, which field, your value and Toggl's, and when it was last seen. Nothing there is waiting on you; the decision has already been made the right way round. It is there so you can disagree — Keep mine records that you looked and agreed, and Use the source value takes Toggl's value and stops that field conflicting in future.

A field that keeps disagreeing stays a single entry with the date it was last seen, so a weekly import does not pile up copies.

Updated 2026-07-23. Still stuck? Contact support or return to the Help Center.