Documentation

Install website tracking

Add one Jelto script to your site's shared HTML. It collects pageviews and supported automatic interactions; custom goals are configured separately.

Before you start

Choose Add website and enter your website address. Jelto fills in the website name and your browser's reporting timezone; choose Edit to change either. Creating the website registers that hostname and its www or non-www counterpart, so example.com and www.example.com are both allowed, then opens guided setup: Add website → Install tracking → First goal (optional) → Connect revenue (optional). Have permission to edit and publish your website.

If your website also has a macOS, Windows or Linux app, select This website also has an app under Optional. This adds an optional Set up SDK step after website tracking. Your choice is remembered for this product in your browser; products with a registered app include that step automatically. You can also enable it from the installation step later.

You can choose Finish later and return through Finish setup in the product list. Existing websites can also use Settings → Installation, where you can add other allowed hostnames, such as blog.example.com, and change tracking preferences. Subdomains other than www are not added automatically.

If the product already has users or reporting history, select I’m adding Jelto to an existing product. This saves a setup preference for this product, shared with your team across devices; it does not classify app installations or change collection. Review Plausible migration before your first production visit. Match the source reporting timezone first and use a separate Jelto product for development tests. Keep your previous analytics while verifying coverage across your production pages and hostnames.

The Install tracking step shows both choices in a one-line Setup choices summary; choose Change to revise them.

Install the script

Set up with AI

In the Install tracking step, switch from Install manually to Set up with AI. Check the target hostname and optionally choose your framework; Let my assistant detect lets your coding assistant inspect the repository. Choose Copy prompt, then paste it into Cursor, Claude Code, Codex or another coding assistant with your project open.

The English prompt includes your public product ID (prd_8f3kq2m9x1), saved tracking preferences, complete script, framework guidance and verification checklist. Save preference changes before copying an updated prompt. View prompt shows the full text; if automatic copying fails, select and copy that text manually.

Review the changes and publish through your normal workflow, then choose Check my installation and follow Check your installation. Copying a prompt or passing a build does not confirm that Jelto has received traffic.

Install manually

  1. Open the Install tracking step, or Settings → Installation.
  2. Choose Install manually, select Your platform for matching instructions, then choose Copy code. Settings → Installation has the same picker as guided setup; Next.js shows ready-to-paste next/script code for the root layout.
  3. Paste the complete tag inside the shared <head> of your site, or into your platform's site-wide custom-code field. Use the platform guides for the exact location.
  4. Save and publish the website. A change in an editor preview is not necessarily live.

Wide dark Installation settings with the real tracking script outlined and badge 1 pointing to Copy code.

Copy the script for this product, paste it into your website, and publish your changes.

This example uses Jelto's standard cookieless script. Replace YOUR_PRODUCT_ID with your public product ID from Settings → Installation. If your copied tag uses a custom tracking domain, cookie mode or additional options, preserve those values.

<script defer
  data-product="YOUR_PRODUCT_ID"
  data-endpoint="https://app.jelto.io/v1/e"
  src="https://app.jelto.io/jelto.js"></script>

The product ID is a public collection identifier. A secret API key (jk_…) never belongs in this tag. Keep data-endpoint when your copied tag includes it, especially with a custom tracking domain.

Verify

Open the published website in a normal browser tab, visit a page, then follow Check your installation. Install the script once per HTML document; Jelto handles supported SPA history changes itself.

The first-visit check within Install tracking updates automatically and shows the latest received pageview for the selected hostname. While it is still waiting, it also tells you if Jelto is receiving pageviews from a hostname that isn't on the website's Allowed hostnames list, with a link to Allowed hostnames where you can add it. Once connected, choose View dashboard or Continue to your first goal. You can also continue while traffic is still waiting; the installation is only marked connected after Jelto receives a pageview. If nothing arrives, open Still waiting for a visit? below the check for troubleshooting tips.

Set up an app SDK (optional)

In Set up SDK, enter your app's name and platform, then choose Add app. Its SDK instructions open after registration. Choose your SDK and use Copy prompt with a coding agent, or switch to Install manually. See Connect a desktop app for SDK availability and verification.

Choose Continue to your first goal when you're ready, or Skip for now to leave SDK setup for later. Skipping does not register an app or mark its SDK as installed.

Connect revenue (optional)

Choose Stripe, Lemon Squeezy or Polar and follow the provider guide to create a key. Review the account and product scope before connecting, then follow Set up checkout to link payments to traffic. Payment history and checkout attribution are verified separately.

For Paddle or another provider, choose Other / Payments API for the server integration guide. Choose Go to dashboard to finish without connecting a provider; you can return through Settings → Revenue anytime. See Connect revenue for details.

Common problems

If only the homepage appears, move the tag to the shared layout. If nothing arrives, check the hostname, your content security policy, blocker extensions and the missing-data guide. If counts look doubled, check for duplicate installations.

For optional behavior, use Script configuration.

Track your first important action

After the installation check, choose Continue to your first goal. Name a successful action, such as signup, and add the generated call after that action succeeds. For a click, you can instead choose Website HTML attribute (no code) under Where the action happens and copy markup such as <a href="/signup" data-jelto-event="signup">Sign up</a>: the core script handles the click, while a form also needs the goals helper. Publish, perform the action in your site, then choose Check goal. The check confirms discovery of that custom event on the selected surface; check the Goals card with today included and filters cleared to verify the latest completion. Copying code alone does not verify a goal. This step is optional: choose Continue to revenue to move on, or Go to dashboard to finish setup.

Your required setup is complete once website collection is verified. Revenue and checkout remain optional next steps. Choose Skip for a feature you do not need, and the step shows Skipped; that choice is saved in this browser and can be reversed. SDK and revenue checkmarks in guided setup use actual receipts and connections.