The use of JavaScript-based interactive features on photographers websites has increased in recent years. I don’t think certain types of use of JavaScript have brought positives to the many photographer’s websites I’ve worked on.
I’ve been working on the SEO of other photographers sites since around 2014/2015. During that time, there’s a recurrent theme I have seen.
Here’s typically how it goes:
- Photographer switches theme
- Enquiries dry up
- Photographer questions their talent and considers quitting
- Someone in a facebook group suggests they get an SEO consultant to look at their site
- I discover a JavaScript-heavy homepage plugin and Google queries lacking terms used on the homepage
What is JavaScript?
Before we look at the SEO side of things – what is JavaScript?
Javascript is one of the core technologies of the web, alongside HTML and CSS. It’s here to stay, and it’s not going anywhere. HTML is used to create static pages. It’s not interactive and does not change based on user actions.
JavaScript makes a web page dynamic and interactive. So, when you hover over elements and they change, or you have animations, that’s JavaScript.
Client-side Rendering and Server-side Rendering
There are some major differences between server-side rendering and client-side rendering and this links with Google bot’s ability to read them.
With traditional HTML sites, the code is rendered on the server, so when the Google bot visits your page, the code is there and ready to be read. No further action is required.
JavaScript is usually run on the user’s machine (client-side rendering), so the downside of this is that the Googlebot initially gets a page without any content, or the JavaScript content elements missing.
There’s an additional action required to load the rendered content, and this happens on every page featuring JavaScript, every time a page is loaded.
What this means is that there are WAY more resources required to load JavaScript-heavy pages, so the Googlebot has a two-step process. It visits once, and if the data is not ready (because it’s JavaScript) it plans to come back when it has ‘more resources available’.
The key thing here is the part about ‘when there are more resources available‘. Google has said it could be weeks.
So, at the very least, anything indexed is going to take significantly longer.
JavaScript SEO
JavaScript use in photographers websites has become more prevalent in recent years, whether through the use of a plugin gallery or built into the theme code itself, and it poses a number of problems.
The first of those problems is not with the JavaScript at all, it’s with the fact that some of the JavaScript implemented has clearly not been tested properly.
In addition, many photographers do not track their data properly. Website issues are often not picked up and acted on fast enough as a result.
The time photographers seek me out for help, they can have had months of underperformance, but they will often not be aware of this at all. Many assume that site visitor no longer like their work.
Learn more in this video:
Can Google Render JavaScript?
Yes.
Yes, it can… and herein lies the problem.
Google has come out and said their bots can render JavaScript. But… and here’s the important bit… but as stated earlier, they do not render it straight away.
The HTML is rendered straight away, then the bot returns to render the JavaScript when (quote) there are ‘more resources available’.
In reality, though, I often see a switch to a JavaScript-heavy homepage correspond with a drop in rankings.
It’s not so much that JavaScript is bad in general, but that some of the ways the code is implemented on sites it problematic.
Check out this video where Google’s John Mueller goes into detail about JavaScript SEO, there’s some great info around the 10-minute mark where he’s specific about what causes problems:
At 10:50 John say’s ‘We’ll crawl and render all of the pages, but sometimes that doesn’t work… … in those cases where we can’t render the content, what will happen is we’ll fall back to the raw HTML version that you serve us as well.
JavaScript vs Designers and Developers
When talking with technical support at various web design companies over the last few years, the same conversation has come up time and time again.
It’s a conversation I’d like to see change. I feel photographers are getting a raw deal on improperly coded JavaScript websites.
The conversation can be summarised as this:
Me: There’s an issue on this site with Google rendering the JavaScript, please could you investigate?
Developer: The Google bot can render JavaScript fine
Me: It’s not rendering yours though…
Developer: The Google bot can render JavaScript fine
Me: The queries showing in Google search console reflect the fact the bot is not able to render the page prop...
Developer: The Google bot can render JavaScript fine
Me: The rankings tanked when the theme was switched though, and all evidence points towards these two events being connected.
Developer: Google bot can render JavaScript fine
Me:
Me to the client: I recommend you switch to Divi. Go for a super simple homepage with a static photo and text and minimal fancy sh*t.
John at 11:35: ‘If you recognise one of your pages dropping out of Google’s index, then it might be that we’re just not able to render them anymore and that we’re falling back to the raw HTML version‘
JavaScript SEO: What Needs to Change
Well, it’s not the JavaScript that needs to change.
It’s the implementation.
I believe web developers and web designers in the industry should be proactive about educating themselves on JavaScript and it impacts on SEO. They should be open and welcome feedback when SEO experts get in touch to communicate problems.
If I had designed a theme that was resulting in clients sites dropping in rankings, I’d want to know about it. The response I typically get from theme and template companies from within the photography industry? Typically dismissiveness and denial. This is not helpful for anyone.
I’d like to see web designers and developers test their themes and templates more.
I’d like to see data collated so that rendering issue trends could be quickly identified and addressed.
In the meantime, where developers are uncooperative, unhelpful and try to bling my clients with technology, I’ll be helping them switch to a theme the Google bot can read.
But – I’d rather be working together with others in the industry to help improve things.
Are you open to a conversation about this? Let’s talk.
Do Photographers Even Need JavaScript?
In my opinion, the simpler you can do something, the better.
Photography sites can be very effective without lots of bells and whistles, so the simpler you keep things, the better.
My advice would be to prioritise user experience and focus on things like speed and providing useful information in alignment with what Google is looking for.
Further Reading on JavaScript SEO
I’ve collated some relevant articles for further reading:
Google Developers: Javascript basics
Onely’s guide to Javascript SEO
A recent (June 2019) article on using JavaScript ‘responsibly’
This article will be useful for developers wanting to lean more: JavaScript Rendering