Skip to main content
Skip table of contents

Katalys Automated Monetization (K.A.M) Performance

The Katalys Automated Monetization (K.A.M) script captures basic behavioral data on users so that we can service your account, provide you with dashboards, and give you the most accurate attribution possible. To perform these activities, we have built the K.A.M to be as performant as possible. In short, we know it’s important for our script to be as light and fast as possible because we are motivated by the same performance considerations you are.

Design Decisions

Our script makes very few decisions synchronously. This means our script makes generous use of “timers” so that processing happens outside of the user’s normal interaction. This allows the content on your website to load as fast as possible while our script takes a “backseat” and waits for everything else to load.

We also record data using the latest browser APIs, leveraging asynchronous, non-blocking means in 99% of modern browsers. This keeps any network requests outside of the normal event loop, keeping your user experience snappy.

My tool says your script is slow!

Many performance tools measure the number seconds a script takes by comparing the time the script was first loaded with the time the script “finishes”, typically defined as the time the script no longer has any more work to do. Since we have purposefully delayed our functionality to run after other content on the page, this means our script can be penalized for “taking too long” when really our script was just waiting for other content to load first.

What you can do

If you need the lightest, fastest tracking script possible, then follow these steps:

  • Disable any features you’re not using. This includes Link Replacement or Shop Replacement features.

  • Put the script in the <body> tag, and make sure to include the async HTML parameter so the script remains non-blocking.

Back to User Guide for Partners

JavaScript errors detected

Please note, these errors can depend on your browser setup.

If this problem persists, please contact our support.