Zmiany algorytmów Google

W wielu miejscach ludzie narzekają, że Google zmieniło algorytmy, ich strony spadły w rankingu, choć stosowali się do zaleceń Google, a biznes upada. To oczywiście smutne, tylko nie do końca widzę w tym winę Google. Oparcie biznesu o jednego partnera było świadomą decyzją. Stosowanie się do zaleceń Google w sprawach SEO nigdy nie dawało gwarancji, że zawsze będzie dobrze, prawda? Gwarancji, że te zalecenia się nie zmienią też nie było. Gdyby tylko w jakiś sposób dało się przewidzieć, że gigant będzie kierował się wyłącznie własnym zyskiem…

Zmiany i błędy

Błędy się zdarzają. Zmiany też. Uzależnianie się od jednego dostawcy zawsze jest poważnym ryzykiem. Nawet, jeśli dostawca wydaje się duży i solidny[1]. Zresztą, akurat Google od dawna pokazuje apetyt na to, by korzystać z czyjegoś dorobku, niekoniecznie dzieląc się zyskiem. Pamiętacie Accelerated Mobile Pages? Już wtedy twórcy treści narzekali, że ruch klientów nie trafia do nich i tracą zyski z reklam. Reklam Google, oczywiście. No ale skoro Google mogło dostarczyć ludziom wynik wyszukiwania AKA content, w dodatku od siebie, to po co miałoby przekierowywać klienta na źródło i płacić za wyświetlenia/kliknięcia w reklamy? A jeszcze osoba, która szukała gotowa dodać stronę do bookmarków i nie skorzystać następnym razem z wyszukiwarki, gdzie Google może mu wyświetlić reklamy w wynikach wyszukiwania… No czysta strata przecież.

Błędy zdarzają się i grubszego kalibru, nawet przy płatnych usługach. Bo indeksowanie i pokazywanie w wyszukiwarce jest bezpłatne i bez żadnych dwustronnych umów i gwarancji. A przecież zdarzyło się zablokowanie i usunięcie usług, za które płacono. Oczywiście z danymi[3].

AI

Przeżywamy właśnie zachłyśnięcie się AI[2], które pakowane jest dosłownie wszędzie. Czy ma to sens, czy nie. Jest to symbol/synonim nowoczesności, więc pewne było, że wyniki wyszukiwania też będą to wykorzystywać. Zresztą, Bing zrobił to już dawno. Głośno robi się o błędach wyszukiwarek opartych o AI. Oczywiście, takie błędy są. I pewnie będą, szczególnie, że wiemy, że LLMy lubią halucynować. Ale… w tradycyjnych wyszukiwaniach też były. Tylko po prostu nikt raczej nie robił afery, gdy link był nieadekwatny czy zawierał błędne informacje. No chyba, że w wynikach wyszukiwania, tłumaczenia albo na Google Maps znalazło się coś godzącego w znaną osobę lub instytucję. Wtedy było trochę śmiechu i szybka korekta. I jakoś nikt nie robił afery.

W sumie zastanawiam się, kiedy do ludzi dotrze, że LLMy są niezłe odtwórczo, ale niespecjalnie są w stanie coś nowego wymyślić. I tak naprawdę żerują na tym, co ludzie wymyślili wcześniej. I bez dostępu do tych danych są niczym. Można obserwować bunt twórców treści w serwisie Stack Overflow. Ciekawe kiedy powstanie zdecentralizowana, szanująca autorów alternatywa…

Zmiany algorytmów Google

Dla jasności – sam obserwuję zmiany algorytmów w Google u siebie na blogach. Pozycje i liczby odsłon w Google webmaster tools zmieniły się istotnie, liczba wejść – mierzona niezależnie – spadła. Też istotnie. Wszystko to zaczęło się w ostatniej dekadzie kwietnia 2024. Odnotowuję z kronikarskiego obowiązku, bo nie ma to dla mnie żadnego znaczenia. I po części pewnie kwestia pogody.

Wyszukiwarki

I na zakończenie nie całkiem nie na temat: DuckDuckGo nie działało podczas awarii Bing. Wiedziałem, że korzystają z ich wyników (od czasu rozwiązania/zawieszenia współpracy z Yandex – chyba już tylko z nich), ale w obecnej sytuacji poszukam jakiejś alternatywy dla podstawowej wyszukiwarki. Świata to nie zmieni, bo i tak jestem multiwyszukiwarkowy – często sprawdzam wyniki w 2-3, poza tym, na różnych komputerach mam różną domyślną, ale spróbować można. Póki co silnym typem jest Qwant – działający na europejskich, bardziej sprzyjających prywatności, zasadach.

[1] A może „zwłaszcza”? Jak głosił slogan z pewnej reklamy duży może więcej. Podmioty o dużym udziale na rynku będą miały tendencję do monopolu/oligopolu, bo taki jest naturalny trend ekonomiczny. A że monopol nie służy klientom, to wiemy. Pytanie tylko czy i kiedy taki duży dostawca zechce skorzystać ze swojej pozycji.
[2] Gdzie chwilowo AI = LLM, co do prawdziwej sztucznej inteligencji ma się nijak.
[3] Już po opublikowaniu tego wpisu Google zamieściło oficjalne stanowisko w tej sprawie. Są pewne rozbieżności, np. podobno backupy nie zostały usunięte. Ale mimo to do przywrócenia wykorzystano zewnętrzne backupy. Hm!

UPDATE: Dodany link do stanowiska Google w sprawie usunięcia usług.

Googlowe rozdwojenie jaźni

Zawsze, gdy sprawdzam szybkość działania strony, zastanawiam się, czy Google cierpi na rozdwojenie jaźni. Z jednej strony bowiem promuje szybkie strony i dostarcza narzędzia do badania szybkości stron WWW. Z drugiej strony największym spowalniaczem stron są… reklamy AdSense od Google.

Nic nie generuje tylu ostrzeżeń o spowolnieniu strony, co umieszczenie reklam AdSense. Także w samych narzędziach Google. Spójrzmy na wyniki z GTmetrix (dla porządku: to nie narzędzie Google) dla strony na tym blogu z reklamami oraz strony bez reklam:

Wynik GTmetrix dla strony z AdSense
Wynik GTmetrix dla strony bez AdSense

Różnica powyżej nie jest może powalająca, ale jeśli spojrzymy na wyniki waterfall, robi się ciekawiej:

OK, trafiło się pechowo, bo jakieś video było w reklamie. Niemniej, trend jest jasno widoczny.

Narzędzie od Google pokazuje, że cierpią głównie użytkownicy mobilni. Dla powyższych URLi wyniki PageSpeed Insights wyglądają następująco:

PageSpeed Insights z AdSense
PageSpeed Insights bez AdSense

Widać, że cierpi głównie wydajność, ale nie tylko. Dostępność też się pogorszyła.

Czyli mamy sprzeczność. Z jednej strony szybsze strony lepiej się indeksują i są odwiedzane przez większą ilość użytkowników. Czyli lepiej nadają się do wyświetlania reklam. Z drugiej strony włączenie reklam AdSense spowolni je, co w dłuższym okresie może spowodować pogorszenie pozycji w wyszukiwarce i mniej odwiedzin. Albo rezygnację użytkowników z oczekiwania na załadowanie strony.

Jak żyć? Oczywiście jeśli chodzi o szybkość działania strony, to oczywiście najlepszy efekt da całkowite usunięcie reklam. Jeśli jednak z jakiegoś powodu nie chcemy całkiem rezygnować z wyświetlania reklam AdSense, a chcemy, by witryna działała szybko, to można ograniczyć ich wyświetlanie tylko do wybranych stron. Na przykład takich z największym ruchem z wyszukiwarki. Jest to oczywiście jakiś kompromis, w dodatku niezbyt wygodny utrzymaniu. Jednak dzięki temu co do zasady jest szybko, a zachowujemy większość dochodu z reklam. To oczywiście jakieś grosze. No i człowiek nie traci kontaktu z tym ekosystemem.

Google, he knows me

Dostałem maila od Google. Na stronie wykryto błędy, kod błędu 403. Sprawa mnie zaintrygowała. Co prawda chodziło tylko o jeden URL, ale czemu 403? Błędy 5xx czy 404 bym zrozumiał jeszcze, zwłaszcza na blogu, ale 403? Coś się tu zdecydowanie nie zgadza.

Rozpocząłem dochodzenie i zrobiło się dziwniej. Bowiem chodziło o zupełnie egzotyczny URL ( hxxps://zakr.es/tststs/ ). Na oko poprawny, ale ewidentnie tymczasowy i testowy. I zdecydowanie nie należący do bloga. W ogóle byłem zdziwiony, że Google o nim wie.

And he knows I’m right

Pierwsze co przyszło mi do głowy to robots.txt. Może dlatego, że sugerują sprawdzenie, czy dostęp nie jest tam blokowany? W każdym razie pudło. Zresztą nawet gdyby tam URL był, to raczej jako wykluczenie dla botów. A wtedy zgłaszanie braku dostępu byłoby sporą bezczelnością.

Zajrzałem do katalogu na serwerze i przypomniało mi się, że testowałem pewną rzecz. Powiedzmy, że okolice bug bounty. Tak, robienie tego na podstawowej domenie to zwykle kiepski pomysł, ale tym razem kluczowa miała być obecność naturalnego ruchu. Tak czy inaczej nic z tego nie wyszło, tj. nie udało mi się wykorzystać w planowany sposób. A katalog pozostał, choć już niewykorzystany. I nielinkowany.

Analiza

Google webmaster tools[1] pokazuje, skąd jest linkowana dana strona. W tym przypadku podał dwie strony na blogu. Jedną z konkretnym wpisem, drugą zbiorczą.

Strona odsyłająca
https://zakr.es/blog/author/rozie/page/6/
https://zakr.es/blog/2015/10/spis-wyborcow-a-rejestr-wyborcow/

Tyle, że w podglądzie źródła tego ostatniego wpisu to ja tego URLa w żaden sposób nie widzę.

Jak to wygląda czasowo? Kolejna ciekawostka to kolejne dwie daty w Google webmaster tools:

Data pierwszego wykrycia: 31.08.2022

Zapewne wtedy się bawiłem. Daty utworzenia plików potwierdzają – wszystkie pliki mają 03.08.2022. Ma to jakiś sens, tylko musiałbym zostawić pliki podlinkowane na miesiąc? Raczej niemożliwe, bo wtedy zostałyby na stałe. A nie ma. No i skąd by się wzięły w tak starym wpisie?

Ostatnie skanowanie 5 maj 2023, 11:47:16

To oczywiście możliwe, tym bardziej, że Google zauważyło błąd 403 dokładnie 3 maja 2023. Po ponad pół roku?

I’ve been talking to Google all my life

Jeśli chodzi o Google, to mamy love hate relationship. Z jednej strony doceniam firmę za GCTF, czy zabezpieczenia poczty i kont. Z drugiej strony to, co robią z prywatnością userów, nachalność reklam, tragiczny, scamerski content części reklam bąbelkowanie w wyszukiwarce i wreszcie samo bycie globalną korporacją mocno mnie odstręczają.

Ostatecznie jest tak, że umiarkowanie korzystam z ich usług. Trochę, bo wygodne, trochę, bo wypada znać. Mam webmaster tools, mam reklamy AdSense, ale tylko w wybranych miejscach. Pozwalam indeksować blog. Raczej nie korzystam z ich wyszukiwarki, tj. sięgam do niej tylko, jeśli nie znajdę wyników w podstawowej, czyli rzadko. Inne usługi Google, czyli np. Maps, Waze, translate, calendar, drive, docs – różnie, raczej korzystam, choć w ograniczonym stopniu.

Częściowe wyjaśnienie

Spojrzenie w logi serwera mówi nieco więcej:

66.249.65.223 - - [28/Aug/2022:20:35:53 +0200] "GET /tststs/ HTTP/1.1" 403 187 "-" "Mozilla/5.0 (Linux; Android 6.0.1; Nexus 5X Build/MMB29P) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/104.0.5112.79 Mobile Safari/537.36 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)"
66.249.70.63 - - [30/Aug/2022:20:53:52 +0200] "GET /tststs/ HTTP/1.1" 403 187 "-" "Mozilla/5.0 (Linux; Android 6.0.1; Nexus 5X Build/MMB29P) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/104.0.5112.79 Mobile Safari/537.36 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)"
66.249.64.227 - - [30/Apr/2023:22:32:01 +0200] "GET /tststs/ HTTP/1.1" 403 187 "-" "Mozilla/5.0 (Linux; Android 6.0.1; Nexus 5X Build/MMB29P) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/112.0.5615.142 Mobile Safari/537.36 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)"
66.249.64.231 - - [03/May/2023:10:44:18 +0200] "GET /tststs/ HTTP/1.1" 403 187 "-" "Mozilla/5.0 (Linux; Android 6.0.1; Nexus 5X Build/MMB29P) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/112.0.5615.142 Mobile Safari/537.36 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)"
66.249.64.229 - - [05/May/2023:11:47:16 +0200] "GET /tststs/ HTTP/1.1" 403 187 "-" "Mozilla/5.0 (Linux; Android 6.0.1; Nexus 5X Build/MMB29P) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/112.0.5615.142 Mobile Safari/537.36 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)"

Część rzeczy się zgadza, np. wizyty kiedy Google zauważyło i zaindeksowało URL, po miesiącu od zamieszczenia plików. Widać też wizyty 03.05, kiedy sobie o nim ni stąd ni zowąd przypomniało. Mogło się też zdarzyć, że do testów wziąłem jakiś stary wpis z 2015.

Nadal nie zgadza się – albo nie mogę sobie przypomnieć – jak to się stało, że URL został na miesiąc, a nie został na stałe. I słodką tajemnicą Google pozostanie, czemu zapomniało o tym URLu na bite osiem miesięcy.

Usunąłem katalog z serwera. Może teraz Google, gdy dostanie 404, zapomni o nim na dobre?

[1] Obecnie Google Search Console, ale przywykłem do starej nazwy, więc przy niej zostanę, przynajmniej w tym wpisie.