Resources · n8n integration

Toggl n8n integrationAutomate Toggl with n8n.

What should happen the second someone stops a timer in Toggl? The Toggl n8n integration rests on one node, the Toggl Trigger: 1 event, newTimeEntry, checked on the interval you choose. There is no action node, so anything written back to Toggl goes through HTTP Request.

Verified Trustpilot reviews · AI, automation & growth agency

Why automate

What does the Toggl n8n integration actually give you?

The Toggl n8n integration is a one way link: n8n watches your Toggl account and starts a workflow each time a new time entry lands. Toggl stays the place where hours get tracked, n8n becomes the place where those hours turn into a row, a message, an invoice line or an alert. The connection runs on Basic auth, a credential you create once and reuse everywhere.

Take a freelance studio billing by the hour. Every stopped timer can drop straight into a billing sheet through Google Sheets, with the date and the tracked block written to the right tab. Nobody copies hours by hand at the end of the month, and the sheet is already the invoicing source.

Second case, visibility for a small team. The trigger fires, n8n formats the entry and posts it to a project channel with Slack. A team lead sees what is being worked on without opening a reporting tool, and the thread doubles as a light activity log.

Third case, a structured project base. Each entry becomes a record in Airtable, linked to a client and a project, so budget consumption is visible per account rather than per person. Add a filter node before it and only entries above a chosen length get stored.

One thing this integration does not do: write to Toggl. The catalog exposes 0 operations and 0 resources for this tool, which means no dedicated node writes anything back. That work goes through the HTTP Request node, which calls any endpoint of the Toggl API while reusing the same credential through predefined authentication. It is more setup than a dropdown, and it is the only route available here.

The other limit is timing. The trigger polls, so an entry is picked up at the next check, not at the exact second the timer stops. For a report or a billing sheet that is invisible. For something that must react instantly, it is the wrong tool. If the whole approach is new to you, the n8n training covers credentials, expressions and executions before you start wiring workflows in production.

Connect

How do you connect Toggl to n8n?

  1. 01

    Create the Toggl credential

    You need a Toggl account first. In n8n, open the Credentials menu and create a Toggl credential. A credential is the stored login n8n uses to talk to a tool on your behalf, and this one is built once for the whole instance. Every workflow you add later picks it from a dropdown instead of asking for the login again, which also means rotating a password is a single edit rather than a hunt through workflows.

  2. 02

    Fill in the Basic auth fields

    Toggl supports one authentication method here, Basic auth, so the form is short. Username takes your user email address, the same one you sign in with. Password takes your user password. There is no separate key to generate and no scope to tick, which keeps the setup quick but ties the connection to a real account, so a shared operations account is often the safer choice for a team.

  3. 03

    Add the trigger and pick the event

    Drop the Toggl Trigger on the canvas, select the credential, then choose the Event it listens for. Version 1 of the node exposes newTimeEntry, and no other parameter needs a value. Set the poll interval, activate the workflow, and track a short entry in Toggl to confirm the first execution arrives with the data you expected before you build the rest of the branch.

Triggers

What starts a Toggl workflow in n8n?

Toggl Trigger is the node that starts a workflow when something happens in Toggl. It listens to 1 events, listed below by family. Pick one or several, activate the workflow: n8n registers the webhook on your Toggl account.

What you see in n8n

Every event, by family

One row per object, one chip per action. The event to tick in the node is object.action; hover a chip to read exactly when it fires.

new.*1

    Configuration notes

    01Set Up the Toggl TriggerThe Toggl Trigger node starts a workflow when Toggl reports an event. Configuration is deliberately small: one event to select, one interval to decide, and the credential you built earlier.

    The Toggl Trigger node starts a workflow when Toggl reports an event. Configuration is deliberately small: one event to select, one interval to decide, and the credential you built earlier.

    Key parameters

    • Event: the Toggl event the node listens for. Version 1 of the node ships a single value, newTimeEntry, grouped in 1 family, so the dropdown has nothing to compare and no wildcard entry that would catch everything at once.
    • Poll Times: how often n8n asks the Toggl API whether something new appeared. Polling means asking on a schedule rather than being notified. Once a minute is the shortest setting; a wider one is perfectly fine when the output is a daily sheet.
    When to use it
    when the starting point of the automation is a person stopping a timer rather than a clock. If instead you want a recap at a fixed hour, the Schedule Trigger is the better start and Toggl data comes in afterwards.
    02New Time EntryEach execution carries one fresh time entry, so the workflow always handles a single tracked block of work instead of a batch to loop through. That shape makes the branch after the trigger straightforward.

    Each execution carries one fresh time entry, so the workflow always handles a single tracked block of work instead of a batch to loop through. That shape makes the branch after the trigger straightforward.

    Key parameters

    • Event: set to newTimeEntry, the only value in the new family for this node. No other event exists to combine it with, so a workflow that needs several Toggl signals is built as one workflow per intent, not one node with several boxes ticked.
    Use cases
    an agency logs consulting hours per client and wants each entry appended to a monthly billing sheet as soon as it exists. A product team routes entries into a project base to watch a budget burn down. Both read the incoming item with an expression such as {{ $json.description }}, referencing a field of the item the trigger just emitted.
    Need help

    Need help automating Toggl with n8n?

    A person reads every message.

    FAQ

    Toggl and n8n, the questions that come next

    01Is the Toggl n8n integration free to use?
    Yes on the n8n side. The Toggl Trigger ships with n8n, so there is nothing to install, nothing to buy and no marketplace step. It behaves the same on n8n Cloud, the hosted offer run by n8n, and on a self-hosted instance installed through Docker or npm under the Community Edition and its Sustainable Use license. A workflow built in one place runs identically in the other. What a Toggl plan costs is a separate question and this page does not cover it, since pricing is not part of the node catalog. Your only cost decision is where n8n itself runs.
    02What credentials do you need for the Toggl Trigger?
    Basic auth, and that is the single supported method. You create a Toggl credential in the Credentials menu with two fields: Username, which holds your user email address, and Password, which holds your user password. No API key, no OAuth screen, no list of scopes to approve. Because it maps to a full account login rather than a scoped token, many teams point it at a shared operations account instead of a personal one. The credential is stored once and every Toggl Trigger in the instance selects it from a dropdown, so adding a second workflow adds no setup work.
    03What are the limits of the Toggl node in n8n?
    The main one is scope. The catalog lists 0 operations and 0 resources for Toggl, so there is no action node at all: n8n can react to Toggl, never write to it through a dedicated node. Creating, editing or fetching anything in Toggl means using the HTTP Request node, which calls any endpoint of the Toggl API while reusing the same credential through predefined authentication. On the trigger side, 1 event exists, newTimeEntry, with no wildcard to catch every event type. Version 1 of the node exposes no parameters beyond the event itself.
    04Does the Toggl Trigger react in real time?
    No, and it is worth being precise about it. The node works by polling: n8n asks the Toggl API at the interval set in Poll Times whether new entries exist, then emits one item per entry found. Nothing is registered on the Toggl side, so there is no webhook to set up and no URL to expose, which is the upside. The downside is a delay equal to your interval. The shortest setting checks once a minute. For a billing sheet, a channel message or a project base, that delay changes nothing. For anything that must fire the instant a timer stops, this is not the right mechanism.
    05n8n or Make for Toggl?
    It depends on what matters to you. Make is hosted only and billed per operation, so a trigger that polls often keeps consuming quota whether or not entries show up. n8n can run on your own server, which puts tracked hours and account credentials on infrastructure you control, and it also runs as a hosted offer if you would rather not maintain anything. On features for this specific tool, both sides are thin: 1 event and no write operations, so the real work happens in whatever you connect next. Pick on hosting, data control and cost model rather than on the Toggl node itself.