This page injects the following customData into the bot:
Step 1. Add the embed snippet once, sitewide (bottom of every page, or via your tag manager). This is identical everywhere:
<script type="module" src="https://cdn.landbot.io/landbot-3/landbot-3.0.0.mjs"></script>
<script type="module">
new Landbot.Livechat({
configUrl: '<your-bot-config-url>',
customData: window.landbotCustomData || {}
});
</script>
Step 2. On each page, declare window.landbotCustomData before the embed runs (top of <head>). Change the values per page:
<script>
window.landbotCustomData = {
page: 'pricing',
plan_tier: 'pro',
proactive_message: "Let's help you find the right plan"
};
</script>
Step 3. In your bot flow, reference the values with @variable_name (e.g. @page, @proactive_message). Variables are auto-populated the moment the visitor opens the chat — no opt-in step required.
That's it: the embed stays identical sitewide; per-page personalization lives in a single small script block at the top of each page.