Personalization Impact on SEO

Personalization and conversion optimization help marketers increase revenue by tailoring the right content, to the right context, to the right person — optimized across channels and devices. Client-side personalization is achieved by serving dynamically generated content with various implementation methods using JavaScript.

As the impact of JavaScript-injected content on sites' Search Engine Optimization (SEO) has yet to be comprehensively determined, below is a summary of experiments conducted to determine how Dynamic Yield's dynamic content affects sites' SEO, including Google crawling and indexation.

Our validation method included the use of unique strings in order to identify dynamic content in (Google) search results.

Read the Experiment

Below you'll find a series of experiments conducted on this page to show whether Google can render, crawl, and index dynamically-generated content. We tested six different client-side implementation methods, including content personalization, pure JavaScript-based personalization, and recommendation widgets. Here are the documented results for each implementation method.


TL;DR: Googlebot is able to crawl and indexes Dynamic Yield's JavaScript-based content. Content generated using Dynamic Content, Custom Actions and Recommendations is indexed as plain text in Google's search engine results page (SERP). Results are valid for all Dynamic Yield implementation methods.



Dynamic Content (Inline)

Dynamic Content components traditionally allow marketers to replace static web components with dynamic content (e.g. dynamic rule-based banners, dynamic sliders with data feed based content etc.). Inline code is the standard form of implementation, which includes copying and pasting the Dynamic Content JavaScript code directly into the website source code.

Source
<div id= "dy_SEO_Demo_Inline_SO"></div> <script type="text/javascript"> DYO.smartObject( "SEO Demo Inline SO", {target: "dy_SEO_Demo_Inline_SO", inline:true}); </script>
Dynamic Yield's Output

Crawled and Indexed by Google (last verified: Apr, 2021)

Test Result

Dynamic Content (Placement)

Dynamic Content may also be implemented dynamically, via JavaScript DOM replacement, by targeting designated CSS selectors on a site or a web page and placing a Dynamic Content component automatically before, after or instead of such CSS selector - without the need to access the source code.

Dynamic Yield's Output

Crawled and Indexed by Google (last verified: Apr, 2021)

Test Result

Dynamic Content (Inline Placement)

Implementing Dynamic Content components via Inline Placements is another method, which requires accessing the source code of the website, and copying and pasting the relevant dynamic code onto the exact position on the site's page where the Dynamic Content component is to be rendered.

Source
<div id= 'dy_placement_SEO_ Test_SO_Inline_Placement' data-dy-placement-id=' SEO_Test_SO_Inline_Placement'> </div> <script type='text/javascript'> DYO.smartPlacement( 'SEO_Test_SO_Inline_Placement', {target: '#dy_placement_SEO_Test _SO_Inline_Placement', inline: true});</script>
Dynamic Yield's Output

Crawled and Indexed by Google (last verified: Apr, 2021)

Test Result

Dynamic Content (Custom Action JS)

Personalization can also be implemented using custom JavaScript actions. Custom Actions can be used to dynamically implement Dynamic Content components, or manipulate the existing code of a website or a web page.

Dynamic Yield's Output

Crawled and Indexed by Google (last verified: Apr, 2021)

Test Result

Recommendations (Placement)

The most common and standard implementation method for product or content recommendation widgets is Placements. Placements are used to designate CSS selectors on a site, and place a recommendation widget automatically before, after or instead of such CSS selector - without the need to access the source code.

Dynamic Yield's Output

Crawled and Indexed by Google (last verified: Apr, 2021)

Test Result