Does ConvertFlow slow down my website?

ConvertFlow's website script and CTA scripts are lightweight, loaded asynchronously and served through CloudFlare's global CDN, meaning by default it will not slow down your website contents load speed. 

However, this doesn't mean that the CTA contents you add to ConvertFlow, won't affect your website's load speed negatively.

Here are the main pitfalls to look for as your ConvertFlow implementation grows in size:

External assets used in the builder

ConvertFlow's CTA builder lets you add as many images, Google fonts, video embeds and custom code as you would like. 

All of these assets are loaded into your website and can effect performance.

The common culprits are:

Using too many Google Fonts

Each Google Font requires loading multiple files for each weight of each font (regular, italic, bold etc). When there are too many Google Fonts used, this compounds and greatly slows down your website. 

For optimal performance, it's ideal that 1-2 Google Fonts be used by all of your CTAs, to prevent font bloat on your website. 

Also, if your website theme is loading in it's own fonts, you can use the "Use site font" font option and the ConvertFlow text can inherit the font styles your website theme has set for its HTML tags on your website (h1, h2, p etc), preventing any additional fonts from being loaded in. 

Heavy images

ConvertFlow's image manager automatically resizes and compresses images. Then, the images are served through CloudFlare's CDN, where they are cached, converted into lighter weight image formats and served from the nearest edge location.

Nevertheless, using a large number of sizable images, served by ConvertFlow on a single page, will require more bandwidth from visitors and decrease your performance score.

Also, ConvertFlow's builder lets you swap image URLs with your own hosted image URLs, which won't be ran through the same compression and performance optimizations that uploaded images go through.

Video embeds and backgrounds

Internet video is heavy, requires a lot of bandwidth and slows pages down. In fact, as of 2021, 60% of all internet bandwidth is from video streaming.

So including video on your website will decrease performance. ConvertFlow lets you embed videos through its builder. It also supports video backgrounds too. Use video sparingly.

Custom code, scripts and CSS

ConvertFlow makes it easy to add your own custom HTML, javascript and CSS. However, these assets aren't optimized by ConvertFlow, so you're responsible for making sure any custom code is performance optimized.

Too many preloaded CTA campaigns on a single page

To ensure fast injection and presentation of CTA campaigns on your website, ConvertFlow preloads the CTA campaigns that are targeted to the current page, even if the popup CTA is not triggered (upon exit intent, time delay, scroll, button click etc).

As you launch CTA campaigns on your website, it's possible to launch so many onto the same page, that collectively they create a large enough footprint on the page that it slows down performance.

Here are the scenarios that can cause preloaded CTAs to "bloat" your page:

Conflicting popups

Whichever popup CTA displays first will take priority over other popup campaigns targeted to the page of the same popup CTA type (overlay, hook, sticky bar), but won't prevent the other popup CTAs assets from being preloaded onto your page. 

So if you have 2 overlay popups targeted to your home page, one showing after 3 seconds and the other upon exit intent, if the visitor sees the 3 second popup first, the exit intent popup won't trigger but will still be preloaded onto the page.

Click-triggered popups

Popup CTAs can have the trigger set to "Upon click only". The popup CTA is then triggered upon clicking other ConvertFlow CTAs, or HTML on your site that has the CTAs click trigger class. 

While popup CTAs opened by other ConvertFlow CTAs using the "Display a CTA" confirmation type are intelligently loaded in upon the button click, popup CTAs that are triggered by custom HTML on your site with the trigger class need to be launched to the respective page for it to trigger. 

This means the CTA assets will be preloaded on the page before the custom HTML click-trigger. 

To prevent click-triggered popups from bloating your website, make sure they are targeted only to the page where your custom HTML click-trigger is located. Otherwise, they will be unnecessarily preloaded onto pages of your website where they won't display.

Conflicting embedded CTAs targeted to areas

ConvertFlow lets you set up "area" placement snippets on your website, so you can easily target embedded CTAs to parts of your website content, without having to revisit the code to install an embed snippet each time you launch a campaign.

When you've targeted an embedded CTA to an area of your website, ConvertFlow preloads the CTA and displays it if the respective area snippet is found. If the area snippet doesn't exist on the page, or it is already populated by another embedded CTA, any embedded CTAs targeted to that area are still preloaded. 

The solution to prevent lots of embedded CTAs, targeted to areas of your website, from unnecessarily preloading on pages where the area doesn't exist, is to add targeting conditions to the embedded CTA campaign to make sure it loads only on the pages where the area is placed.

How to quickly troubleshoot this:

ConvertFlow makes it easy to see which CTA campaigns are targeted to the current page using the admin widget. Use this to spot lots of actively targeted CTAs to page, and inspect why they are targeted.

Then, use those insights to tighten the targeting of the CTA campaigns, to make sure they don't unnecessarily preload onto pages where they won't be triggered.

If you've determined that an active CTA campaign no longer needs to be preloaded, deactivate it by turning off the CTA campaign from the launch page.

You can also archive the CTA to prevent its metadata from being loaded onto your site entirely, if you don't plan to use the CTA again but would still like to reference its stats.