Closed Bug 1478593 Opened 6 years ago Closed 3 years ago

www.rithmschool.com - Delayed load with Basic Tracking Protection enabled

Categories

(Web Compatibility :: Site Reports, defect, P3)

Firefox 62
x86_64
Windows 10
defect

Tracking

(firefox87 fixed)

RESOLVED FIXED
Tracking Status
firefox87 --- fixed

People

(Reporter: sergiu, Unassigned)

References

()

Details

(Whiteboard: [tp-analytics][tp-shim-trivial][tp-site-ephemeral])

User Story

www.google-analytics.com
Website is stuck in an emptry state on background color for a few seconds with tracking protection enabled. Happens during all navigations.

Doesn't occur with TP off or in Chrome
This is related to `trackingprotection` breakage #1101005

Looking at the devtools console, here are the blocked resources:

The resource at “https://www.googleadservices.com/pagead/conversion.js” was blocked because tracking protection is enabled.[Learn More] www.rithmschool.com
The resource at “https://connect.facebook.net/en_US/fbevents.js” was blocked because tracking protection is enabled.[Learn More] www.rithmschool.com
The resource at “https://fullstory.com/s/fs.js” was blocked because tracking protection is enabled.[Learn More] www.rithmschool.com
The resource at “https://cdn.mxpnl.com/libs/mixpanel-2-latest.min.js” was blocked because tracking protection is enabled.[Learn More] www.rithmschool.com
The resource at “https://www.google-analytics.com/analytics.js” was blocked because tracking protection is enabled.[Learn More] www.rithmschool.com
The resource at “https://www.googleadservices.com/pagead/conversion.js” was blocked because tracking protection is enabled.[Learn More] www.rithmschool.com
The resource at “https://static.hotjar.com/c/hotjar-765746.js?sv=5” was blocked because tracking protection is enabled.[Learn More] www.rithmschool.com
The resource at “https://api.segment.io/v1/p” was blocked because tracking protection is enabled.[Learn More] www.rithmschool.com
The resource at “https://connect.facebook.net/en_US/fbevents.js” was blocked because tracking protection is enabled.[Learn More] www.rithmschool.com
The resource at “https://www.google-analytics.com/analytics.js” was blocked because tracking protection is enabled.[Learn More] www.rithmschool.com
The resource at “https://www.googleadservices.com/pagead/conversion_async.js” was blocked because tracking protection is enabled.[Learn More] www.rithmschool.com
The resource at “https://www.fullstory.com/s/fs.js” was blocked because tracking protection is enabled.[Learn 
The resource at “https://snap.licdn.com/li.lms-analytics/insight.min.js” was blocked because tracking protection is enabled.[Learn More] www.rithmschool.com
The resource at “https://analytics.twitter.com/i/adsct?p_id=Twitter&p_user_id=0&txn_id=nzbje&events=%5B%5B%22pageview%22%2Cnull%5D%5D&tw_sale_amount=0&tw_order_quantity=0&tw_iframe_status=0&tpx_cb=twttr.conversion.loadPixels&tw_document_href=https%3A%2F%2Fwww.rithmschool.com%2F” was blocked because tracking protection is enabled.[Learn More] www.rithmschool.com

So these are the domains to test:

fullstory.com
cdn.mxpnl.com
www.google-analytics.com
www.googleadservices.com
static.hotjar.com
api.segment.io
connect.facebook.net
snap.licdn.com
analytics.twitter.com

I opened the URL in a fresh browser profile (Firefox Nightly 63, uMatrix installed, normal mode) and loaded the page. The page loaded with a small delay.

I disabled the Spoof Referrer option in uMatrix and then *WHITELISTED*:

www.google-analytics.com

After this, the page loaded with no delay.
The other resources didn't help.

http://prntscr.com/kb7b34

www.google-analytics.com can be found in disconnect-blacklist.json, disconnect-entitylist.json and disconnect_mapping.py

So in conclusion:

www.google-analytics.com - Analytics = [tp-analytics]
User Story: (updated)
Whiteboard: [tp-analytics]
Component: Desktop → Tracking Protection
Product: Tech Evangelism → Firefox
Version: Firefox 62 → 63 Branch
Component: Tracking Protection → Desktop
Product: Firefox → Tech Evangelism
Version: 63 Branch → Firefox 62
See Also: → 1484692
Product: Tech Evangelism → Web Compatibility
Type: enhancement → defect

This is caused by Google Analytics being blocked, as the site is intentionally hiding their content with the AsyncHide Google Optimize snippet until it has loaded, timing out after 4 seconds:

<!-- Fullstory script -->
<style>.async-hide { opacity: 0 !important} </style>
<script>(function(a,s,y,n,c,h,i,d,e){s.className+=' '+y;h.start=1*new Date;
h.end=i=function(){s.className=s.className.replace(RegExp(' ?'+y),'')};
(a[n]=a[n]||[]).hide=h;setTimeout(function(){i();h.end=null},c);h.timeout=c;
})(window,document.documentElement,'async-hide','dataLayer',4000,
{'GTM-T8LFJG2':true});</script>

This has of course caused problems for tracking protection solutions.

Basically we just need to shim https://www.google-analytics.com/analytics.js so that it runs this instead of being loaded:

window['dataLayer'].hide.end()
No longer blocks: tp-breakage
Whiteboard: [tp-analytics] → [tp-analytics][tp-shim-trivial][tp-site-ephemeral]

The issue seems to be fixed, with ETP - Standard enabled, the page loads fast.

Note: The issue still occurs with ETP - Strict enabled.

Tested with:
Browser / Version: Firefox Nightly 86.0a1 (2021-01-12)
Operating System: Windows 10 Pro

Status: NEW → RESOLVED
Closed: 3 years ago
Resolution: --- → FIXED

(In reply to Thomas Wisniewski [:twisniewski] from comment #2)

Basically we just need to shim https://www.google-analytics.com/analytics.js so that it runs this instead of being loaded:

Google Analytics shims were added in bug 1637329 and enabled in bug 1693386 for Firefox 87.

See Also: → 1713688
See Also: → 1713687
You need to log in before you can comment on or make changes to this bug.