> ## Documentation Index
> Fetch the complete documentation index at: https://docs.bubblav.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Optimizely

> Add the BubblaV widget to your Optimizely Content Cloud site

Add the BubblaV AI chatbot to your **Optimizely Content Cloud** (formerly Episerver) site in minutes. Paste one widget snippet and BubblaV starts answering visitor questions from your published content — no code or rebuild required.

<Info>
  Optimizely Content Cloud is the CMS formerly known as **Episerver**. This guide covers both.
</Info>

## Why Add BubblaV to Optimizely?

<CardGroup cols={2}>
  <Card title="No-Code Install" icon="zap">
    Paste a single snippet into a layout template or block — no SDK or build step.
  </Card>

  <Card title="Auto-Trained on Your Pages" icon="clock">
    BubblaV crawls your published Optimizely pages and answers from your real content.
  </Card>

  <Card title="Multilingual" icon="globe">
    Answers visitors in Swedish, English, and 30+ languages out of the box.
  </Card>

  <Card title="Live-Agent Handoff" icon="headset">
    Escalate complex conversations to your team with full chat history.
  </Card>
</CardGroup>

## Prerequisites

* An Optimizely Content Cloud site with **edit and publish** access
* A BubblaV account and your site added in the dashboard
* Your BubblaV widget snippet (from **Dashboard → Installation**)

## Setup Steps

<Steps>
  <Step title="Copy your widget snippet">
    In BubblaV, go to <strong>Dashboard → Installation</strong> for your site and copy the one-line widget snippet.
  </Step>

  <Step title="Add the snippet to Optimizely">
    Choose <strong>one</strong> of the methods below — all three work on Optimizely Content Cloud.
  </Step>

  <Step title="Publish">
    Save and publish your changes so the snippet is live on your site.
  </Step>
</Steps>

### Method 1: Edit a Layout Template (Recommended)

Adds the chatbot globally so it appears on every page.

1. Go to **UI Mode → File Manager**.
2. Open your layout template (for example, `Layout.cshtml` or `_Layout.cshtml`).
3. Paste the widget snippet just before the closing `</body>` tag.
4. **Save and publish** the template.

### Method 2: Use a Script Container / HTML Block

A no-code option that avoids editing templates.

1. In **Edit Mode**, open the page where you want the chatbot.
2. Add a **Script Container** or **HTML block** to the footer area.
3. Paste the widget snippet (use the full snippet including the `<script>` tag).
4. **Save and publish** the page.

### Method 3: Add via Google Tag Manager (GTM)

If your Optimizely site already uses Google Tag Manager — as most marketing sites do — add the widget as a **Custom HTML** tag. This needs no template or block editing and lets you manage the widget alongside your analytics and ad tags.

For the full step-by-step (create a Custom HTML tag, set it to fire on **All Pages**, then publish), see the [Google Tag Manager guide](/user-guide/integrations/google-tag-manager).

## After Publishing

BubblaV automatically crawls your published Optimizely pages and uses them as its knowledge base. When you publish new or updated pages, the chatbot stays current.

<Tip>
  To control which pages are used as knowledge, see <a href="/user-guide/knowledge/website-crawling">Website Crawling</a>.
</Tip>

## Test Your Integration

Open a page where the snippet is published and try these in the chat widget:

* "What services do you offer?"
* "How do I contact support?"
* "Find pages about \[topic]"

## Troubleshooting

<AccordionGroup>
  <Accordion title="The widget doesn't appear on some pages">
    <ul>
      <li>If you used Method 1, confirm the snippet is in the shared layout that those pages render.</li>
      <li>If you used Method 2, remember the block only applies to the page you added it to — repeat for other pages or switch to Method 1.</li>
      <li>Make sure you published the template or page after pasting the snippet.</li>
    </ul>
  </Accordion>

  <Accordion title="Changes aren't showing up">
    <ul>
      <li>Clear the Optimizely output cache and republish the page.</li>
      <li>Hard-refresh your browser or test in an incognito window.</li>
    </ul>
  </Accordion>

  <Accordion title="A CSP or script policy blocks the widget">
    <ul>
      <li>Allow the BubblaV widget domain in your Content-Security-Policy <code>script-src</code> and <code>frame-src</code> directives.</li>
      <li>Temporarily relax security rules to confirm the script loads, then re-enable them with the correct allowlist.</li>
    </ul>
  </Accordion>
</AccordionGroup>

<Info>
  **Security**: BubblaV is read-only with respect to your Optimizely content — we never modify your pages. All traffic uses HTTPS, and conversations are handled privacy-first, making the integration well-suited to GDPR and Swedish/European compliance needs.
</Info>
