Content Flashing / Flicker
Why are so many companies ok with it?
Many companies are ok with flicker because when they end up analyzing the positive impact of personalization through their analytics platform before scrutinizing the site performance they see a lot of value such as higher engagement and click through rates. It's normal to have scrutiny on site performance, nearly every company does but every company has to make a choice between performance and marketing/sales results. If the business sees value in personalization and can measure it or even attribute real impact then they will also make the case to sacrifice performance a bit.
What is flicker and what causes it?
Demandbase is an ASYNC call - this means if the service is down for some odd reason, your content continues to load as pictured in the blue graph below. Otherwise if you loaded Demandbase Synchronously, as picture in the red line, there is a chance that your content will get blocked from loading. Also by definition, the more the content that is "to-be-changed" physically renders on the page, the more it will flash because there is more of it rendered.
In the Async world, while the data is being fetched, the banner is loading various images, text and buttons are also loading. By definition the content MUST load prior to changing it, you can't change something that doesn't exist.
In the synchronous world, the data is fetched prior to creating any elements. This dramatically reduces flicker from happening but it increases the risks of site performance for those rare occasions the service is delayed or not ready.
How to reduce flicker?
In the safe async world, you can't expect 0 flicker. By definition, you're sacrificing a little flashing of content for the safety of your content.
- Make sure the Tag is deployed as high as possible on the page to grab the data quicker
- Don't switch giant images that are heavy on the browser, it makes it super obvious