# Install on a CMS or site builder

> Where to paste the tag on a content management system, a site builder or a shop, step by step and without a plugin.

This page shows where to paste the Clear Saga tag on a content management system or a site builder. Find your tool below, follow its steps and publish. Every sample carries the placeholder `YOUR_SITE_KEY`: replace it with the key of your site, or copy the finished tag from Settings, Installation, where the key is already filled in.

None of these tools needs a plugin or an app from us, and none exists. You paste one tag into the place the tool offers for code in the `<head>` of every page.

## WordPress

1. Classic theme: paste the tag before \</head\> in the header.php of a child theme.
2. Block theme: paste it into a header scripts plugin, or print it from a small must-use plugin on the wp_head hook.

**header.php**

```html
<script
  defer
  data-site-key="YOUR_SITE_KEY"
  src="https://clearsaga.com/js/script.js"
></script>
```

> [!NOTE]
> Check a public page, not the admin area. Add a path exclusion for /wp-admin/\* to leave your own admin visits out.

## Webflow

1. Open Site settings, then Custom code.
2. Paste the tag into Head code, save, and publish the site.

**Site settings, Custom code, Head code**

```html
<script
  defer
  data-site-key="YOUR_SITE_KEY"
  src="https://clearsaga.com/js/script.js"
></script>
```

> [!NOTE]
> Custom code needs a paid Webflow site plan.

## Framer

1. Open Site settings, General, then Custom code.
2. Paste the tag into the field for the end of the \<head\> tag, then publish.

**Site settings, General, Custom code**

```html
<script
  defer
  data-site-key="YOUR_SITE_KEY"
  src="https://clearsaga.com/js/script.js"
></script>
```

## Ghost

1. Open Settings, then Code injection.
2. Paste the tag into Site header and save.

**Settings, Code injection, Site header**

```html
<script
  defer
  data-site-key="YOUR_SITE_KEY"
  src="https://clearsaga.com/js/script.js"
></script>
```

## Shopify

1. Open Online Store, Themes, then Edit code on your live theme.
2. In layout/theme.liquid, paste the tag just before \</head\> and save.

**layout/theme.liquid**

```html
<script
  defer
  data-site-key="YOUR_SITE_KEY"
  src="https://clearsaga.com/js/script.js"
></script>
```

> [!NOTE]
> Add it once only. To record orders, connect the store under Settings, Integrations and use the tag its Connect dialog prints. Shopify's consent banner is read on theme pages only, not at checkout.

## WooCommerce

1. Install the tag the same way as on WordPress, so shop, product, cart and checkout pages are all covered.
2. Open a product page on the public site to check that the visit arrives.

**header.php**

```html
<script
  defer
  data-site-key="YOUR_SITE_KEY"
  src="https://clearsaga.com/js/script.js"
></script>
```

> [!NOTE]
> Make sure a plugin does not load the tag a second time. To follow the steps of a purchase, send custom events.

## Shops: what the tag counts

On a shop the tag counts visits, pages and the custom events you send, the same as on any other site. The tag itself does not read orders or amounts.

A Shopify store can send its orders, so each one is credited to the visit behind it: see [connect Shopify](/docs/connect-shopify). Once the store is connected, the theme gets the tag below in place of the plain one. It loads the full script and, after a first item is in the cart, writes a short random id into the cart, which Shopify puts on the order.

**layout/theme.liquid**

```html
<script
  defer
  data-site-key="YOUR_SITE_KEY"
  data-revenue="true"
  data-shopify-cart="{{ cart.item_count }}"
  src="https://clearsaga.com/js/script.full.js"
></script>
```

Other shops and payment providers are not connected yet. [What works today](/docs/status) has the details.

On any shop you can follow the steps of a purchase. Send a [custom event](/docs/custom-events) at each step that matters to you, such as a product added to the cart or an order placed, and put those events in a [funnel](/docs/funnels).

## After you publish

Open a public page of your site in a normal browser window, then the dashboard. The first visit shows up within a few seconds. Your own visits count too. To keep them out of your numbers, see [excluding visits](/docs/excluding-visits).

If nothing arrives, [troubleshooting](/docs/troubleshooting) lists what to check.

**Next:** [Custom events](/docs/custom-events), [Script options](/docs/script-options), [Troubleshooting](/docs/troubleshooting)
