Question: If what makes AMP fast is the restrictions on size, JS, and CSS, and you know this and want to conform to this, why do you need to use AMP? Why not just develop your site like this anyways? Is the lightning bolt really that worth it? I'm not convinced that (any more) Google prioritizes AMP pages beyond the coincidence that they prioritize faster ones and they are faster.
Also, I wonder if I'm the only one that avoids AMP-based sites out of principle. I highly doubt it affects your conversions (I'm not really the easily "convertible" type), but makes one wonder if there can be effective web tech boycotts.
AMP's innovation isn't a way to make pages fast. AMP is a way to sell other stakeholders on implementing technologies that make your website fast. All the stuff AMP does is stuff you could do yourself without the extra request to amp.js and the extra work to amp-ify your pages.
But imagine you've got an advertising department that wants three different ad networks, a couple different managers that want to see stats from a couple different analytics platforms, and and the designer wants to load a font from fontsquirrel and another one from typekit and another one from google web fonts, and as a developer who wants to keep the site fast you have to fight them every single time they want to add something else that slows your site down. Having the same fight every time, with everybody else saying "oh, it's just one request. and this one is really critical" it's hard to keep fighting that fight.
It's a lot easier to say "i can't do that, it doesn't work in AMP". If you can find a better way to convince large organizations that page load speed is a valuable metric, and more important that whatever other resource they want to load today, I'd love to hear it. But from what i've seen, AMP is the only thing that's had any success in tackling this problem.
This. AMP was a blessing for me honestly. I can now maintain a version of our new site that isn't bogged down with tracking and flavor-of-the-month JS feature garbage.
I've been fighting against adding additional tracking forever, but constantly get railroaded by marketing because "they're the ones that know how to make us profitable."
Fundamentally I hate what it means for the internet, but I finally have a little power to say "no we can't do that."
It is astonishing how hard it can be to internally sell any kind of web quality features to management in both for profit and non-profit organizations.
There is also a real herd effect. Many people will do whatever Matt Cutts tells them because they think it will be good for their SEO. Yeah right. Some of the people who are good at SEO either went to work for huge brands or quasi-competitors of Google (like about.com) that might have some ability to bring Google to anti-trust court; most of the others switched to paid advertising once they figured out that Google won't let you win at SEO.
Certainly people who write for Spamium (aka Tedium) are the ones who try herd-following methods of getting traffic and they tend to be impressed when they get 100 hits on their blog.
One technique I've seen work well for getting bosses to care is showing them how much slower their sites are than their competitors - nobody wants to be worse than their competition.
In SpeedCurve, for just around $8/mo per page/site you can set up daily synthetic checks for the business and its competitors, covering multiple profiles: mobile/3g, tablet/4g, desktop/fibre.
You can use both the metrics (Start Render, SpeedIndex, Hero Paint) [1] and the filmstrip videos to literally show them how they compare side-by-side [2] – this is super-powerful as it's so visual.
Disclaimer: I don't work for SpeedCurve, just a fan of the tool.
> schwinn: were the filmstrips enough to convince them, or did your bosses want to see numbers/stats like how many were dropping off your site for each x-seconds of delay?
There are some great stats on bounce rate / abandonment on WPOStats: https://wpostats.com/
This is my favourite:
> 53% of visits to mobile sites are abandoned after 3 seconds according to research from Google's DoubleClick.
One thing to note, to those stakeholders who are aware of web traffic stats, is that if a site uses client-side analytics (e.g. Google Analytics) and it hasn't loaded the analytics script by the time the user abandons the site, they won't be tracked, so the bounces won't be affected – it'll be like they were never there.
So ultimately, bounce rates in analytics tools can typically be significantly worse than reported when web performance is poor.
> One technique I've seen work well for getting bosses to care is showing them how much slower their sites are than their competitors - nobody wants to be worse than their competition.
were the filmstrips enough to convince them, or did your bosses want to see numbers/stats like how many were dropping off your site for each x-seconds of delay?
I sometimes feel like I should sell a consultancy selling EVaaS - External Validation as a Service. :)
I've been fortunate to spend my career working at sane companies, but I've talked to so many people who were in situations where management wouldn't listen to their own staff, but then turned around and listened to (and implemented) the exact same recommendations when they were made by a consultant.
I know there are often valid reasons for this, and external validation can be important. But it sure must be frustrating as hell to see your company pay $25+k to receive a list of recommendations you already made.
Management consultant here; this is literally what I do probably 50% of the time. Our buyer has a strategy they want to implement, so they hire us to help them sell it to their boss. Usually we improve them of course; but our buyers can generally handle this stuff on their own -- their bosses don't trust them, and want someone else on the hook.
Trusting subordinates who are incentivized to fudge the numbers is very difficult. Most people won't outright lie to their boss to get ahead, but they will make a bad business proposition look good to the point they genuinely believe it themselves. Leadership is hard.
I'm sure some of it can be contributed to the management itself. If you hire and trust people, and then fail, you failed when hiring and trusting them. If you use a consultant, it's very easy to shift the blame without taking any yourself.
That is mostly a problem if the people above the management are the same. For a sane company with good leadership, failures are a learning experience that makes you better.
>It is astonishing how hard it can be to internally sell any kind of web quality features to management in both for profit and non-profit organizations.
In my experience it's next to impossible. We have a bunch of inefficient bloated legacy shit that barely works and we spend most of our time bug fixing. Yet we keep adding to it while hiring more and more people to fix the increasing amount of bugs.
Why not provide the bottom / top line impact of page optimization? Your business’s profitability is the most important thing to your bosses. They do not care about making the web good, nor should they IMHO. Your job is to show why both parties’ incentives are actually aligned, not opposed.
Death by a thousand cuts. Everyone wants to add just one little resource, until you end up with 8MB pages with 20 seconds time to interactive. They can all make a plausible argument for how their one little resource will improve the bottom line, even considering the performance impact. If you have one person or one team responsible for performance, they're constantly fighting on all fronts just to stand still. You need a business-wide performance-oriented culture, which is very difficult to develop and maintain.
"You can add your just one little resource, but unfortunately the loading time goes over the limit - you need to identify other resource(s) that can be removed first."
Hard performance targets can work, but only if you have full buy-in from management. If you don't, someone is going to persuade a higher-up to make an exception just this one time and the whole thing falls apart.
perhaps I've been unfortunate but everyone I've met who markets themselves as UX are people whose job seems to be to say how will the customer understand this design, how is the customer workflow, and do not give a damn about performance at the level needed to achieve the improvements being discussed here.
I'm a dev and I understand the frustration of multiple resource load and the bandwidth burden it imposes but also as an entrepreneur and business owner, I see the need for metrics when making a sales pitch.
> Your job is to show why both parties’ incentives are actually aligned, not opposed.
This!
It's your job to do just that because of your vantage point i.e. you're able to see everything more broadly than anyone else. Understanding that all the stakeholders in your organization are doing something important that allows everyone to have a place to come to work to tomorrow is critical for you as the engineer.
> It's your job to do just that because of your vantage point i.e. you're able to see everything more broadly than anyone else.
It sounds very good on paper but it doesn't really work in practice because devs are generally not recognized as important decision makers in product design, despite said "broad vantage point".
From there, it's a rather thankless uphill battle of the "no good deed will go unpunished" variety. It's a very misaligned situation.
The need for metrics is another way of saying "I don't trust you", which may be understandable to a degree but stakeholders should also understand that not everything can be measured, and that measuring things in a manner that is both accurate and useful is very hard. I'm skeptical that metrics have more value than the word of a seasoned engineer on a project. We don't have very good results with measuring other vague things, why would software development be any different?
> I'm skeptical that metrics have more value than the word of a seasoned engineer on a project.
That's a rather odd statement to hear from a dev (or developer advocate) because I've always heard fellow engineers talk about how data is more important than opinion. Why is this an exception?
> "Your business’s profitability is the most important thing to your bosses."
I think the UX is the most important thing, without it (i.e., a good one) there is no profit.
In 2018 bosses involved in web - directly or indirectly - should be well aware of this. At this point in time the web dev's job should not be to "fix" those above them. There's plenty else to do and keep up with qithout having to add risking their career to the list.
And few if any freelancers are going to speak up. Which is all the more reason the decision makers should understand the implications of their decisions.
I agree 100%. So instead of saying “The web needs to be good! We need to spend time (money) on this!” Say “I ran an A/B test and the top of our funnel had an X% higher conversion rate when the page loaded in less than Xms. Here are my ideas for what analytics to cut to get us under that number. It’ll take some work but our funnel will improve and there’s an added benefit because all execs will view a unified report, which will ensure that all future business decisions are made with one standard set of metrics. This is win win win!”
Content sites get traffic from google / facebook / etc and then monetize it. Unless the site is so bad that people just close the tab rather than read the article, usability doesn't matter. You're only going to get one page view anyway.
> This. AMP was a blessing for me honestly. I can now maintain a version of our new site that isn't bogged down with tracking and flavor-of-the-month JS feature garbage.
That doesn't sound like it relieves you of maintaining a bogged down version of the site, it just means in addition to maintaining the bogged down version you have to now also maintain the amp version, and keep them consistent.
Yes, and execs will give you more budget to maintain the additional site, which they're encouraged to do due to Business Deals or whatever they read on LinkedIn.
Nah, blame the EU for all of those pop-over ads that you see on sites like Tedium. You first saw pop-overs to harass people abut cookies as required in the EU, thus everybody learned how to make pop-overs and pop-overs were legitimized because they aren't just advertising but something perceived to be required by regulation.
> You first saw pop-overs to harass people abut cookies as required in the EU
That's a rather a-historical way to describe that. The various cookie notifications used what was already common code to implement it since most people didn't want to spend much time on what they saw as a formality.
It's more to do with declining ad revenues. GDPR has a role to play, but so do ad blockers.
You're making nothing at all from 20-30% of your visitors, because they're blocking ads. If you're actually following the GDPR, then your average CPM for EU users has tanked because you can't track them and can't serve targeted ads without an explicit opt-in.
Your average revenue per page view is declining, so what do you do? More aggressive ad units and more of them. Popovers and interstitials aren't new, they're just becoming more widespread because many publishers are starting to get desperate. Your bounce rate will increase, users will eventually learn not to click your links, you'll push even more people to use ad blocking, but none of that matters right now because you've got revenue targets to hit.
Sure, blame the EU for trying to stop companies from keeping your contacts, pictures, location history or whatever just because you signed up to write a review or comment an article.
If companies can't manage to offer their service without exploiting your data and have to blacklist Europe, that's a win to me.
But is it worth the cost of forcing all EU users into not even having the option to use said service for data?
Thankfully, I don't live in the EU because I would be super pissed about all the websites blocking me because the EU no longer wants to give me the option to trade some data for a free service and I expect it to get a LOT worse once they start actually enacting fines and every company realizes that that they have really been force opting in people to data collection so it is no longer profitable to serve the EU.
In my opinion, it would be far far better to force companies to offer a "fair price" paid service in exchange for not collecting data (I'm 100% for taking them to court if they misrepresent the value your data provides so they don't overprice it forcing people to choose the free option). That way, I can choose to keep getting my free service in exchange for data and you guys can pay to protect your privacy. Does this option sound reasonable to you?
> But is it worth the cost of forcing all EU users into not even having the option to use said service for data?
Pretty much everything you stated here is completely wrong. GDPR states that personal information can only be collected on an opt-in basis. Your entire statement therefore is completely off.
Because it has to be freely opt-in you cannot just do an opt-out.
> In my opinion, it would be far far better to force companies to offer a "fair price" paid service in exchange for not collecting data
> GDPR states that personal information can only be collected on an opt-in basis.
I said "use said service for data" which means all or nothing, no ability to use a service and selectively decline the exchange of data that makes the company you are exchanging with money.
> The GDPR doesn't force to use anything for free.
I didn't say anything about that. I just don't like that free online content like the la times is now blocking all of the EU because their business model is incompatible with GDPR and so I would prefer if the law still allowed EU users the choice to accept said business model, or use one that contributes revenue in proportion to the old one so their business model works while also satisfying your wants. Does that make sense/sound reasonable?
> not even having the option to use said service for data
Companies are blocking all of the EU because of GDPR which is denying them the "option to use said service for data". Here is one list so far: https://gdprcasualties.com/
> Thankfully, I don't live in the EU because I would be super pissed about all the websites blocking me because the EU no longer wants to give me the option to trade some data for a free service and I expect it to get a LOT worse once they start actually enacting fines and every company realizes that that they have really been force opting in people to data collection so it is no longer profitable to serve the EU.
I don't know of a single company that now gives users to opt into each data collection so if they actually start throwing down huge fines (which I fully believe they will based on their history), I expect it to get a lot worse.
Are you the sort of person who likes paying protection rackets?
Assuming (correctly) that web sites are untrustworthy data collection bandits, why should they behave well only because a user proved their submission (and their gullibility) by paying them?
Didn't know what that was until you said it and still not sure how it applies.
> Assuming (correctly) that web sites are untrustworthy data collection bandits, why should they behave well only because a user proved their submission (and their gullibility) by paying them?
I think you are misunderstanding me. I love everything about GDPR except 1 thing and that thing is not allowing companies to tie providing their service in exchange for data so that they can make money because it denies people the CHOICE (key word here) of using said option.
I proposed an option (just pay for the lost revenue the company no longer makes) so that everyone still gets the option to use current revenue models, pro privacy people can pay their fare share for the service, and companies don't blacklist all of the EU for what a portion of the people want. What does not sound fair about that?
> If you can find a better way to convince large organizations that page load speed is a valuable metric, and more important that whatever other resource they want to load today, I'd love to hear it.
Yes...do all the same things but without requiring Google proxy it. There are several things orgs will do to optimize SEO, conforming to AMP rules can be another. Gaming SEO is a concern for all SEO requirements so surely that's a poor excuse for proxying.
Yes, but this time you have to donate your soul to Google. Otherwise, your page will just rank lower. WAP didn't have that direct connection with Google search results.
Or slow sites could just die on their own? Is there really a need to try to force the issue? Can't users just get tired of waiting and start going to sites that don't make them wait?
Honest question
I hate needlessly heavy sites. I just avoid them. I'm also it a fan of AMP. I especially hate the URL is wrong and trying to share the correct URL is tedious
> AMP's innovation isn't a way to make pages fast. AMP is a way to sell other stakeholders on implementing technologies that make your website fast.
There's a certain "theory of the firm" that says corporations exist because they reduce the overhead cost of operating certain enterprises.
Things like this -- along with the also oft-seen need to hire consultants to tell some people in your company to do what other people in your company already know needs to be done -- make me wonder if the limits of that theory are well understood.
"The Nature of the Firm" by Ronald Coase. He called it transaction costs. I ran across this while trying to grok one firm I worked at that managed thru over-governance, funding models, etc to maximize internal transaction costs to the point where it was easier to just hire external expensive consultants.
But you could still do that without amp.js. Google would just have to push a validator that checks whether a page is the AMP-subset of HTML and CSS, doesn't do any sync loading, etc. etc.
And then the engineer could point at validator results.
> It's a lot easier to say "i can't do that, it doesn't work in AMP". If you can find a better way to convince large organizations that page load speed is a valuable metric, and more important that whatever other resource they want to load today, I'd love to hear it. But from what i've seen, AMP is the only thing that's had any success in tackling this problem.
Have google results punish fat pages. Then we can say "I can do that, but you have to sign this the declaration accepting responsibility for our page hits tanking".
There are other optimizations AMP implements that aren't currently possible with regular web pages, notably [their ability to be automatically preloaded by the browser without compromising the user's privacy][1].
Once [cross-origin server push][2] becomes standardized, regular webpages will be able to take advantage of similar functionality.
It's true that this exists but there are complications – for example, rel=prefetch has no JavaScript API so you either need to put rel=prefetch for all of the top results or do something hacky to trigger it for only the link the user hovered the mouse over before clicking, etc.
There are also privacy concerns – e.g. the remote server could set a cookie in a response without you ever visiting that site but if you disable cookies by default users will have to refetch the resource anyway if there's any session state involved in page generation. You also have issues like companies wanting to distinguish between traffic from actual page views and the prefetch mechanism.
That's not to say that the answer is AMP — e.g. since it puts so much render-blocking JavaScript into the critical path prefetching is often just canceling out that cost – and it's sad that the marketing push has made the discussion of alternative performance improvements unnecessarily contentious.
No, it's not only about size and js restrictions. Here is a summary of the strategies employed (edited from [0]).
- Execute all AMP JavaScript asynchronously
- Size all resources statically
- AMP uncouples document layout from resource layout. Only one HTTP request is needed to layout the entire doc.
- All CSS must be inline and size-bound
- Minimize style recalculations
- Only run GPU-accelerated animations
- Prioritize resource loading
- The new preconnect API is used heavily
- When AMP documents get prerendered for instant loading, only resources above the fold are actually downloaded. Resources that might use a lot of CPU (like third-party iframes) do not get downloaded.
OP's point was that those are all techniques that you don't need AMP to implement. So their question is: if those are the reason for you to use AMP, why use AMP and not just implement them directly?
The recommendations are to inline the important (render-blocking) CSS, so at most only the part of the CSS that applies to the 1K of HTML should be inlined.
Sorry, I was commenting generally. Don’t know about AMP. How does that make sense, though? What performance reasons could there possibly be for inlining CSS that doesn’t apply to any element in a page?
Likewise, I'm sorry, I didn't mean "you have to inline CSS that doesn't apply".
However, if you have non-render blocking CSS, or CSS that's used for below the fold or generally lower down the page content, "only render critical CSS inline" is usually coupled with "and then have the rest of your CSS in an external stylesheet". Which you are not allowed to do.
Google creates an environment where you "need to use AMP" because they prioritize search results for properties that have AMP varietals - placing them in the "carousel" on top of search results. You can build a very performant static site, with terrific SEO and social share meta tags, etc. - but without AMP - and still be positioned below another property who's "regular" site is slow and full of cruft but has an AMP varietal.
No, Google is the dominate search engine which is part of an oligopoly which while still not as economically efficient as a perfectly competitive market, they have nowhere near the power of a monopoly.
If Google replaced all of their search results with ads, people would easily switch to bing as bing isn't that much worse.
Facebook on the other hand definitely is "pretty much" a monopoly (but not completely) for certain subsets of the social media market due to network effects which is why they shovel ads down your throat on their platform and they are making tons of money.
That is fair. However, I still argue that it is not nearly as strong as it is easy for me to switch from google search to bing as most of my search results won't really change as they are basic searches but it is incredibly painful to switch social media networks as you have to rebuild your individual content and network connections for the new sight.
I actually have set Bing as my default search on my phone
... and let me tell you Bing is not nearly as good as Google when it comes to bringing me the right search results first.
But I got tired of Google asking me to “prove that I’m not a robot” by tapping on roads and street signs with every new search. I use incognito mode, and since they can’t track me, they either are punishing me or just automatically assume I’m not human.
Google replaced all there search results with ads a looong time ago.
I blogged the first time I saw Google results had all ads on the visible part of the results page. Now often its all ads for the whole page. And you will not find any page of results that is not defined by Google's definition of what "organic" search should be. E.g amp, https, having an adwords account, hosted by them, tuned your page to their adwords requirements. etc etc.
Can you take a screenshot because I have never seen a page of all ads? I just did a few random searches for typical highly advertisable things and I got 1-4 ads but you could still see organic search results. Granted the "asbestos lawyer" search did have half of the original screen area full of ads but scrolling down showed most of the actual page with organic search results.
In a way, Google IS the internet. AMP prioritized searches moves them to even more centralized internet where they control everything, host everything and can dump your site at their whims.
Right. Absolutely. People should just follow some of these restrictions to get speed without AMP. I went down this AMP path though because of yes the Icon. Google was testing the Icon in Paid Ads I had read, and wanted to see if that could also improve our Click Through Rates. I also wanted to see if officially being AMP could improve things like our Quality Score in our ads, which would reduce our click cost, etc.
So yeah, just me trying to get blessed by G so everything else improves from G for us :)
Unless the dev has the authority to make the decision, what he should really do is explain the tradeoff: “Hey marketing, I know you want this feature, but it’s gonna cause us to drop down in Google results. Is it still worth it?”
Yeah, good luck using reason with these people. They'll just stare at you and say something along the lines of "But it's Google and they say so."
Tell them that it won't support all their various analytics scripts, tracking pixels, and A/B testing scripts that fill up their charts with vanity metrics they use to impress stakeholders.
> Never underestimate the willingness of salespeople to trade potential revenue booked tomorrow for real revenue they can book today
Counterfactual: lots of terrible business decisions are made because someone gets on an ideological bent and runs with it. Revenue today is worth more than revenue tomorrow. Balancing growth opportunities against investment risks is the core of commercial decision-making.
Oh, I don't disagree! But the key word in your response is "balancing." That implies there is some neutral party weighing the pros and cons of each new script, whereas in reality, what usually happens is you have the marketers on one side saying "all scripts are great" and the techies on the other side saying "all scripts are terrible," and the side that wins comes down more to which has more political power in the organization than to the actual business merits of the individual script. So lots of sites end up absurdly over-monetized and others absurdly under-monetized, with very few finding a sweet spot in the middle.
It's just another case of people hiding behind a computer; For some weird reason people trust things when "computers say them" much more than when their coworkers do.
Brave shows how many ads and trackers it has blocked, as well as a number that's labeled Time Saved. How that is calculated I haven't the foggiest, but it must be related to download size.
Interesting. I (like others here, apparently) assumed that the time saved number was based on various tracking scripts that weren't downloaded, but if this is the relevant code, looks like it's just tracking parallel requests.
Brave shows this on the "new tab" page. I was surprised with how much these numbers added up over time, though I do suppose they are reasonable estimations.
> If what makes AMP fast is the restrictions on size, JS, and CSS, and you know this and want to conform to this, why do you need to use AMP? Why not just develop your site like this anyways?
His specific comments about AMP: "AMP is a special subset of HTML designed to be fast on mobile devices. Why not just serve regular HTML without stuffing it full of useless crap? The question is left unanswered."
AMP is just a fork of HTML, creating more pressure and work for publishers to implement.
The reason why they do it is because of better search page placement in Google. It's unfair and wasteful, since site speed can easily be measured by the most advanced search engine that already has tools and reports doing exactly that.
AMP is not a search ranking signal. Non-AMP pages will end up in the carousel in 2019... if sites can easily be sped up, why do 80% of websites still suck so much and are slow? AMP won't be for specialized dev teams, but it helps plenty of average websites.
> Question: If what makes AMP fast is the restrictions on size, JS, and CSS, and you know this and want to conform to this, why do you need to use AMP? Why not just develop your site like this anyways?
I think aside from the icon and the special treatment mentioned above, don't AMP pages get served directly from google and get preloaded on the search results page? So that's the other benefit, I guess. Whether a few less milliseconds from preloading on an already fast page really buys anything is another question.
> Whether a few less milliseconds from preloading on an already fast page really buys anything is another question.
On the technical side, it hardly matters. If the sales and marketing teams have bitten, they sell to management, and tech is informed they will be implementing it.
Actually the main performance gains is by google search preloading everything (basically putting it in an iFrame before you click on it). Which practically means that pages load instantly.
Google could easily adjust their ranking algorithm to better reward non-AMP pages (which they've obviously already crawled) which they know are 1) below say 75 KB and 2) contain a limited number of resources to fetch. But instead of doing that, they choose to attempt to strongarm everyone into using AMP.
It looks like the only reason to use AMP is to bypass ad blockers and sell more advertising, and this is also the only reason why Google developed it.
Personally, I think it's stupid from content creators, because if I visit the website I might read more articles, share, or sign up to the newsletter, and that doesn't happen with all AMP implementations I've seen.
One lesser mentioned feature of AMP is when they are found through Google search, they are prefetched. So in addition to being size restricted, they are probably already partially if not completely downloaded in the background before the link is clicked. Giving them an extra advantage over other search results.
Ah, yeah, that's true too. Wasn't critical for us on this landing page stuff. But yes, that's another reason blogs and news sites are AMPing their stuff.
Sorry if this distracts from the topic, but one of the biggest reasons I, and a few people I know, don't like AMP is that - this will sound trivial - but they're a real annoyance when you want to cut and paste a link into an email or a text message when you're on a phone. I'm not going to screw around with finding a share button or what have you on a mobile site, nobody knows what JS is behind those.
I don't avoid them out of principle, but since JavaScript is turned off by default in my browser none of them work for me to begin with. I can't whitelist AMP pages like I can non-amp pages I browse. AMP pages over-all are a terrible experience.
Sadly ironic that the format doesn’t allow JavaScript to ensure pages are lightweight and fast-loading, and yet disabling JS stops them from displaying.
Because you need to convince business folks about stripping down bloat from your webpages. And doing that by citing sticks and carrots from Big-G is much easier than doing it on your own. So we can attribute this to: laziness of developers (who cannot make arguments to reduce bloat), boneheadedness of business folks (who cannot quickly understand why bloat is bad), tragedy of commons (my competitors are gaining valuable traffic by having their articles in special Google carousel at the top of search results, I am missing out so I must do AMP) etc.
There's no laziness or boneheadedness involved. Without the AMP carousel, making a fast website is a bad business decision. With the carousel, it's a good one.
The usability of your site just doesn't really matter if your business is to get traffic from Google and monetize it, which is what we are talking about here.
The author was wrong. AMP is a way to prerender web pages in a way that plays nice with analytics. The rest makes the preload fast, but the user doesn't experience it because when they navigate to the page, it is already rendered.
TBH until yesterday when I saw the article I did not even notice the lightning bolt, my brain was automatically filtering it, and now that I know it similarly to you I probably will start skipping those links (similarly what I do with responses tagged as "Ad"). The reason for it is the same why I use uMatrix, I don't want to provide Google with more information about me.
So unless Google actually adjusts the ranking it is useless to get AMP. I wish though that many web sites would chill down with including so much of JS on their pages.
You're not the only one. I will load AMP pages and then tap through to the source page just to make sure I'm not letting Google control the experience.
Is it possible for Google to factor in page load speeds into their search algorithm? Hopefully in a way that actually encourages publishers to optimise for performance and not focus on fooling googles webcrawlers
Sometimes its not always economical, especially if you need your engineers to focus elsewhere (like the actual product as opposed to the marketing site), or if you have a large organization and it is difficult to lock down website discipline. Should sites be engineered to be efficient? yes. Is everything that should happen actually realistic to achieve? Not exactly.
HN is utterly incapable of discussing AMP honestly or coherently, so you're hardly going to get many reality-based replies.
AMP is offered as a promise to the user, not the publisher. When I see AMP it guarantees that the site has minimally invasive JavaScript (and the scourge of nonsense that comes with many sites now), will load quickly, etc. The site cannot suddenly bait and switch and start mining bitcoin or spamming pop-overs because it has been technically restricted from doing so.
So yes, sites can be every bit as fast as AMP. And industrial manufacturers can be every bit as clean as required by regulators if they had no regulation. But they aren't, and they don't.
We need an HTML Lite as a mode in the browser that winnows down the enormous featureset of HTML. Not for all content, but for that content where text is king.
Pardon my naivete, but Google validates whether a site is AMP-eligible by validating it conforms to its requirements, right? Can the Google bot that crawls the site not perform this same validation? I mean they can bait and switch the title of the page, the content, etc too but we don't require a Google proxy to make sure they don't. Can anyone else build a proxy that gives the same AMP guarantees and gets the same ranking benefits? More than a promise to the user, AMP is a promise to everyone where the bits are coming from.
Google is going to get in trouble stewarding their gateway into the internet in this fashion with these rules. Rules about slow page load times can be seen as universal. Rules about using a Google proxy however are just begging for political intervention. As someone with a small business, I'm upset that these companies, under the guise of helping users, are giving reasons for these liberal governments to act. It negatively affects me when these inevitable regulations come down because companies like Google can't remain provider-neutral. Arg!
> We need an HTML Lite as a mode in the browser that winnows down the enormous featureset of HTML. Not for all content, but for that content where text is king.
I concur here and have been thinking about this recently especially in the context of web browsing in the terminal. But it has to be driven by user adoption, not rules written on the walls of a few companies' gardens.
In the meantime, I would ask that the search engine not give preference to their proxy over anyone else's but instead define the guidelines that we can all reasonably meet.
> Can the Google bot that crawls the site not perform this same validation?
From what I am aware, in practice there are a large number of sites which provide different content or different behavior in response to the GoogleBot user-agent.
The benefits are nebulous in other instances. Here they are much more concrete, and thus will undoubtedly (in my mind) be abused to a much higher degree.
It is a web platform security restriction that prevents Google Search from coordinating with non-Google caches for prerendering.
Pinterest runs its own AMP cache for prerendering pages linked from Twitter. Bing runs its own AMP cache to prerender pages linked from Bing. Yandex runs its own AMP cache to prerender pages linked from Yandex. They can't use each others' AMP caches and get the same benefits.
Author here. No, not at all. Well not the first two problems. The extra chrome is just when google is hosting it, and the blank pages only occurred in testing from the CDN.
We need an HTML lite but AMP doesn't get us anywhere close to it because it's a custom dialect of HTML driven by a bunch of proprietary Javascript. The google search spider enforcing a 'lite' subset would have gotten us closer, if not there entirely. We know they can do it because the spider runs JavaScript, they could examine loaded content and measure time to first content. They don't because it's way more effective to get content providers into a walled garden where they can be monetized.
Re: "HTML Lite" - I think there's already a pretty solid solution. Hand-coded HTML 3 without any CSS, ECMAScript, or other dynamic elements. That always worked pretty well for me, and pages that could load acceptably on 28.8 would be absolutely mind-blowingly fast now. Of course, that would put the power of web design back in the hands of the average user rather than exclusively designers and devs. Because of that, I don't think we'll ever see that becoming an option again.
Or, based on the browser I use when I care about speed, can we design pages around the constraints of Lynx/Links/eLinks? The CSS layouts work when called for, menus work in text-mode, but without images, *.js, and all the other Web annoyances, everything loads quick even on the worst connections.
The concept of HTML Lite is about restrictions that the source is forced to live within. As with AMP, it would not be an honor system. It would not be something that maybe that random link would conform to, but way more likely it wouldn't.
If I were looking for song lyrics, or a recipe, or schedule information, etc, I would be browsing in HTML Lite mode. I don't want popovers, subscribe now boxes, animated bullshit, etc.
My root post is sitting in the negatives right now, and I own that and embrace it because it is how discussions about AMP always go on HN. A bunch of web developers herd in to tell us how terrible AMP is while the web gets more and more bloated, more and more destructive and tragedy of the commons, and we all layer on various shoehorned, half-assed solutions to fight back (e.g. Ad blockers, nuisance blockers, tracking blockers, etc).
Well, I'll say this much about AMP and how it is: I actively avoid it; but then again, I don't use GMail, I search with DDG or Exalead most of the time, etc. I like the idea, I hate the implementation. I don't like a single corporation determining the course of the Web. I like the idea of a constrained standard. Then again, I also like the unrealistic idea of a single monolithic standard. When I got into making webpages, you had HTML and that was it. Then they said, "well, if you want to do some cool stuff, use CSS in addition to HTML". And now, they're trying to make it so that creating a website without using CSS or JS is completely impossible.
Really, what you're saying you want just links back to what I suggested - disable remote CSS (preferably also inline but that's a pipe-dream), disable JavaScript, disable images, and turn your content blocker on full blast. Either that or just use Links. It works for me and blocks all the crud so I can get the content I actually want. The only thing I'd like to do with Links is to change the terminal colors it uses (which I don't think I can do in Windows - if you know how please do tell me). HTML was a fine language for what it does, and it still serves as a very solid core for a Web made of pure content. Only a Web made up of utter corporate nonsense needs scripting.
Well, speaking as a web user, I hate AMP, and actively avoid websites where there's no other option. The reasons? Most of all, I don't like how they break the Back button in strange ways (I still haven't figured out how exactly it's supposed to operate, but it's certainly not working as it usually does in a web browser). And I don't like that all URLs are showing up as Google.
In abstract, I also don't like the notion of giving Google that much power. Even if what you say makes sense, and regulation is necessary, a private company doing it is the worst of both worlds - they are not accountable to the rest of us, and they have their own goals that contradict the public good.
Couldn't agree more with this. People approximate it with e.g. noscript, it would be awesome to have a standard which describes a minimal HTML Lite spec though.
Edit: It would be awesome as another option in the link context menu: open in new tab, open in incognito tab, open in lite tab
Having this enforced by the browser as a mode would be brilliant. The HTML stack has grown enormous, with it the potential for a abuse and misuse. If you are just looking for a digital version of paper, so to speak, 95% of that is simply completely unnecessary.
Right now the AMP CDN enforces the restrictions of AMP (you can't simply pretend it conforms to AMP to Google and then feed the client something else) which is something that is fundamentally misunderstood when this is discussed on HN. AMP is a protection and guarantee of behavior for the user, it is not for the publisher, it is not for the developer. Google has a profound vested interest in trying to maintain people's interest in the web, especially in the face of various alternative walled gardens like Facebook feeds, Apple News, etc.
> Google has a profound vested interest in trying to maintain people's interest in the web, especially in the face of various alternative walled gardens like Facebook feeds, Apple News, etc.
To me, AMP is just Google trying to turn the open web in its own walled garden.
there's NOTHING technically requiring google to serve AMP from their own domain. None of the benefits you cited answered that. AMP could just be another standard where the basic lib is preloaded.
I feel like this conversation, like all AMP conversations, is going in circles, spittle-filled comments denoted by unnecessary angry screeds of all caps.
Yes, right now there is a technical need for an intermediary because it guarantees AMP is actually AMP. It is trivial for a page to say it's AMP, load the AMP standard library, and then do everything disallowed by AMP. There is absolutely nothing preventing that but that intermediary rejecting non-compliant content.
Now of course we've talked about an HTML Light and that would be the browser enforcing that limited sandbox. It could send a relevant cookie and then reject content that steps outside the bounds. But we don't have that right now.
> Yes, right now there is a technical need for an intermediary because it guarantees AMP is actually AMP. It is trivial for a page to say it's AMP, load the AMP standard library, and then do everything disallowed by AMP. There is absolutely nothing preventing that but that intermediary rejecting non-compliant content.
That's because the standard is not well defined. If you had a doctype just for AMP at the top, that would work. I don't see any technical reason why google's servers are necessary. I see a business reason for Google of course but there's nothing technically that makes sense.
> Now of course we've talked about an HTML Light and that would be the browser enforcing that limited sandbox. It could send a relevant cookie and then reject content that steps outside the bounds. But we don't have that right now.
Well, AMP could be just that if it was standardized.
Good idea. As a starting point, let's define "HTML Lite" as "HTML without Javascript".
Then "HTML Fat" and "HTML Light" could even be served as one document. If you execute the Javascript, you get the fat version. Else, you get the light version.
If you use Javascript not just to improve the behaviour but also to display content at all, you can provide fallback content that is only displayed in light mode. The fallback content is marked by a special tag. Let's call it `noscript`.
My point is: Making it easier to serve sane and lightweight HTML will not help fix the problem. Publishers don't want to do that, they like all that crap. If we want them to make sane web pages, we must force them.
I'm a contributor to AMP and also work on Google Search. We're currently investigating the issue of the blank page that's mentioned in the article. So far we've been able to reproduce the issue using the Chrome emulator; however, we haven't been able to repro on an actual device, either Android or iOS. So we'll keep digging into this.
The article also mentions the impact on conversion rate. We're interested to learn more details surrounding this. Blank pages loading for many users would explain a lower conversion rate but we'd like to figure out if there's any other possible cause since it doesn't currently seem like most users hit a blank page in actual usage. I'll get in touch with the article author to see if there's openness to digging in further.
An issue with projects like AMP is you are now essentially solving a completely self-inflicted problem. Nobody required the particular approach that AMP takes, and now site owners have to worry about blank pages for the first time since 300 baud modems?
The solution needs to start in much simpler terms: Google should publish page traits that are rewarded and punished, and tools for seeing where you stand. It should reward/punish all sites based on how they fare in the published areas.
We don’t need new protocols/wrappers/rehosting or extra scripting or whatever else to drag bad sites into the 21st century. These just create additional issues when we have plenty of engineering problems already.
It seems far easier to establish a standardized framework that forces everyone to adhere to it as opposed to trying to get the web to adhere to some nebulous perf standards.
The web has incredible variety in tech stacks, business structures and even views on what a standard means.
> The web has incredible variety in tech stacks, business structures and even views on what a standard means.
But AMP is a standard. Using AMP doesn't solve any of the problems you're talking about. If people's usage is too diverse to be accurately measured, then it's too diverse for AMP to meet everyone's needs. And if it's not important for AMP to meet everyone's needs, then why is it important for a set of page tests to do so?
I agree there might be problems building a small set of tests to check page speed, but that would still be strictly better than AMP. It would still cover at least all of the use-cases that AMP covers now, and it would open the door to cover more use-cases in the future.
If you're ranking search results based on whether or not someone uses a framework, you are implicitly ranking them based on the attributes of that framework. What people are asking is for Google to make those attributes explicit instead, and to directly test them.
Meh. For all practical purposes, it serves the exact same role as a standard. It's a set of rules/technologies that developers have to follow in order to get preferential treatment in Google search.
I don't particularly care whether anyone thinks that's technically a standard or a framework or a library by the ridged definition or not; at the point we start down that rabbit hole we're just talking about words, not concepts.
What I was trying to get at above was that any problems people bring up around Google profiling websites for search placement are still present in AMP. Forcing developers to use a specific set of technologies is functionally the same as forcing them to conform to a ridged set of benchmarks. For the purposes of this discussion, we might as well call AMP a standard.
To me AMP pages feel like a sort of "preview" for a site. What the linked article describes is actually very accurate about feeling trapped inside Google. I just can't figure out how to get google out of the way and view the site directly.
It's actually to the point that I have stopped using non-browser google search on my phone. In fact I didn't really notice it was AMP just that results from "Ok Google" were annoying as hell after upgrading to Google Assistant. Reading this article was an "oooooooohhhh that's what's going on" reveal to me.
I don't even know where he's getting this "Info" thing. To me it just looks like some sort of chrome window that doesn't let me edit the url. Even when I do "Open in..." to send the link from I guess it's called Amp browser (...that somehow looks like Chrome?) to my browser it leaves me trapped in AMP with weird urls. It's extremely confusing.
I just want to escape to the actual website in an actual browser and for whatever reason I end up having to try and re-find the site in the mobile browser. Maybe there's some obvious way to do this but it's just driving me bonkers.
AMP was one of the reasons that made me fully embrace Firefox mobile on Android. I've almost forgotten about AMP since, as its only supported on blink browsers and you automatically get redirected to the real site even when following an amp link. Not sure about non browser search though, i dont use that.
Firefox Focus is my primary browser on my phone and I did that at first because Chrome started to be really annoying. Or at least I thought that was it but maybe it was just AMP.
When I'm in "dumb user" mode, especially on mobile, I get very irked when I search for something (on Google, because no matter how much I like DuckDuckGo on principle, the results are just not good enough), tap on a link and find myself on a google.com address AMP. It's an irrational response, but I do feel like I've been swindled/misdirected; on mobile in particular it's annoying because if I want to link the page to someone I don't want the AMP link, and the process of getting the "real" URL is several steps too many. Not to mention the valuable real estate taken by the AMP sandwich button toolbar.
My non-technical significant other and my dad have repeatedly asked me if those pages are safe to visit: after training them for years on the heuristic of mistrusting a page where the URL doesn't match the expectation, AMP is now breaking it for them and causing unnecessary insecurity.
For me blank pages happen with content blockers because the content is hidden and there's some CSS animation which unblocks it after 8s if the JS hasn't loaded. 8s might be longer than someone is willing to wait, and either way is always slower than just rendering the content that's already there, sans JS.
Note that "content blocker" is congruent to "resource failed to load", which could always happen.
It's great that you guys are receptive to these issues but I can't help but wonder if, instead of solving this with what is clearly unpopular technology, we all would have been better off if Google had encouraged better practices?
If, as the article implies, Google will give me the same rankings if I do things to get the same performance as an AMP page then I would rather do that.
> It's great that you guys are receptive to these issues but I can't help but wonder if, instead of solving this with what is clearly unpopular technology, we all would have been better off if Google had encouraged better practices?
Unpopular where? Between web devs on HN which are the main cause of the web site bloat plague?
That's quite a big assumption from one usecase without much evidence backing it up. I'm not saying the author is lying but I'd need more data before saying this is a repeatable scenario...
Even the author couldn't narrow down what exactly was the cause other than maybe:
a) the domain name being different
b) the addition of chrome w/ a link to Google support + a notification "You're now logged in as [user]@gmail.com"
c) minor CSS changes as a result of minimizing static assets
None of these screams an obvious problem, especially given the other benefits this process has given in return (which of course could be accomplished without AMP).
Google has been using indicators like page performance in their ranking algorithm for quite a while now, so to be fair, it doesn't look like it helped that much. A single label and clear prioritisation apparently make it a far easier sell within companies.
That might be a more believable explanation of why they did it if they weren't hijacking the content and hosting it on their own domain with left-right swipes that take users off of your site. Users don't actually visit your site, but they visit a restricted shell of it on google.com.
Except there's NOTHING technically requiring google to serve AMP from their own domain. None of the speed benefits can justify that. AMP could just be another standard where the basic lib is preloaded on the browser.
If you want to pre-load the page in the background in search results without allowing the site operator to track the user, they do need to serve it from somewhere they control.
I only ask that you stop working on this shitty preview system you call AMP. I don't want preview versions of websites. I don't want broken pages that fail to load.
I don't trust google.com to host sites that aren't google.com.
what about amp pages not displaying a link to get to the actual source site? almost every time I open a link from my Google home feed it fails to display that header with the source URL link. I then have to manually force it to chrome and modify the URL
You assume that they care. Think of the bigger picture. This is not about usability, developer experience, standards or any of that useless shit. This is about control, which in the long run turns into money.
AMP is a terrible product and an abuse of market position, but the ego behind it means nobody cares what users think, and it will be touted as a success on someone's performance review no matter what.
It's the most user-hostile thing Google has yet done, and I'm including things like Google Wave, the death of Google Reader, and things like removing "view image" from image search results. I loathe getting AMP results. It's always a struggle to get to the real site.
AMP is actually the main reason I switched from Google to DDG on my phone; for some reason, when I switched from an Android phone to an iPhone, I started getting AMP results, and switching search engines was the only way to disable AMP.
Is that why I never get AMP results? I've heard about it a lot, but never gotten an AMP page in the results (obviously, in retrospect, because I use DDG). Too bad it's not a "real" standard that everyone can use.
It was meant to replace email, an open standard sporting many interoperable servers and clients, with something that Google controlled, even though it was theoretically federated.
After Wave failed, they doubled down on making Gmail into more of a nonstandard product with reduced interoperability (now requiring Gmail API instead of standard IMAP) and increasingly, embrace & extend functionality such as email expiration dates.
Sure you can still access Gmail through IMAP, but if it works differently enough that using a standard IMAP client feels cumbersome and unfamiliar, is it really anything else than a vehicle to tell people that they should really just use the "better" Google product directly?
That said, my original wording of "requiring" the Gmail API was poor and I should have phrased it more accurately.
Another example of user-hostility: I search google for "X using Y" and I get a bunch of results about X where Y is explicitly excluded, i.e. Y with a strikethru and a link saying "actually search for the fucking thing you typed in"... That's a very frustrating UX. I really should give DDG another go.
If a site does not require personal information, it does not need SSL to be "secure". Webcomics I read, blogs, etc, do not need to be "secured", as they are not requesting data. They do not need HTTPS.
Which is it - is the site secure without SSL, or does the site not need to be secure?
In the former case, I disagree wholeheartedly. In the latter case, you're not blocked from browsing the site - only informed that it is insecure, a factual statement.
Ah, but they sort of do. HTTPS also protects you from your ISP injecting trackers and ads (which is something US ISPs like to do), and also protects you from third parties listening in on what "benign" sites you visit and building a profile about you.
Still, you're only as secure as your weakest link. An attacker could figure out how to break into your banking account using the information they gathered from you checking your newspaper account.
Open for anyone to see is not the same thing as unsafe. That's a false equivalence.
HTTP is unsafe in the same way that getting a newspaper delivered to your yard is unsafe.
Oh no. Casual passersby know from looking that I have a newspaper on my lawn. If someone wants to snoop when I'm not looking, they now know that I read a specific newspaper. Someone could even steal it.
It's unsafe in the sense that if you leave your driver license, credit cards, birth certificate, cash, and car keys all in your yard over night, you won't be surprised if at least one of them is gone in the morning.
HTTP is a paper in your yard. A poster on a phone pole. A business card on a broken, smudgedy plexiglass subway sign. HTTP is public, and there is absolutely value in putting things out there for everyone to read in public.
It’s more like someone could change an article in the paper before giving it to you, possibly tricking you into purchasing something or going somewhere you wouldn’t have otherwise.
It's not really user-hostile at all. It's great for users. We get easy to identify sites that load quickly on mobile. I waste much less time because of AMP.
You could argue it is bad for publishers. But users? Please.
1) Click on an AMP link by mistake in google results
2) Get annoyed at the less-functional AMP experience to read reddit (limited replies on AMP page, no JS expansion, etc)
It's also super frustrating AMP prevents hold-tap on mobile to open a link in a new window, it just doesn't work.
3) Press the chain link icon to switch to mobile site
I've been frustrated and delayed in getting to the mobile site directly.
"but the ego behind it means nobody cares what users think"
Who are the users you're speaking of? The ones on their mobile devices who click AMP links by and large seem to love them. Who hates them, however, are web developers and web exploiters who see it as a threat, a limitation, etc.
AMP will have a long-term destructive effect on web publishers (and the open, decentralized WWW), so I don't think the term "web exploiters" is accurate. Google is doing the exploitation.
"In fact, AMP keeps users within Google’s domain and diverts traffic away from other websites for the benefit of Google. At a scale of billions of users, this has the effect of further reinforcing Google’s dominance of the Web."
> The ones on their mobile devices who click AMP links by and large seem to love them.
Really? The main comment I've heard about it (when people mention it at all) is that it messes up the URL. I doubt most people notice anything changed.
You are probably overestimating how much people look at the URL outside of tech circles. As long as the page loads fast, I doubt many people particularly care about the URL bar.
I personally love how fast and responsive the experience is. I would be fine if the sites were also that fast and responsive, but since they're not always, I'm glad Google stepped in and ensured they would be for me.
Whenever I read an article on a random website and it says "google.com" in the url instead of the actual website url, I want to scream at the screen. How on earth can that be a good idea?
I’m glad I’m not the only one that experiences this visceral action. I absolutely hate it. I use the URL bar to see what site I am reading (who would have thought?!). When I look in the URL bar and it says “google.com” there, it drives me absolutely bonkers.
AMP has a pretty bad user experience that is unrelated to performance: It's super confusing for me when I am on a news site and the url bar shows a long unfamiliar string. It actually makes me feel like I need to check if I'm on a fishing site or I was misdirected or I misclicked.
It's also annoying to have the amp menu bar taking up space at the top. Screen real estate is scarce and another menu bar at the top is just confusing.
In Mobile Safari, it's even worse as the bottom navigation bar is present when the page loads and then stays present.
Since AMP uses an overflow technique to handle content/scrolling, the page never triggers a scroll event on the body. So not only do you see a toolbar at the top (which admittedly, slides out when you scroll down), you see the browser toolbar at the bottom (which persists!)
I'd be very interested to see numbers on the success rates of lookalike phishing sites once people get used to AMP and stop checking URLs to see if they're in a valid location. I wonder if you could somehow track this with google trends over the next year or so?
I honestly have no idea how to get from an AMP page to the regular version of the page, and it's endlessly frustrating. I dislike AMP but understand and somewhat appreciate what it does (despite disagreeing with its core premise), but the fact that there's no way that I can discern to go from, for example, the AMP version of a reddit thread link to the real, actual page, makes the whole thing extremely frustrating.
Hmm, I don't want to dive too deep into AMP, but I do get a header on that page in Chrome Android.
edit: wait, no I don't. I get a header when I visit the page via google search, not when I follow the link directly. I haven't noticed this before because google is the only way I usually end up at AMP pages.
My first encounter win AMP was copying and pasting and link into a text message and it had a google domain. I was confused as all hell. Took me a minute to get the actual link.
I've been using duckduckgo exclusively for a year now on all my devices and I'm loving it.
The whole point of a search engine is to give you what you're looking for, and ddg delivers. If I ever need to Google something, I'll use !g query. You can make it look really nice also by changing it from the Default theme to Basic.
I didn't realize you could do this on Android until I read this. I've been using DDG on desktop for a year or so. The trick is to visit DDG before you try to change your search engine. Otherwise, it's not listed as an option.
If you put "!g" at the start of your search, DDG automatically redirects you to the search result in google.
I've been using DDG as my search engine for about 2 1/2 years now, and I find absolutely no reason to go back to Google other than location search, and DDG proxies that easily.
Thus explaining why I'm mystified by what everyone is complaining about. For at least the last couple of years (whenever iOS allowed DDG as default search engine) I've used pretty much nothing but DDG. I'm guessing I've probably never seen an AMP page (certainly not that I've noticed).
For several months AMP regularly (70-80%) caused pages to fail to load from Google News through a Chrome browser on Android M. Often after several reload attempts it would work, but sometimes not. Loading through Firefox was always a work around, but URL copy and paste was annoying.
I figured it was just tehGoog reminding me to pay attention to other human beings rather than staring at my phone. Then they fixed it with some update, when they realized I was incorrigible (actually I never figured out why).
So that's what has been happening! I've been so confused lately as to why Google links would fail to forward me to the website I clicked on, leaving a blank page and a massive google.com query string in my address bar. Sometimes refreshing the page has not worked, forcing me to manually copy and paste the address off of the search results. Someone should write a browser plugin that uses the little green URL instead of the <a> in all Google links.
Google restricts access to the search results carousel to AMP. If they did it in a neutral manner by measuring performance almost all of the criticism would evaporate.
Eek, I wasn't aware they were still doing that, but I confirmed myself. I abhor the practice here, and am now committed to not clicking any more AMP links.
I just searched "news" in Google on mobile and 2 links were non-AMP in my carousel... (ctvnews.ca and thestar.com) but they were heavily optimized in an AMP-like way.
The search results you see just put in the effort to provide structured data to google. You can do this easily and without any AMP integrations by simply embedding structured data (such as JSON-LD) on the page.
Embedded "microformats" like JSON-LD (or, say, Dublin Core RDF metadata) are somewhat problematic, in that they're not covered by the HTML standards, and not documented on any of the "HTML5 tutorial" sites—since they're something "above" HTML. (It'd be a bit like expecting such sites to document how to write inline SVG in your HTML5 document.)
So there's no "effortless" way for knowledge of HTML-embedded microformats to filter down to most HTML document authors or web-app theme creators. They have to actually go and seek such knowledge out. And often they don't know what they don't know†, so they have no reason to.
Essentially anything on the web that requires or relies on an HTML-embedded microformat to work, is instantly relegated to being an "SEO black art" that just gets passed around in blog posts read by bigcorp web-app devs and no one else.
---
† This is one big part of what the people who dislike minification, WASM, etc. are complaining about re: the "readable" web. It used to be that you'd discover techniques like this by just looking at a bigcorp's production web pages and seeing how they work. That's far harder today than it used to be, and it's only going to get even harder in the future.
RE: the last point, that doesn't seem so. Desktop apps have always been opaque, same as server backends. If anything, the rise of SPAs, WebAssembly, Service Workers and JS in general means you can see a lot more of the action in your browser rather than it being hidden away somewhere.
WebAssembly expressly has a textual representation so that it can be inspected, it's part of the spec. And for everything else that's compiled, there are always decompilers to give you the source, often times at great quality.
HTTP/2 is binary (and by default encrypted) but nobody notices because browsers and tools transparently convert it to text for you, even though there were plenty of complaints that it would be hard to inspect.
Because in reality every media source provides AMP versions.
Can we be clear in this discussion that the oft-cited carousel is only relevant for trending/news type searches? It has no bearing on the overwhelming majority of searches.
That's not really true. I play a game called summoners war and Google strategies often. It's always an AMP page at the top from the one summoner's war site that does that even though I don't like their page vs. the other ones. AMP prioritization isn't limited to news/trending.
What's the point of the discussion if you just randomly discount results? And it does apply to other searches too.
Sites do it because they are forced to for that placement, not because they want to. They would much rather have a single consistent website that benefits everyone on the web.
This is false. Carousel links do not need to be AMP. To be in the carousel, however, you must be approved by Google News publisher center—AMP not required.
It's possible that they've changed their implementation but it absolutely was not the case for at least the first year or so.
It was one of the reasons why I switched exclusively to Brave on mobile because they didn't serve AMP to that user agent, which meant that Google search results loaded faster (that 100KB of render-blocking JavaScript meant a LOT of time looking at empty pages on the subway) and weren't broken if you tried to share or save the URLs.
Testing just now, I see only AMP links in the carousel but there are queries where a non-AMP link has sufficient rank to be featured in the top stories section.
This is not true and you can demonstrate this for yourself by just searching on Google three or four times and looking at the carousel. Only the top stories and breaking news / live coverage carousels require AMP.
Yeah, the display of AMP pages, even on Android devices, is absurdly user-hostile. The textless "link" icon to get to the actual content, the loss of the critical "find in page" command, the loss of screen real-estate when the browser already has a bar.
It's an odd worst-of-both-worlds implementation where it has made the compromises needed to display it in a vanilla Chrome browser window, but doesn't actually appear to be a vanilla Chrome browser window with normal Chrome features.
And that's not getting into the terrifying power-position it gives google as the host of your content.
Personally, I dislike AMP with a vengeance - I refuse to click any AMP search result or link - so I'm glad to see people quantitatively assessing the benefits for their site (or lack thereof) and moving away from it. Now if only we could encourage web developers to still adhere to the better parts of the protocol, the mobile web might become a better place.
I hate AMP so much that I switched to DuckDuckGo on mobile more than a year ago and have been thrilled. Search results are as good and I haven’t seen an AMP page since.
I’m at the other end of the spectrum. I don’t have a good internet connection and it’s painful to wait for a page to load. If I see the AMP icon I will visit that site than the non AMP site. Oh and I’m in US. If I travel abroad, it’s much worse. As a consumer, AMP has been phenomenal.
AMP + Safari reader mode = Best browsing experience.
Is there a coordinated campaign going on against AMP? My experience as a user has been nothing but positive, with pages loading in a small fraction of the time of normal pages, while I read nothing but negativity about AMP in developer communities like this one. Am I missing something fundamentally evil about AMP that's not apparent from the user standpoint? From my limited perspective, it seems to be the only force trying to counteract an increasingly bloated and slow web.
I use DuckDuckGo, so I haven't actually seen an amp page in my own personal browsing. However, I have seen an uptick in people sending me https://google.com/amp/<content>.
I avoid GOOG when possible, so I have to copy out <content> manually, which is (minorly) annoying. Thus, AMP leaves a bad taste in my mouth.
Then, of course, there's a variety of ideological arguments against it, but those have all been discussed ad nauseam, so I'll leave them out of this post.
There's no coordinated campaign that I know of. The negative reaction that I personally have to AMP is that Google started pushing it as the solution to a problem that they helped create. It's just an attempt to lock publishers into Google's ecosystem.
If Google really cared about fixing the root of the problem, they would put the AMP icon next to sites that are already small and already load fast, and rank them higher, rather than creating a new platform.
I'm not sure I follow how Google helped create a trend of increasingly bloated sites that don't load quickly? The only sites I see loading remotely as quickly as AMP sites are AMP sites. Nothing comes close, nor is it apparent online publishers are even trying to optimize their pages to load quickly. AMP strikes me as a project of desperation by Google, as publishers seem intent to kill their own sites by loading them with as many XML HTTP requests and trackers as possible.
Google has been encouraging those sites to run all that extra cruft by:
A) Not de-ranking sites that are large and slow
B) Asking them to run a bunch of unnecessary trackers (Google Analytics)
I've never used AMP, but it does sound like it is fast, and web-page bloat is indeed a problem. But adding another layer (which also just happens to make you more beholden to Google) isn't the right way to fix that problem, removing the bloated layers is.
If I encourage you to murder someone, and you do it, I'm party to murder. If I don't care about you either way and you murder someone, I'm not party to murder.
The result is the same (you murdered somebody), but it very much matters if and how I was involved.
It's honestly blowing my mind how universal and non-substantive the complaints here actually are.
The actual article is a legitimate issue and should be looked into (and sounds like it is), but the vitriol for AMP voiced here is crazy, considering what it does (very little).
AMP Pages at time leaves off crucial content to a story - I've seen it a lot with articles containing embedded tweets.
I'd rather not deal with AMP and just go with the real page + an ad blocker. Fortunately, in iOS, the ad blockers also work in certain types of embedded web views (SafariViewController) that my RSS Reader uses.
That's the publisher not doing things in the AMP-specified way. On massive content sites it's a pain in the rear to maintain both a normal version and an AMP version (and an FBIA version, and an Apple News version), so things like tweet embeds get left out.
I've tried AMP a couple times only to get rid of it.
It's a nice bar to set for websites to compete against. I think Google rightfully so should penalize bloated & slow sites.
It's easy to create something better than AMP's experience. It takes a little time optimizing your site to create a pleasant interface & experience.
The majority of sites I see that are below the AMP bar, are sites that choose to be that way with lots of ads & pop ups. They do it because these things help them make money. So for them they have little incentive to use AMP. A lot of them make some of that money with Google Ads though.
So at the end of the day, I really don't see who AMP is for.
Agreed. The obsession with page load times tilts the equation toward sites that spend more money on developers than content creators. Nothing against developers, but people indeed are looking for content rather than fast sites. I'd be happy to wait another second if the site I'm going to visit has more relevant stuff to what I searched for. Perhaps if a site is terribly slow, that's one thing, but differentiating sites based on microsecond differences is preposterous.
The ranking algorithm is secret, so one can't know much about how it actually works. But, considering how much effort is spent to increase site speeds, the reality is that that's the impression that developers and site owners have.
Agree with you that that's the impression those people have. I wish Google would be more transparent about the reality. The only thing I've heard actual Google employees say is stuff like "the speed portion of the algorithm will affect only the slowest sites." So if a shitty site like Forbes or CNN is reducing their mobile time from 20 seconds (likely on their bloated regular site) to less than 1 second (AMP) maybe that will give them a boost. But if my site loads in 3 seconds now and goes to less than 1 second on AMP, is it really worth it for me...
I like the idea of AMP but its implementation by Google is so poor. It's just way too buggy for me. Websites will load only as much as my phone's screen allows - when I try to scroll down nothing happens. Other times it's just a blank page.
AMP convinced me to stop using Google's mobile website and switch to DuckDuckGo, and as an added bonus I can View Image from image search results.
EDIT: Forgot about how Google refuses to serve their modern version of Google.com on Firefox Android. That was the final nail in the coffin for me.
I found the article an interesting read, however I couldn't help but think we are talking about AMP and small sites on Medium. When I download that article from Medium with wget I receive a 142K html file that is surprisingly small in this day and age, but still bloated more than is needs to be.
Using this script[0], I was able to get it down to 14K. Then further cleaning it up in emacs and adding <img> tags, I got the html down to 10k. That means it should take probably less than 5 seconds to load the html (not including the massive images) on a 5KB/s connection in Australia (more common thank you might think in the country areas, although getting much better with the NBN roll out) or any other 3rd world internet countries.
You can test the resulting html in this gist[1]. Please note I did that in about 20mins, and did not test on mobile, so it is not perfect. I expect the images need to be scaled to fit on mobile. Also I only used the <style> tag to keep it as one file, I don't recommend doing that on real websites.
I really hope more people start caring about saving bandwidth and client side resources (CPU, RAM, etc.)
The carousel on the top of a results page is only for AMP pages, so yes, they're absolutely prioritized.
But also, why are you so sure they're not prioritized in the rest of the results? It's very difficult to prove a negative here, and I personally don't trust anything google has said publicly on the matter.
I don't know about ranking, but they do put them at the top of the page. And when you use google with JS enabled all AMP results will be pre-loaded in the background.
AMP pages aren't faster. They just feel faster when you go through google search and the hidden background pre-load.
Ranking is effectively higher placement on the page, and the AMP links carousel is the highest on the page. The outcome is the same, regardless of methodology.
Indeed, when Google claims they don't favor AMP pages, they're being disingenuous. Just like suggestions that you can't pay them for higher rankings: You absolutely can, because Google Ads go on top, and they're barely distinguishable from native results.
> Sometimes the cover-up is more damaging than the crime.
I hate walled gardens. What troubles me more is that something that came from addressing a competitor's product (Fb's Instant Articles in this case) has grown to do more damage than what Instant Articles could have in the first place.
They’re not fixing it, they’re forcing major browser vendors to patch their software to insert a different URL (the publisher’s) into the address bar than the one that was actually loaded (google.com).
Personally I hope Apple continues to ignore the AMP standard and leaves the links broken on iOS Safari, because it’s the only way to make it obvious to users what’s happening. Google is trying to sweep it under the rug; hopefully Apple doesn’t let them get away with it.
My personal experience has been that a large number of AMP pages never load. If I search the article title on Google and click the non AMP page, it loads fine. Even after doing that and going back to the AMP link, still won't load.
I am fairly sure the product is not working as expected... My experience is on an Android Pixel 2 - so it's not like I am not a target market.
From an end-user perspective, my solution to the degradation of Google was to switch to DuckDuckGo.com.
About one year ago when I switched there were a few things that annoyed me, but it’s become a great experience since then... and they’re not tracking me.
I'm not sure, but it seems like the site/service this article is referencing is for either coders, or people who need coders, but either way is targeting a more-technical / business-oriented audience.
What is the overlap on the Venn diagram between "people who like to use AMP" and "people who are technical enough to need this service"? My first instinct would be that it's low.
Hey! Thanks for the comment, but I'm not quite sure what you mean. Yep, Rockstar is a bunch of developers helping other businesses make software. I wrote the article because there's a lot of people who are considering AMP whether your technically minded or your on the business side asking your developers (or us at Rockstar) to AMPlify all the things. Thought it would be fair warning for all those groups. Also, I don't write for the sole purpose of "content marketing" to an audience that needs us at Rockstar. I've been a developer for 20+ years. I write what I write about :) Sometimes it'll draw in customers, sometimes new friends and colleagues. And sometimes I just like to show funny pictures of my daughter.
Its by far the quality of the content that matters the most for ranking on Google search engine, much more than the speed of the page.
If the page speed is acceptable, its going to be ranked over an AMP page if the content is better.
Content is the key, build better content, that solves better a concrete problem that visitors have: that is how you win visitors trust and get higher rankings at the same time.
> There’s little reason that a small company website that could load in 100ms as a static site of all HTML and no Javascript is actually a 100MB React app
AMP is the developer equivalent of getting a gastric bypass surgery because you refuse to control yourself and live a healthy lifestyle.
There's a very obvious solution here to the AMP issues that people keep writing about: stop building massively bloated sites, where the bloat inevitably acts to abuse users rather than provide a better experience. AMP isn't necessary at all. It is that simple. No, you don't need 600kb of CSS. No you don't need 8mb of JavaScript. Just stop building like that, there's a better way. Put your obese, lazy sites on a healthy diet and exercise regimen.
Something is awry here. Putting AMP on a page immediately gets you points removed for "Uses inefficient cache policy on static assets" for the inclusion of v0.js.
The author seem to be implying conversion loss from pre/post which may be affected from many factors including seasonality - I’m wondering why didn’t he do an A/B for a radical design like that?
I did actually split test. I had traffic going to both types of our landing pages. I didn't like the AMP results but there wasn't enough traffic yet to draw the conclusion, so I just put all the traffic there and measure across time periods a bit.
As for seasonality, that's a fine argument. But overall traffic was consistent across these weeks measured. Also, our conversion rate was awesome through US holidays like July 4. Also, as soon as I got rid of AMP, immediately our conversion rate is back. It's pretty stark how bad AMP was for us.
Ah ok that make sense. Not sure how you measure conversion, but in our case (I’m in B2C ecommerce) both traffic and conversion often fluctuates, so if one is stable doesn’t mean that the other won’t move.
Can you A/B test a site like that? I don't really know how AMP works (so I may be way off base), but from a user standpoint, since you don't seem to actually go to the page, just to Google's AMP version, I'd imagine there's no way to control whether the user is getting an AMP version or not in an A/B way. It seems like you're either AMP enabled (and the user gets AMP) or you're not (and they get the normal page).
Yeah, it's not easy to test AMP unless you're doing things like bringing in traffic from Adwords where you can split the traffic up. I do a bunch of testing with that Adwords traffic.
Google you are supposed to help me search digital documents to find ones relevant to me. I dont even care if they're slow, you are a search engine not tye internet police.
Unrelated to this topic, but still speaking about AMP: has anyone done integration tests with AMP pages? It seems that it's impossible to achieve that, and since AMP has its own async module with amp-forms and amp-mustache, I'm a little nervous about replacing a normal landing page with an AMP page that has errors on its scripting.
I've looked everywhere, but to no avail. Can anyone shed some light on this?
AMP is the worst. I used to get rid of it by going through encrypted.google.com, but unfortunately that's been shut down and I haven't figured out how to use google and not use AMP. But I still want to.
I do find myself using Chrome on android less and less primarily because of AMP
The argument against amp is based on moats and monopoly but millions of people who make money from Google are unlikely to care about these things. They will do anything to get better revenue or rankings.
This is where consumer choice and free markets break down, and regulations become important. That's why dumping is a illegal, because consumers are not going to turn away from cheap products because of bad actors.
Um, google is taking people's pages and hosting them themselves? That seems like a copyright violation to me. If my website was being mirrored by google and they diverted traffic to the mirror instead of my own website, I'd be filing a DMCA pretty quick.
A consultant I worked with would charge lots of $$$ for basically doing to his large enterprise clients. For example we would go into a meeting with 4 random employees and then charge $250 per hour per person.
He joked to me and said that this money is essentially "stupidity tax" on these large enterprises because they can't navigate their way through even some trivial tech problems.
AMP is one such stupidity tax in my personal opinion. I have worked for many years in web performance optimisation and I realise that every internet business must pay a good close attention to it but most of them are incompetent to do that. Their webpages are bloated. Just check how heavy is the page for forbes.com and you will realise the problem.
AMP sets a standard where even with low quality developers you can have nice fast loading pages. It is very similar to those Javascript wrappers that force typed variables and semicolons.
IF you are already having a good web team don't waste time on AMP unless there is some real demonstrable benefit.
What type of consultant was he? Marketing or web app development? Did he have decades of experience to charge such rates?
(I agree with everything else you have said. My Xioami smartphone from 2014 is faster than the Packard-Bell computer I used back in the mid-90s... yet companies always find a way to slow things down. They used to do it with Flash. One catalog company even did their ENTIRE website in Flash... when people were still using 56k modems and DSL was not as widespread as before.)
Data integration consultant with around 10 years of experience. Sounds fancy but it was about making sure their Facebook posts also get tweeted, when they post a new YouTube video it also gets published to their FB Page, that they are able to connect their Salesforce with Slack (or suggest them to use Slack) and blah.
He even worked with a bank that decided to close down their website and redo entire netbanking in some .net based installable app because it was supposedly secure. After spending a lot of money and a pilot with 10,000 users they discovered that nearly 80% of their users who were forced to use it simply move the money out of the bank.
You can not win these kind of contracts easily. You need to have ex-classmates inside who will make the right introductions. You need to hang out with right people, please them and so on. Race, Sex also plays a big role. For example overwhelmingly white people will chose a white person over an Indian and vice versa.
While the tech work is pretty less, the social engineering involved is hard to scale.
This is a pretty silly argument.... every company's decisions are based on their own interest. That doesn't mean that your interest and theirs don't align.
JS doesn't just incur a bandwidth cost, you have parse time and then the hit on your users framerate when you naively fiddle with the DOM or override the scrolling behaviour.
"There’s nothing that magical about it. A big part of its performance boost is simply its standards: no javascript, all inline CSS, and CSS can only measure 50KB or less. You’re going to make any page load faster with those requirements."
Gee, for my startup, that's the way I wrote my Web pages from the beginning! Microsoft's ASP.NET wrote a little, simple JavaScript for me, but for using my Web pages that JavaScript is optional.
Ah good, I was hoping for the "Hurdy Hur Hur Ruby is slow so Rails is slow crowd to show"
Ruby "going out of vogue" has nothing to do with the authors problem. It wouldn't matter if the author was using TrendyNewFramework.js™, PHP, Django or some GO framework. The issue seems to be the terrible user experience that comes with using AMP. I know I personally hate it and tend to drop off when I see it begin loading.
Also FWIW, there's plenty of slow SPA's built on the latest and greatest, and there's plenty of fast rails sites (have you been to https://dev.to recently? It's like ️). Rails is doing just fine.
Also, I wonder if I'm the only one that avoids AMP-based sites out of principle. I highly doubt it affects your conversions (I'm not really the easily "convertible" type), but makes one wonder if there can be effective web tech boycotts.