Consent Pro blocking load on mobile Safari

Description

When I load my homepage on mobile Safari on an iPhone (brand new iphone), there is a 15 second block that happens before anything on the site loads. I spent a lot of time with tracking network requests and the timeline. I finally just removed the consent pro script and everything loads normally. I now uncommented the Consent Pro script and I am back to having this issue on mobile Safari. Everything works fine on desktop for both Chrome and Safari.

Site URL

Required: Please provide a staging/production URL where we can see the issue

Steps to Reproduce

  1. Open mobile Safari on an iPhone
  2. Go to https://www.enji.co
  3. You will see about an 18 second load time
  4. If you use Web Inspector for your iphone, you will see there is a 15 second lag before anything loads
  5. If I remove the consent pro script, everything loads as normal in a few seconds.

Expected Behavior

page should load in 3-4 seconds typically

It only seems to do this on the homepage and the /why-enji page (there are a few others too but mainly new pages) and other pages seem to load normally. All pages have the consent pro script loading on them.

Further Analysis

ConsentPro appends a stylesheet and waits for its load event (the part that hangs on Safari). A pending like that holds the window.load event until ConsentPro’s ~timeout aborts it. And Webflow’s page-load reveal animations (elements set to opacity:0, then faded in on load) won’t fire
until load — so on pages that use those animations, your content sits invisible for 15s. On pages without load-reveal animations, the content just shows normally, even though
ConsentPro is still delaying load in the background.

So our pages with animations - homepage, /why-enji, etc have animations.

Any feedback and are other users hitting this?

Hey @bhol!

Looking at your page code, we spotted two things that are very likely contributing to this delay.

First, both the old CookieConsent and the new Consent Pro systems are running at the same time. Your page has the legacy CookieConsent markup (fs-cc-banner, fs-cc, fs-cc-scroll, fs-cc-prefs, fs-cc-checkbox) alongside the new Consent Pro setup (fs-consent-element, fs-consent-instance). The migration guide is explicit that when moving to v2 you need to remove the legacy CookieConsent markup entirely — the old banner, preferences panel, and anything left over in the Code Added by Apps section. Running two consent systems simultaneously is likely creating conflicts and extended blocking behavior, especially on mobile Safari where script execution is stricter.

Second, the Consent Pro script is loading at the bottom of <body> instead of in <head>. Consent Pro needs to evaluate consent state as early as possible — loading it late means any scripts it manages stay blocked while it waits to initialize. It should be placed in <head> without async or defer.

Here’s what we’d recommend trying, in order:

  1. Remove the entire old CookieConsent wrapper — find the cookie-consent--wrapper div in your Webflow project and delete it, including everything with fs-cc-* attributes.
  2. Move the Consent Pro script to <head> in your Webflow Site Settings custom code, not the footer or via a bundle.
  3. Test on mobile Safari after both changes to see if the delay clears up.

One thing we also want to flag internally — the Tapfiliate script on your page uses fs-consent-scripttype="text/javascript" and we want to verify whether that’s the correct v2 attribute or a leftover from v1. We’ll raise that for review. :folded_hands:

Let us know what you find after making those two changes — that should be the most impactful first step.

Hey thanks for your reply! I did find the legacy cookie-consent–wrapper and removed all instances of it from the project. I removed the old code plugin a long time ago so nothing more to remove there.

In the style selector, there are lots of fs-cc attributes but cannot locate them in the project.

The script for Consent Pro V2 is the very first thing in my custom code head section and has always been that - not sure why you are seeing different.

Not sure how I remove any further lingering issues from here as the cookie-consent–wrapper is done.

Page load on mobile has not changed.

Any further feedback on how to complete the cleanup? Thank you!

Hey @bhol

The team is looking into this
Could you please share your iOS version/iPhone model & if possible the Web Inspector network trace showing the 15 sec stall on api.consentpro.com

How to get the network trace

On the iPhone:
Settings → Safari → Advanced → Web Inspector
Toggle ON

On the Mac:
In the Safari browser menu bar:
Settings → Advanced
Check “Show features for web developers”

Capturing the trace

  1. Connect the iPhone to the Mac with a USB cable
  2. On the iPhone, open Safari and head to the site https://www.enji.co
  3. On the Mac, open Safari then on the menu bar:
    Develop → [the iPhone name] → enji.co
  4. This opens the Web Inspector connected to the iPhone’s Safari tab
  5. Click the Network tab at the top of Web Inspector
  6. Reload the page on your iPhone so the network trace restarts
  7. Watch the network requests appear and wait through the full 15-second stall

What to look for

Once the page loads, find the request for api.consentpro.com in the waterfall
Click it and look at the timing breakdown on the right side

E.g.
Queued:
DNS: DNS lookup
etc..

The 15-second stall will be visible as one extremely long bar
Screenshot that timing panel

Also please share location (country)

Thanks

Hey Jesse,

My iOS is 26.5.1 and my iPhone is the iPhone 17 Pro. My wife is having the same issues on the same iPhone model (and we have seen this in the past too 6 months back).

I am attaching an image of the network trace - you can see the issue. It isn’t that something takes a long time to load. It is that there is a stall for 15 seconds after fetching some initial scripts like consent pro which is really the controller for all of the other scripts.

Thanks for your help!

Ok awesome @bhol thanks for this, I’ve passed it all to the team

and location is California, USA

Hey @bhol

The team is having trouble reproducing this, could you please share a screen recording of the site on load, it would be good to see it in action

Some additional clarification questions from the devs

Is the issue is consistent or just happens randomly?
If it happens randomly, does it happen specifically after publishing the Webflow project?
We cache the Consent Pro library internally, so it’s served fast via CDN, but we invalidate the cache when the Webflow project is republished, so the first load after publishing may be slower.