Aquatica is a company manufacturing bathtubs, washbasins, faucets, and shower systems in the premium segment. The primary market is the U.S., although the online store is presented on many markets and different domains across Europe.
Improvement of site ranking and increase in targeted organic traffic in priority directions of the online store:
Users aged 25 years and older, with an above-average income, working in banking and IT, who are interested in trends and technology (thus they are attracted to the features and materials offered by the company).
SPA-website (Single Page Application) is a website where content is dynamically generated without reloading the pages. Such websites are written in JavaScript, in particular, the Aquatica store is written in AngularJS.
It is important to know that SEO promotion of SPA- and ordinary websites are fundamentally different things since the approaches to internal optimization are radically different.
Google, like any other search engine, is terrible at processing JavaScript. The content a user can see in their browser is very different from what Google can see.
In this screenshot you can see which search engines can process JS:
But in practice, the situation is much worse even for Google, as it is using outdated rendering tools based on Chrome 41.
Since the client’s website is written entirely in JavaScript, this means that Google cannot see the content (menus, products, texts, re-linking) without additional actions.
For Google to properly index the web pages, the server should not send it JS code of the page, but rather an HTML copy of the page that has already been processed.
What the JS code of the page looks like:
<html lang="en"> <head> <title>Luxury Outdoor Hot Tubs</title> <meta name="fragment" content="!"> </head> <body> <script type="text/javascript" src="/assets/js/app.min.js?15151551"> </script> </body> </html>
How the HTML copy of the page looks like:
<html lang="en"> <head> <title>Luxury Outdoor Hot Tubs</title> <meta name="keywords" content="Outdoor Hot Tubs"> <meta name="description" content="ᐈ Luxury 【Hot Tubs / Outdoor Spas】 for sale in the ⭐ Aquatica
⭐ Online Store ✅ The best prices ✅ Made in EU ✅ Only the best materials ✅ Up to 25 year warranty"> <meta name="..."> <link rel="canonical" href="https://www.aquaticausa.com/"> <link href="/favicon.ico" <meta name="robots" content="index, follow"> <link rel="stylesheet" type="text/css" media="screen" href="/style.css"> </head> <body> <div>Контент страницы</div> </body> </html>
As you can see from the code, the differences are fundamental. HTML copies of the page on the website were implemented using rendering SSR technology. The task of the SEO specialist was to check the implementation of SSR and make sure that:
Search results and their logic ("intent") in the U.S. are very different from what we are used to in Ukraine. Information sites with selections are ranked even for queries with commercial content.
For instance, the query "Buy Outdoor Hot Tub" — with the user's explicit desire to buy a product — information article with a selection of products is ranked in the top 10 (https://www.silive.com/homegarden/2022/07/these-are-the-best-outdoor-hot-tubs-to-buy-for-the-right-price.html), which is completely irrational, considering that in other countries such queries are ranked only by the categories of online stores where the products are presented.
With this in mind, our specialists came up with the conclusion that we have to compete not only with online stores but with information sites as well.
Aquaticausa.com competitors comparison chart:
Website | Domain Rating | Referring domains (Ahrefs) | Referring pages (Ahrefs) | keyword phrases (Ahrefs) | Traffic (Ahrefs) |
---|---|---|---|---|---|
aquaticausa.com |
48 |
3297 |
37932 |
13653 |
28221 |
homedepot.com |
90 |
236455 |
9250565 |
8542024 |
126776364 |
costco.com |
85 |
102987 |
11046544 |
5962766 |
50332554 |
amazon.com |
96 |
4592796 |
4332977451 |
69859278 |
938453396 |
wayfair.com |
86 |
72811 |
13926242 |
4493240 |
29681586 |
overstock.com |
83 |
90400 |
30678253 |
2147655 |
12111988 |
jacuzzi.com |
72 |
6115 |
123080 |
38838 |
300917 |
lowes.com |
88 |
319681 |
12596738 |
5024482 |
56864864 |
By the way, aquaticausa.com is a relatively small site, with a small number of items in many subcategories and filters. However, we have to compete with the websites with the min. DR value of 72+. These are million-dollar websites, and some of them are well-known to many users who are not even familiar with the U.S. market.
The process of working on the website promotion can be divided into several parts
The purpose of the technical audit is to detect errors and make sure that website meets the technical specifications provided by Google. Our audit included 43 items, and 20 of them required fixing errors.
As for checking the proper functioning of SSR, the major problem was the absence of a linking block in the HTML copy of pages and Google failed to correctly index some of the products.
Program implementation | Inspection result | Priority | Contractor | |
---|---|---|---|---|
1. | IP website analysis | ОК | low | software engineer |
2. | Checking the website for viruses, malicious scripts, and blacklisting | ОК | high | software engineer |
3. | Domain history analysis on WhoIs and web.archive | ОК | high | software engineer |
4. | Checking for the elements that may negatively impact user's interaction with the website | ОК | low | software engineer |
5. | Checking for availability and correctness of forming SEO-Friendly URLs (CNC) | ОК | high | software engineer |
6. | Checking for the gluing of mirrors and complete duplications | correct | high | software engineer |
7. | Checking for a complete duplication of content | correct | high | software engineer |
8. | Checking for technical pages, pages with duplicate content, or with no content in the index | ОК | high | software engineer |
9. | Checking for correctness of the server's responses to the page request | correct | high | software engineer |
10. | Checking the page code for HTML and CSS errors | correct | medium | software engineer |
11. | Checking for availability and errors in SSL certificate | correct | high | software engineer |
12. | Checking for hidden or spam links to external resources | ОК | high | software engineer |
13. | Checking for the correctness of robots.txt file set up | ОК | high | software engineer/content manager |
14. | Connect GWT and Yandex Webmaster | ОК | high | software engineer |
15. | Connect GA | ОК | high | optimizer |
17. | Check Sitemap.xml | correct | medium | software engineer |
18. | Checking for CSS and JS availability | ОК | medium | software engineer |
19. | Checking microformats | correct | high | software engineer |
20. | Checking social media buttons | ОК | low | software engineer |
21. | Checking website loading speed | correct | high | software engineer |
22. | Checking for the availability and optimization of multilingualism | correct | medium | software engineer |
23. | Checking for mobile version of the website | ОК | medium | software engineer |
24. | Checking for the website customization on other devices | correct | medium | software engineer |
25. | Checking for the correct output of the text content | correct | high | software engineer |
26. | Tracking Stat.Aweb content in the SEO-monitor | correct | low | software engineer |
27. | Checking for the elements (commercial factors) on the pages required for ranking in this topic | correct | high | software engineer |
28. | Checking for the partial content duplication | correct | medium | software engineer |
29. | Eliminate the removal of irrelevant and out-of-stock items | ОК | high | software engineer |
30. | Checking for reviews indexing on the website | ОК | medium | software engineer |
31. | Is the content visible with JavaScript turned off (Checking SSR) | correct | medium | software engineer |
Content | Inspection result | Priority | Contractor | |
32. | Checking for affiliates | ОК | high | |
33. | Checking the location settings in GWT | ОК | high | optimizer |
34. | Checking for the correctness of forming meta tags | correct | high | content manager or software engineer |
35. | Checking for availability and uniqueness of the web content | ОК | high | content manager |
36. | Checking for availability of landing pages for semantic core | ОК | low | content manager |
37. | Checking for the text content optimization | ОК | medium | software engineer |
38. | Checking for availability of content formatting | ОК | medium | software engineer |
Structure and re-linking | Inspection result | Priority | Contractor | |
39. | Checking for availability of "bread crumbs" menu | correct | high | software engineer |
40. | Checking for re-linking on the website | ОК | low | software engineer |
41. | Checking for indexable, optimized filter pages | correct | high | software engineer |
42. | Checking for the broken links on the website | correct | medium | software engineer |
43. | Usability | correct | medium | software engineer |
Online stores are related to YMYL (Your Money or Your Life) topics - such websites should have a high E-E-A-T (Experience, Expertise, Authoritativeness, Trustworthiness) scores.
Our experts studied the Guidelines for Google Assessors in detail, creating the checklist for checking the websites on YMYL topic. Here is a brief checklist of what had to be implemented in order to increase E-E-A-T scores:
Our team studied priority directions and competitors in detail. In addition to collecting a semantic core on the high-priority category pages, we gradually started to work out the filter pages, since the competition is a way lower on such pages, and given the level of competitor websites, the chances of being ranked in the top are much higher.
Examples of the filters we have created:
We drafted ToR for all pages, and our copywriters wrote the texts based on them.
During the initial stage of external optimization, we rejected all low-quality donors using Google Disavow Tool. Following that, we performed re-audit of the current link profile every 4-6 months, rejecting low-quality links that have appeared.
For instance, the website was spammed with the links from suspicious blogspot.com subdomains back in April 2021. There were a lot of domains, and if such links were not rejected in time, you could get a drop in rankings and traffic.
We used a variety of methods to build up quality link mass — from unconventional and cheap (yet high-quality) to expensive ones:
Despite an extremely competitive niche and complex geo, we managed to achieve good results in many directions and pages:
Traffic dynamics
While working on the project, we encountered many issues and factors which made it difficult to move forward:
Nevertheless, our team managed to perform well and show some positive dynamics in the project.
Project Managers: Kateryna Tymoshenko, Oleksandra Nesina
Optimizer: Yurii Oshchapovskyi
Linker: Yevhen Fedchenko