A question I have seen pop up is whether Google uses HTML class names for ranking purposes; in other words, does it matter if our HTML class names are randomly generated or can we use keywords in our HTML and CSS class names?
How can coding effect SEO
There are still some things that might influence rankings, but those will generally have truly minuscule significance in regards to our rankings.
Therefor, for SEO purposes, we may be better off by focusing on the content of our sites rather than how the sites are coded behind the scenes.
There are still things you can do, behind the scenes, that might indirectly effect rankings; such as, improving accessibility by following web accessibility guidelines. Often times a well coded HTML page is all it takes, but sometimes you also need to use aria accessibility attributes. Aria attributes helps to indicate to the user, what GUI controls are used for; this is important if using non-standard elements for UI controls, such as when using div instead of a button element to create a button.
We really should not use non-standard elements unless we have a valid reason to do so; such as, when the standardized element can not work for the specific purpose. But, most elements can now be styled with CSS, so these exceptions are rare nowadays.
Coding practices that might have influence on rankings
When it comes to the front-end coding of our website'(s), we will typically have a lot of leverage to do both good and bad — without it ever effecting our search engine rankings; this is, however, not a license to make up our own elements. Web standards should still be followed.
While HTML5 permits using h1+section exclusively, and multiple h1's are not directly harmful, we may still want to use h1-h6 to maintain backwards compatibility with older software; and of course we also should not make the entire page h1, as that might seem very spammy.
How you use certain elements will, however, still have some effect on SEO. Obviously you should always aim to use elements according to the standards; this means use h1-h6 for headings inside of section elements. Read more about that in this article: .
How about UTF-8 characters?
By UTF-8 characters is often assumed certain emoji icons, and similar, which can not be written with a iso-8859-1 character set; however, if you page is delivered with UTF-8, then all of your characters will be encoded as UTF-8.
When it comes to special characters, these will not typically do either good or bad in regards to SEO. But, they are interesting, because sometimes search engines might permit their use in the title element, which I think allows for lots of, mostly harmless, fun with visitors.
Sometimes these characters have caused problems, this mostly happens if a given character is not supported by a the installed fonts on the users system. For instance, some characters have been known to crash Facebook Messenger when sent; I think these bugs are now fixed, but if a character is not supported, the user will just see a pair of square boxes in place of it—which might not be what you intended.
As nerds, we might be able to get some fun from using emoji's when naming our IDs and classes in HTML/CSS, I have tested this, and covered that in this article, if you are interested: UTF-8 Characters in CSS as Classes and IDs