Skip to content
Convor
Convor Docs

Widget Performance

Keep the hosted Convor widget fast without maintaining Convor infrastructure yourself.

The production widget is loaded asynchronously from Convor's hosted assets. Your site should treat the embed as a single third-party script and avoid adding custom loaders or duplicated initialization around it unless your application has a specific integration requirement.

Use the code copied from Settings → Widget → Installation and security:

<script
  src="https://cdn.convor.io/widget.js"
  data-key="convor_wpk_..."
  async
></script>

Place the snippet once. Loading it more than once creates unnecessary browser work and can make troubleshooting harder.

Avoid unnecessary configuration

Keep appearance and behavior in the Convor dashboard. Do not duplicate hosted service addresses, visual settings, or transport configuration in tag managers and application environment variables.

Use window.Convor only for values that genuinely come from the current application session, such as signed-in customer data or SPA route changes.

Diagnose slow loading

When the widget is noticeably slower than the rest of the page:

  1. Test the page without browser extensions and content blockers.
  2. Use the browser Network panel to determine whether the delay is before widget.js loads or during a later request.
  3. Check whether your Content Security Policy, proxy, DNS filter, or firewall is delaying or retrying Convor requests.
  4. Confirm the embed is present only once and is not being repeatedly inserted by a client-side route change or tag-manager trigger.
  5. Compare the same page in another network before changing application code.

Single-page applications

The widget observes normal browser history changes. If your router represents a logical route without updating the browser URL, call Convor.setPage() after navigation instead of destroying and reloading the widget.

await Convor.setPage({
  url: currentRoute,
  referrer: previousRoute,
});

Keeping one widget instance for the page lifetime avoids unnecessary reloads and preserves the visitor session.

Was this page helpful?

On this page