 No surprise that COVID-19 has some issues with me staying on. On Drupal Experience, on Drupal.org, you can find me at Stutt Joda, and on Twitter, you can find me at Stutt Joda as well. So if you want to contact me afterwards, you know where to find me. Search engine optimization is not something you do anymore. It's something that happens. I also write. So this is a quote from Chad Pollet, he's a marketing engineer. He means is, okay, you set everything up, and then when the client is putting in his or her content, everything should be working properly if they write. So what should you be doing? I'm not going to focus on the basics, so not sitemaps or meta-technicals, you should do that anyway. So I'm going to focus on what's really the focus for this year, or at least that was building up to this year. The first confirmed ranking factor from Google, because it's mainly Google that we're focusing on, because this is the biggest party, is topicality. So it's the page you are referring to actually pointing to. Yeah, it is the search term that Google finds your page at, also the topic of your page. So if someone search for balloons, and your page is about computers, but somewhere you mentioned in balloons, then Google still say no, that's not what I was looking for. And the quality of the page is properly written, is it written by somebody who knows what they are talking about, that sort of stuff. The page speed, so how fast does your page load, because in the current society we don't want to wait anymore, so the faster you are, the higher you rank. Then we'll discuss a little bit about rank-brain, that's the algorithm that Google uses to check for combination between words. And the next logical follow-up are the entities. So what are the entities, and how do you apply those? Structured data, that's the next follow-up, so how do you have entities, and how do you put some data in there that's not directly visible for the visitor, but it is visible for search engines. And the last part is the freshness, so how regularly do you update your content, or is your content a current issue, like a lot of sites with COVID-19 will rank higher today, or will be crawled regularly by Google these days. So let's start with topicality. So is your page actually about a subject that Google is searching for? So if you, like I mentioned, if Google has got search and balloons, it will not search to find your page, if it's about computers, which makes sense. So how do you make sure that Google really knows that what is searched is really also on the page? Well, mainly you need to have your term in the URL, so I have clean URLs, so no slash no ID, but proper clean URL, and also make sure that in the title text it is mentioned, and then it should be mentioned at least a couple of times in your content itself, otherwise why talk about it, in which you can use synonyms because Google is smart enough. Google will also look at your word count, and if your content is unique. So if you're copy pasted from somewhere else, Google will check which content was the original. So if you're not the original poster, then something, and you will not get high up in the ranking. So what kind of Drupal modules can you use for that? So there's the Yoast CEO module, it's a real-time CEO for Drupal, which is based on the Yoast CEO module for WordPress, and that will clearly see if you want your page to focus on certain keywords, if that page will rank good enough. So basically you can type in a search word and then it will say, well, like for example, if you were this example, if you don't use images on your page, maybe you should add some because images tell more than a thousand words and a video being more. And also, in this case, in this example, the keyword didn't appear on the URL. So that's been unknown. So make sure that the URLs are correct and there are some other cases and issues it will explain. And also gives a solution for it. So that's how you do a topicality. And the module I didn't mention here, I forgot to put in last moment when I was changing my AES slides, is the path out the modules, it's fairly widely used. So it would create automatically clean URLs for you if you set them up properly. How you set them up, yeah, that's up to you. What you think is a wise choice, but including a no title is a good idea. Next up is the quality. So how good is your site's reputation? Google uses the eat, yeah, the eat, what's the word? Yeah, it's synonyms, the word creates it. It's about expertise. So it's the person writing about the article. Is he or she an expert in that field? Does she or she know what they're talking about? Yeah, so then there's also the, I always struggle with the authoritativeness of the person writing the article. It could also be the company itself. So it just rise to add a link to the biography of the author. So it does more about the author itself. So Google will recognize, oh, this person knows. There's stuff and this should be a proper article. And it's also wise if you have a job title, put it behind the name. So it gives a little bit of reference of what such person is doing within the company. And also the trustworthiness, that is if you write content and that's mostly for your clients instead for yourself probably, write it to be useful for the visitors, not for the search engine. You really need to write for the visitors because that's why you're on the internet. And Google is getting better and better and better in recognizing your language and your grammar and thus also your content. So you need to be focusing on what you are writing. So, yeah, this is mostly content and people based. So there's not really a Drupal module I can point you at. So the next thing is the page speed. Yeah, the page speed is a big thing right now. Like I said, current, yeah, current situation in the world people want information fast, so your page needs to load fast. So I have two examples of the FCP and the LCP. The FCP is the first content for paint, which means that the first part of the page is rendered. And the LCP is not the last, it's the largest content for paint. And that means that the page is rendered and ready for use. In a top example, you see that it takes a while before everything is properly loaded. So they do at least preserve space for the images that are showing up. So it's not like everything will bounce up and down while you're trying to do something on site. But it's still, you have to wait if everything is loaded. On the other page, it is very fast. You see that the LCP is already on the second point, even though the image don't look fully loaded yet. They are lazy loaded, so you only see the main color of the image before the rest of the color is rendered. And for Google, that is enough, the page is useful. You see something, even though it's not what the client expected. The client might want to wait a little bit longer, but for Google, this is useful enough to start and make snippets of the site. Yeah, you want to make sure that fvindigitool is properly handled. Then you have the first input delay, and that means if a client is interacting with the page, how long does it take before something happens? You want it as fast as possible. Google prefers it to be within 50 milliseconds. For the first, it means a little bit of response. So yeah, if you are having event handlers and they are only loaded when the page is fully loaded, then it can take some time before something happens. And then Google says, yeah, okay, the page is loaded, but I still cannot do anything, or the page is half loaded, and I want to click and go back and I cannot do that because I have to wait until the page is loaded. Oh, it was going so well. Images, properly. Ask him to rewind a minute. Can you hear me, Dick? Yeah, I can hear you. Yeah, can you go back about half a minute or so? Half a minute, I don't know where I was half a minute ago. I can make one slide, is that okay? No, you were okay on that slide, I think it was, if you were finishing up about FID, I think. FID, okay, thank you. So FID means, yeah, the response time when a user tries to interact with the page, which means he's clicking on something and how long does it take until the first response comes, like the index call, or just a simple submit button, directly submitting something, which would be weird because, probably he needs to fill in a form first, but it could be a next button or something. Yeah, you don't want the visitor to wait until the rest of the page is loaded and then the embrace handle. So you need to make sure that if you're building something and it has event handlers that the client can interact pretty fast with, that they also are moved on the top of the line and directly handle. Yeah, the last point is the TTI, which is the time to interact with, which means how long does it take before a page is properly usable for the user? So anything that's rendered that needs to be rendered, the event handlers are in place and yeah, the page is pretty responsive to user actions on the screen. So that's the biggest thing that Google looks for and that should be below five seconds. That's the ideal scoring for you. So what can you do to make sure your page loads fast? Well, of course you can have a fast host that makes sense. You can add an advanced CSS and JavaScript aggregation module that makes sure your site and that all the CSS and all of the JavaScript as user pages combined and compressed to the smallest possible, so it loads faster. The picture is from the module page, so they show how much you can win by using the module without any other changes. Another thing is to accelerate the mobile pages. Google looks for mobile first, so if you have fast mobile pages, that's a big win for Google as well. Then you have all sorts of caching solutions. MAM cache and there are a lot of modules and system caches that you can apply and there's also a Drupal cache itself, the core cache with proper terrain. Yeah, that's a bit much to explain today, but I would urge you to properly look into it and apply it where possible. And of course make sure that your image aren't too big. Don't use a full background size image if you're only showing it as an avatar because that just takes too long. You can use the picture tag which is in core to show certain images depending on the resolution. So if you're on a mobile, you see a smaller picture and if I'm on my laptop, I see a bigger one. Maybe even a totally different picture, but that's up to you. If you're building the site. So yeah, look for those. Make sure that everything is as small as possible to make sure that the page is loading as fast as possible. Then comes the big abracadabra from Google itself, the rain brain. Like it says, rain brain converts the textual contents of search queries into word factors, also known as distributed representations, each of which has a unique coordinate address in a mathematical space. Factors close to each other in a space correspond in the linguistic similarity. That's a big mouthful. And yeah, what it means that it searches for words that are also used next to it. So it's not only used to looking for a balloon but it's looking for a chord which the balloon is hanging or certain colors, certain shapes, maybe even certain professions. Yeah, so it makes sure that if you're looking for something that what should be the most relevant search for you and there's not much you can do about it because it's totally a self-learning algorithm. So yeah, write proper content so that rain brain can learn properly and that's the only thing you can do for that. And but it works with entities and an entity is a theme or concept that is singular, unique, well-defined and distinguishable. So that means that if you say something that is ultimately clear what you're talking about and Google would love that because that means there are search results better than what they say. But if I say Apple, I could be talking about the company of course, Apple. I could be talking about fruit but I could also be talking for example about New York, the big Apple. So the word Apple itself is not unique enough. So we need to make sure that what Google does is if you're searching for Apple it will not show only the company. It will also show in the search results the fruit and maybe even New York if it's popular enough that means that if you search for something and the first results will not be only for that single topic, there will be a spread for the other versions as well. It's only checking how much is the spread used for. So if they see that most people are talking about Apple, the company, then you will see more results of Apple, the company if you search for Apple and less of the fruit but the fruit will be still be somewhere between the results but there will be less results. So what you need to do is make sure that you have structured data which is the following part of what your data is representing, is it a company, is it a fruit? Are we talking about the city? And the way Google prefers it is the JSON LD which is just an object notation for linked data which I have an example on the right side that I should go, it's just a kind of JavaScript but only showing a JSON notation. I can walk through it but I think most people can read JSON it's not the hardest structure to read. So it basically gives extra information or all the information that Google needs to work with and it also will use this data for its snippets. So if it will show a small version, if you're, yeah, let's say you're looking for a restaurant and then you will need to have open hours there as well so Google will know those things from that information and it will show on the snippet when you open a restaurant on Google Maps or for example, oh those were the opening times. So yeah, it's up to you to make sure that those are properly filled and there's also microdata and REF, REF is resource description framework and those give it work with extra attributes that you add to the HTML tags and with extra information and those are also used by sometimes by social media and I don't think Google uses this anymore unless there is no JSON-LD. So that's still a way to properly fill and give the extra metadata to Google and luckily there's a module that helps you create those JSON-LD, that's the schema.org method there. And currently it has a lot of the types that it's using are the most top-level types of schema.org. I'm not sure if they're going to include lower ones or maybe there's an API to make sure that you can create your own. But if you have something then you can fill it in, use the token module to make sure that everything is properly filled and yeah, it will create a JSON-LD as part of code and put it into your website. So you don't have to do a lot. If you build this properly, it will go smoothly for the client. And then we come to the last part, which is the freshness. So how fresh is your data? Google faves fresh content only for specific queries that serve freshness, what is known as the query-deserved freshness, which means that it will crawl regularly if the data is important, like recent events or hot topics. Well, everybody's talking about COVID-19, so that's a hot topic. So a lot of sites that discuss COVID-19 will be crawled regularly by Google. There's also the regularly recurring events. I don't have a proper example for that, but something like elections, but those don't need to be regularly and they are definitely recurring. But yeah, sport events like the Olympics, which are on a regular basis, the exception of this year maybe, but okay, that's a different story. And frequent updates. If you frequently update your page and the information is very important, then also Google will crawl you a lot more, but make sure that your content is still relevant if you're talking about nonsense or just change one character. That's not good enough. So how does this all work together? Well, for example, this is just some numbers. I didn't really do a search query on any site specifically. You see this first seven, and then there are other rankings that Google uses that we know exist, but we don't know what they do or anything because here at Google tries to keep some part of it secret because otherwise other companies can do it as well. So yeah, it basically gives a ranking on each factor and it multiplies it with each other and it gives a big number and that's the bit number and that's a number that the search engine uses for your ranking. So the higher the bit, the better your score is. But if you fail a little bit, you will drop very fast. So it's not a thing that you can focus on one thing. You have to do everything. Or at least make sure that your score is one or higher. That helps a lot. If you're below one year, then you will drop a lot. But the higher your score on anything, it will help up. But if you go down, it will hurt you really hard. So are there next to Drupal any tools that you can use? Of course, there are the Google tools. If the mobile friendly test, which helps you to see if Google finds your site mobile friendly enough and it will even return some recommendations if you don't have a proper mobile website. And the rich results test, it shows rich results can be created by search data, but not how it will look. The space speed insights shows you how fast Google finds your site is. So you can have different experience in Google, but it shows how Google will work with it. And the search console shows you how Google indexes your site. So what is it looking at? The title tag, the images, everything that you have on the content base, as long as it's relevant. And there we go again. Last one is the structured data testing tool, which shows you the snippet that Google will create with the data that you are giving. And so you can properly test if everything is okay, that you don't have the description and title backwards or something like that. And yeah, or that something is missing because you forgot to fill it in. And those are the tools that you can use. And I think I'm faster than I thought that would be. Yeah, I am a little bit. Yeah, that's it. Are there any questions? Doesn't look like it. Okay, that's easy for me. Thank you very much, Dick. Yeah, you're welcome.