There is nothing about an AMP page that makes it inherently faster until it lands in and is served by a Google regional cache server. Otherwise my site is going to be just as fast. I can make just as fast web pages and serve them from a server sitting in the same state as my customers. There will be no need for Google level scale for my site as it is regional. Yet I still get put below AMP sites.
From many different angles, AMP getting preferential treatment is heavy handed and clumsy, manipulative and forcing technology standards on the web that no one agreed on.
AMP limits what the page can do, and allows Google to safely serve content through a cache. So Google can preload and prerender the page in an iframe. As a result clicks on the carousel are literally instant. That can't be done safely with a regular HTML page.
I can serve content in miliseconds after the network request has been made. Near enough to appear instant to my users. I have caches too.
You can't help the network request if it has to be made when the user clicks but there is nothing stopping browsers from preloading my site and nothing stopping google from noting that my site could be preloaded when it crawls it. Limiting ranking influence to sites with the AMP structure is an option Google has decided to make and not an inherent restriction in the technologies at play.
The technology behind AMP is very cool mind you, I just find it being an exclusive ranking factor to be an unecessary pressure to use their technology when many other technologies could work just as well. Google is a major force in the way people make websites and they are being very heavy handed in this instance.
> nothing stopping google from noting that my site could be preloaded
There's a whole host of security problems with trying to see if an arbitrary site can be preloaded. Logging, tracking, etc, not to mention more nefarious tricks like mining Bitcoin in the background.
Maybe Google could try to detect those things, but then you just end up in a cat and mouse game. A "safe" subset of html and js that can't do those bad things is much, much easier to analyze. One such subset is AMP.
A safe subset of html that they can analyze could be summarized in a document and ranking things higher that conform to that subset. That is not what AMP is.
That is exactly what AMP is attempting to be. It's a subset of HTML and CSS which guarantees that the site can be preloaded in a privacy-preserving way. There are a lot of things sites want to do that can't be done in pure HTML and CSS and allowing full use of JS would be incompatible with this goal, so that gap is filled with open source libraries.
(Disclosure: I work at Google on Ads, and I work with the AMP folks a bunch. Speaking for myself, not the company.)
I'm curious what you think AMP is then, because what you describe is, quite literally the AMP projet. (Google, as well as Cloudflare and Bing also add a cache on top of things to make the preloading faster, but that's not technically a part of the AMP standard).
I'll grant you that the branding/communication here is atrocious, but as I'm reading this, what I'm seeing is "They should have implemented <description of AMP>, instead they implemented AMP, which is much worse."
TIL <amp-img> is a standard HTML tag that works without loading the AMP JS.
AMP supports a subset of standard HTML, plus a whole bunch of AMP-specific extensions. That's a significantly different thing from being just a safe subset of HTML.
Webcomponent custom elements are part of the HTML5 standard.
`<literally-any-element-name-i-want-here>` is a valid subset of html. You added the "standard" modifier, which like, I mean, WebComponents are part of the standard, so using them is still a subset of standard HTML.
If you mean "they should have limited themselves to using older HTML APIs and doing custom polyfills based on css-classes instead of element names", which is probably closer to what you actually mean, I'd ask why.
The behavior would, in general, still be the same. You'd be required to include some metadata information, you'd be restricted to some amp.js provided to you, and you'd need to use class='amp-html' instead of <amp-html>. And that would be the entire difference.
So wait, the AMP project is just a document saying limit yourself to these things and we will rank you higher in search results because these things will make your site perform better and we want better performing sites?!?
Wow, color me disabused of the notion that AMP added stuff on top of that simple requirement to allow capture of publishers by Google, I had assumed bad intent and invented fanciful scenarios of what I would do if I were an evil corporation trying to control the web like requiring people to load my script on their pages and only using my analytics library so I would have all that data for me, or maybe just create a 'standard' set of components that I control and have people use those so they have tied up money in implementing my tech and I have lock in and in order to keep their ranking in my search app they sink more and more money into doing things the way I want, increasing my capture of them.
All sorts of evil stuff I might do, but gee, it turns out all Google did was publish a document saying use this stuff that is already standardized, and leave out these parts of the standards because they can be problematic and make things perform badly, and we will rank you higher in search results. Nothing else, just rank you higher.
Now I'm really sorry I thought Google was as evil as I am likely to be when working in a group of people trying to control a market. Google is as pure as the driven - gee, I don't know what, Snow? No, Climate Change means that metaphor is soon no more, what else can be driven, hmm, oh I know, a sociopath! Google is as pure as the driven sociopath, that sounds good.
> So wait, the AMP project is just a document saying limit yourself to these things and we will rank you higher in search results because these things will make your site perform better and we want better performing sites?!?
Yes. Or at least, in practice its not really distinguishable from this other than technical nits that aren't practically relevant to the overall design or what anyone complains about.
>requiring people to load my script on their pages and only using my analytics library so I would have all that data for me, or maybe just create a 'standard' set of components that I control and have people use those so they have tied up money in implementing my tech and I have lock in and in order to keep their ranking in my search app they sink more and more money into doing things the way I want, increasing my capture of them.
These are the things you have to limit yourself to. You have to limit yourself to predetermined subsets of Javascript, because if not there's no way to ensure the safety/speed/etc. of the site.
You're shifting goalposts here. Now you want the set of things you're limited to using to be broader than is possible for valid technical reasons. You're also conflating AMP and Google, which like valid, because its confusing, but again, AMP doesn't require Google anything. So all of your complaints about forcing you to use Google's analytics library or include Google's JS aren't true. Yes, for AMP (JS) to work you need to include a Cache's JS, and Google is the biggest cache, but they aren't the only one.
As for the rest of your post:
> Don't be snarky. Comments should get more civil and substantive, not less, as a topic gets more divisive.
Suppose that this is true and that there is no way to achieve this without AMP. Are we going to route the whole web through Google's server so that pages are rendered faster? This is getting silly.
I can't help but wonder what problem they're solving for. Is there a huge market of people clamoring to make webpages load faster than they already do?
You should try loading "the modern web" over a not great but passable phone connection (ie 3G maximum) on a non-flagship phone. Nearly every normal website you will have an exceedingly bad time on. That's what AMP claims to solve. Far be it from me to claim they succeeded or that they are doing it in the right way, but I think pretending the problem doesn't exist at all is disingenuous.
AMP is a terrible user experience though. Google Search on mobile is - pardon my language - fucked now. I hate it. I get trapped in the cache, getting to the actual source is pain, there's some stupid bar on top, websites are showing their own bars to signify that the user is not actually on the website. And I'm a techie, I know how this works! I imagine regular users must be utterly confused.
Thanks for voicing this out. I'm on the same boat, AMP is a terrible user experience. It takes me multiple clumsy steps to get to the content page I thought I was getting to when I clicked a link.
Apart from that a lot of websites started showing an overlay on top of the AMP pages, clicking on AMP pages don't work as expected a lot of times, it has a noticeable delay between actions (scrolling/tapping).
I disliked AMP when I first started seeing it but the way it has evolved has made the experience way worse than it started with... Probably because Google also caved in and tried to cater to customisations requests from big publishers.
I have 4G and a top end phone, and mobile web is getting worse by the day.
The first solution is not AMP. The first solution is to go back to when a web page was a "page", not a program made up of cobbled together bits of JavaScript.
Cookie preference popups, join the newsletter popups, animated or dynamic ads, and everything else stupid websites do that causes the browser's rendering engine to grind away non-stop...
The current user experience is worse than I think it ever was.
But as other posters have comments, AMP is probably intended to be a control and data tracking system first, with user experience being second or lower priority.
Google can't block ads and tracking scripts in Chrome without either blocking their own, or facing (valid) claims of anti-competitive behaviour. Neither of which would get the person who did it promoted.
And no attempt to fix the slowness of the modern web will succeed without blocking ads and tracking scripts.
This is the downside of the dominant browser being made by and ads-and-tracking company.
I'm not sure that graph shows what you think it shows.
That graph shows that there's an obnoxiously large number of websites that don't support something that there's zero reason not to support.
It costs $0 and takes maybe half an hour to implement, browsers are screaming "not secure" to each visitor, and one in five websites still don't support it. "Make websites faster", on top of being vague, is way more difficult to implement.
You don't have to convince anyone, it's about incentives. The article and many others have shown exactly how to do this: make the metric a big part of search rankings.
If fast site performance ensures you get listed first, every site would get faster overnight.
Yes. In many areas where phones are the main tool used to access the internet, and coverage is primarily still 3G. Not defending AMP - but making pages load faster is still something people want and need.
I did a mobile Google search for "Trump" to bring up the top news section on Google, and was able to find sites (generally non TV-news sites which aren't doing video with every story) that weighed less than 1MB:
Sure. But USA Today EU is not really a fair example. You can‘t really expect publishers to serve absolutely no ads and tracking at all. Unless you want them to die. There are initiatives like Apple News+ and Subscribe with Google but they are not mainstream yet. And individual subscriber options for news portals are way to cumbersome (and perceived as too expensive) for users.
I agree, but the solution is for ad companies to improve so you don't need tons of JavaScript to display an advert. Why can't they be done server side, rather than handled by client side JavaScript? A lot of web apps now employ SSR, so having the adverts use SSR should considerably speed them up
I ran all links below with Google Chrome Tools enabled, no cache. Switched to mobile view to make sure that AMP pages are loaded. Cache disabled to see the actual weight of the page.
So, AMP is worse when served from Google. And on par with non-AMP version
---
The New Yorker AMP: 129 requests (and they keep coming). 796 KB transferred. 1.9 MB resources
The New Yorker AMP not served from Google [3]: 70 requests (and they keep coming). 745 KB transferred. 1.5 MB resources
The New Yorker non-AMP page[4]: 245 requests (and they keep coming). 8.2 MB transferred. 13 MB resources.
So. The only example where the AMP page is significantly better than the non-AMP pages.
---
But the page weight is already accounted for in Google Search algorithms, and The New Yorker page should have been deprioritised from search. It's not, it's in the carousel, it will redirect to the 13MB version on desktop. Meanwhile, as Vox, and USA Today and many many many others show, the regular properly made website will not differ significantly from AMP versions.
As a former SRE for Google who cared for AMPHTML FROM BIRTH, NOBODY IS FORCING YOU TO USE AMP. In return for free hosting of the web content the publisher agrees to use the AMP format/subset. The whole point of the project was to stop walled gardens, like BBC app, like CNN app,etc., which arose because of crappy slow web pages! That was killing the searchable mobile web! AMP is to enable mobile search! The motivation is in the first page of every dang design doc for AMP at Google! You might be really surprised to learn that your supposed plan for world domination is run on a shoestring and a low priority at Google!
Wow, a "shoestring low priority" project gets top search result placement, a custom icon callout, and cannot be disabled. What do the high-pri projects get?
When it affects your bottom line by changing ranking factors then it is no longer as optional as you make it out to be.
Google decided to dominate the search world, and it now underpins a huge portion of online businesses. That comes with a level of responsibility to be fair to it's patrons that in this particular instance I feel isn't being met.
Of course they can do whatever they want, it is their product, but we don't have to like it.
It's quite ironic that Google is getting into trouble with the EU for nonsense like excluding search engine spam from its results, when it's stuff like this that really has that classic Phone Company feel to it.
The problem is that doesn't work to produce desired behavior. If you slap them for the wrong stuff then one of two things happens.
The first is they conclude they're going to get slapped no matter what and then do whatever they want and write off the penalties as unavoidable because better behavior doesn't actually avoid them anyway.
The second is they conclude that the only way to avoid the penalties is to grease the right palms, you induce them to figure out how to do that, and then they still do whatever they want because once you force them to corrupt your institutions in order to not be treated unfairly, those institutions no longer threaten them even when they misbehave.
The only scenario that leads to behavior improvements is the one where all the penalties are assigned justly and proportionally, to behavior that could reasonably be predicted ahead of time as prohibited.
None of the FAANG is being slapped by the EU for the wrong stuff. They aren't being slapped for your specific example (yet) but that doesn't mean that forcing their self-serving choices onto powerless users deserves a pass.
> None of the FAANG is being slapped by the EU for the wrong stuff.
A lot of the other stuff is things like not putting links to another search engine's results page in their search engine's results page. It's pure nonsense.
> The first is they conclude they're going to get slapped no matter what and then do whatever they want and write off the penalties as unavoidable because better behavior doesn't actually avoid them anyway.
European Commission fines are no small matter. They may be small at first, and may even be zero (just a warning), but the policy is to increase fines on non-compliance up to the point where the target complies. They can't write off penalties as unavoidable.
And if the fines are being imposed on actions that it would be hard to predict ahead of time would result in a fine, that leaves them with the second option (use money to buy influence), which is probably the worst of all because it's stable.
Once you convince a company that paying whatever it takes to buy a government is the only way to avoid random multi-billion dollar fines, you've created a long-term structural problem, because it becomes the status quo and is hard to undo. And then the government can't even punish them when they're actually being bad.
I'm not sure that amp is available in Europe.
I live in a EEA country and I've never seen an amp page. Curious if this is the case in the rest of Europe.
From many different angles, AMP getting preferential treatment is heavy handed and clumsy, manipulative and forcing technology standards on the web that no one agreed on.