Flash
Flash

Reputation: 16703

For SEO, can I just serve a static HTML alternative version alongside my Angular app?

I have a single page AngularJS app and I want the initial page render to contain all relevant info as HTML so it is crawlable with JavaScript disabled.

For simplicity I was thinking of just adding an alternative HTML version which is hidden when the Angular app loads.

<div>
    <!-- Static page content for crawlers, hidden when Angular app loads -->
</div>

<!-- Angular app -->

What are the drawbacks to this approach (serving a complete pre-rendered copy)? The angular app draws data from a JavaScript object rendered as part of the page and I am happy to live with the data being sent twice.

Upvotes: 1

Views: 825

Answers (2)

Robert AJS
Robert AJS

Reputation: 149

Google have defined a specification that lets you serve snapshots of your page's HTML after all necessary Javascript has run to search engines.

This is supported by Google, Bing, Yandex and even some social network bots: Here are the details of who supports it: http://blog.ajaxsnapshots.com/2013/11/googles-crawlable-ajax-specification.html

Implementing this youself is a fair bit of work, so several companies including https://ajaxsnapshots.com (who I work for) provide it as a service that you can plug into your web server without making any changes to your app.

Upvotes: 3

skewl84
skewl84

Reputation: 184

A search engine bot doesn't really care whether the content is hidden/ visible.

The search engine bot would crawl through almost the entire content of the page.

Therefore its highly recommended to have only the relevant content in place.

Upvotes: 1

Related Questions