Search code examples
amp-html

AMPs have stopped appearing in Search Results Pages. How to remedy?


For most of our pages, AMPs have stopped appearing in SERPs. The AMPs were showing 100% during the first week of October, and then started disappearing.

To provide some additional background information, we can look at one page: http://www.jmbullion.com/5-gram-perth-mint-gold-bar/

  • Early last week, a mobile search for "5 gram perth mint gold bar" showed the AMP version (of above page) as the #1 organic result. Today the main website is shown instead.
  • No changes have been made to the main page or the AMP page in the last several weeks.
  • The AMP is valid, and the schema is valid.
  • The Search Console shows the AMP as indexed and does not show any errors for the page.
  • When using the Search Console's "Fetch as Google" tool, we can fetch the page as Google (using desktop or mobile) and see the AMPHTML tag.
  • When we use the AMP batchGet API, to return the AMP URL of the page, the API returns NO_AMP_URL (Indicates no AMP URL has been found that corresponds to the requested URL).

Regarding the batchGet API, we just ran the API for our 50 most popular AMP pages, the API returned NO_AMP_URL for 24 of the 50. All 50 have valid AMP pages. A couple weeks ago the same API was returning the AMP URL for all 50.

It appears that something has changed, we have not been able to figure out what it is.

Main question: How can we re-enable the AMPs?

Few additional questions:

  • Does anyone know if Google has started to roll back AMP?
  • Are other companies experiencing the same problem with AMPs no longer appearing in SERPs?
  • Are there any other resources we can use to help diagnose and debug the problem?

Any clues or assistance would be greatly appreciated.


Solution

  • I ran into a similar problem and think it had the same cause. It seems like Google only scans a fixed-size chunk at the beginning of canonical pages looking for <link rel="amphtml"> tags pointing at AMP documents.

    My AMP pages stopped being returned by Google searches or the ampUrls.batchGet API once I added JSON-LD structured data above <link rel="amphtml"> in <head> in my canonical pages; doing so resulted in the <link rel="amphtml"> tags often not appearing until ~1300 bytes into the file.

    After I moved <link rel="amphtml"> back near the top of the <head> section, just below <meta charset>, and requested that my canonical pages be recrawled, the ampUrls.batchGet API was reporting the AMP versions within eight hours.

    Google appears to be returning the AMP version of the canonical page that you mentioned now, but I also note that the page now includes <link rel="amphtml" href="http://amp.jmbullion.com/5-gram-perth-mint-gold-bar/"> very close to its beginning. In the version of your page returned by the Google Cache, apparently crawled on 2016-10-27, <link rel="amphtml"> appears much later, 4975 bytes into the file. This is why I think you were experiencing the same problem as me.

    I've filed an amphtml bug requesting that this be clarified in the documentation.