How to add an onboarding checklist via Google Tag Manager without a developer
An onboarding checklist via Google Tag Manager: four tasks, a progress bar, each item one click away from the right screen — set up in the Clew editor, no front-end work.
- Time
- ● 15 minutes
- Price
- 14-day free trial, no card
- Who does it
- Anyone who can publish in GTM
Example: an onboarding checklist via Google Tag Manager
A B2B SaaS pushes plan to the data layer. Trial users on /app see “Get set up”: connect a data source, create a dashboard, invite a teammate, book onboarding. A second GTM tag passes the plan to Clew:
<script>window.TutorKit = window.TutorKit || { q: [], identify: function (p) { this.q.push(['identify', p]); } };
TutorKit.identify({ plan: '{{DLV - plan}}' });</script>This format is part of the Pro plan. Every new account starts with a 14-day free trial with all formats and audience rules, no card required. When the trial ends nothing is deleted and published items keep showing; the Free plan keeps tours and tooltips free.
How to add the onboarding checklist via Google Tag Manager, step by step
- Step 01
Copy your Clew snippet
Create a free account (or sign in), add your site and open Admin → Overview. Click the line in the “No signal from the widget yet.” card to copy it — it carries your real site key instead of the placeholder.
<!-- Clew: replace PASTE_YOUR_SITE_KEY with the site key from Admin > Overview --> <script src="https://tryclew.io/widget/PASTE_YOUR_SITE_KEY.js" async></script>

Step 1 · schematic illustration - Step 02
Create a Custom HTML tag in GTM
In tagmanager.google.com open your container, Tags → New → Tag Configuration → Custom HTML, and paste the Clew line. Name the tag
Clew widget.
Step 2 · schematic illustration - Step 03
Fire it on All Pages
In Triggering choose All Pages and save. Load it everywhere: which page shows the onboarding checklist is decided in Clew, not in GTM.

Step 3 · schematic illustration - Step 04
Preview, then Submit and Publish
Check in Preview that
Clew widgetis under Tags Fired, then Submit → Publish. Nothing reaches the live site before you publish.
Step 4 · schematic illustration - Step 05
Write the checklist items in Clew
In Clew open Flows → + New flow and choose Onboarding checklist. Fill Checklist title, then add 3–5 Checklist items: a title that is an action, one line of explanation and in Link URL the page where it is done. No selectors are needed.

Step 5 · schematic illustration - Step 06
Choose where, when and for whom it shows
In the same editor, set Where to show (page URL), When to show, Audience targeting and Frequency. These are the settings of the example above:
Setting Value Format Onboarding checklist Where to show (page URL) Section by prefix /appWhen to show Right on page load Audience targeting Property planequalstrialFrequency Once per visitor 
Step 6 · schematic illustration - Step 07
Publish and check it on the live site
Set Status to Published and save. Open the page in a private window — Clew remembers who has already seen a “once” item, so your usual browser may skip it. Views, completions and drop-offs appear in the tour stats.

Step 7 · schematic illustration
Pitfalls: onboarding checklist via Google Tag Manager
Don’t use a History Change trigger
The widget follows single-page navigation on its own. A second trigger on History Change only loads the script again for nothing.
Pass user properties with a second tag
If your data layer has values like plan, create a Data Layer Variable and a second Custom HTML tag that calls Clew.identify() with it (see the example). Fire it on the event that carries the value, after the Clew tag.
A tag manager doesn’t know who the user is
To target by plan or role through a tag manager, your app must already push those values to the data layer. If it doesn’t, use a rule on a cookie your app sets, or show the checklist on the pages only new users see.
One list at a time
While a checklist is open, the widget doesn’t start another tour on navigation. Keep the checklist for the setup phase and let users close it; tours on other pages start afterwards.
Questions and answers
What if the data layer has no plan?
Show the checklist without the rule on pages only trial users open, or target a cookie your app already sets.
Does GTM slow the onboarding checklist down?
The widget loads a moment after the container. Only an item with Right on page load on the very first page view might appear a fraction of a second later than with a direct install.
Can GTM read the user’s plan?
Only if the site pushes it to the data layer. Then a Data Layer Variable passes it to Clew.identify() in a Custom HTML tag.
Is the onboarding checklist free?
It is part of Pro. Every new account gets a 14-day trial with checklists and audience rules, no card. When the trial ends, published checklists keep showing.
Are items ticked automatically?
An item is ticked when the user clicks it (its link opens in a new tab). Automatic ticking by app events isn’t available yet.
What else you can add via Google Tag Manager
- How to add a popup to your website with Google Tag Manager without a developer
- How to create a product tour via Google Tag Manager without a developer
- How to set up user onboarding via Google Tag Manager without a developer
- How to add a tooltip via Google Tag Manager without a developer
- How to create an interactive product guide via Google Tag Manager without a developer
- How to add a paywall upgrade prompt via Google Tag Manager without a developer
- How to add a rating popup to your website with Google Tag Manager without a developer
Onboarding checklist on other platforms
- LovableHow to add an onboarding checklist in a Lovable app without a developer
- Bolt.newHow to add an onboarding checklist in a Bolt.new app without a developer
- v0How to add an onboarding checklist in a v0 app without a developer
- ReplitHow to add an onboarding checklist in a Replit app without a developer
- CursorHow to add an onboarding checklist in an app built with Cursor without a developer
- Claude CodeHow to add an onboarding checklist with Claude Code without a developer