So part of my site is asynchronously loaded with javascript. This part contains links to products. All these links also exist in my sitemap.xml.

I've tested with Googlebot Fetch and it doesnt see these links, probably because of the asynchronous javascript that fetches them from an api.

So my question is, does googlebot treat internal links differently from sitemap.xml links?

If a product exists both as an internal link on my page and in sitemap.xml is it more valuable than if it just existed in my sitemap.xml ?

  • Google prefers to be able to crawl any site. If your links cannot be crawled and pages can only be found via a sitemap, you will need to fix that. When there are a lot of pages that there are no links for, Google can penalize the site. A small amount is fine, however if there is a large percentage that cannot be found by crawling the site, Google thinks you are up to no good. Cheers!!
    – closetnoc
    Dec 25 '17 at 20:16
  • As the duplicate question explains, sitemap links are just not enough. To get your site maximally crawled and well ranked, Googlebot needs to be able to crawl the pages of your site through internal links. Dec 26 '17 at 17:37

Google should be able to render javascript as well. But it should be in ES5 and you shouldn't block any javascript resources. More info on: https://developers.google.com/search/docs/guides/rendering

If google can read your javascript, you should be able to see the result in the fetch & render tool or the mobile testing tool.

Regards Peter

Not the answer you're looking for? Browse other questions tagged or ask your own question.