Case Study: SEO aIdeas – Jak technologia wygrywa z pustymi raportami
Większość agencji SEO wysyła klientom generowane automatycznie raporty z narzędzi komercyjnych (np. Senuto/Semstorm), za które klient płaci tysiące złotych. Projekt **SEO aIdeas** powstał z wściekłości na ten model biznesowy. Chciałem udowodnić, że prosty, bezbazowy skrypt w Pythonie połączony z sztuczną inteligencją potrafi w kilka sekund dostarczyć zarządowi firm wielokrotnie głębszą, cenniejszą analitykę niż zespół analityków agencji.
Efekt wdrożenia u klienta e-commerce (audioplaza.pl): Czas potrzebny na analizę pozycji 53 kluczowych marek i wykrycie słabych punktów SEO spadł z 16 godzin pracy manualnej do zaledwie 12 sekund. System wykrył krytyczne luki brandowe na 248 frazach kluczowych.
1. Problem Biznesowy
Klient posiada ponad 280 marek i 20 000 produktów w ofercie. Monitorowanie widoczności organicznej dla tak dużej skali asortymentu w tradycyjnych narzędziach było albo niezwykle kosztowne (limity słów kluczowych), albo wymagało godzin ręcznego przeklejania danych do Excela.
Agencje marketingowe raportowały ogólny wzrost widoczności serwisu, ukrywając fakt, że na najważniejsze frazy zakupowe (np. *wzmacniacz + marka*) marka traciła pozycje na rzecz mniejszych konkurentów, a ruch organiczny rósł głównie na frazy brandowe samego sklepu.
2. Architektura Systemu (Aegis Agentic Pipeline)
Zaprojektowałem i wdrożyłem w pełni bezserwerowy i bezbazowy potok danych (pipeline) napisany w Pythonie 3:
- Ingestion Loop: Skrypt pobiera z sitemapy sklepu nazwy marek i modeli produktów, a następnie co określony czas odpytuje Serper API (stabilny parser wyników Google) o pozycje w wyszukiwarce.
- Detekcja Luk (Brand Gaps): Silnik heurystyczny przetwarza pliki CSV, wykrywając frazy główne dla marek, które są poza TOP 10 (czyli nie przynoszą ruchu), pomimo posiadania produktów w ofercie.
- Analiza Konkurencji (Nemezis): Algorytm identyfikuje domeny, które najczęściej wypychają nasz sklep z pierwszej strony wyników i wskazuje ich mocne strony.
- Generowanie Wytycznych AI (Claude API): Skompilowane dane o lukach i szansach (Quick Wins z pozycji 11-20) są przekazywane do modelu Claude 3.5 Sonnet w celu automatycznego wygenerowania spersonalizowanych instrukcji optymalizacji dla deweloperów i copywriterów.
3. Przykładowy Fragment Kodu Silnika
Poniższy uproszczony kod pokazuje, w jaki sposób Aegis pobiera pozycje z Serper API w zaledwie jednym żądaniu na frazę, minimalizując koszty zużycia kredytów:
import os
def check_google_ranking(query, target_domain):
# Odpytanie Serper API o wyniki dla Google.pl
api_key = os.environ.get("SERPER_API_KEY")
headers = {"X-API-KEY": api_key, "Content-Type": "application/json"}
payload = {"q": query, "gl": "pl", "num": 30}
response = requests.post("https://google.serper.dev/search", json=payload, headers=headers)
results = response.json().get("organic", [])
for item in results:
link = item.get("link", "")
if target_domain in link:
return item.get("position") # Zwraca pozycję (np. 4)
return None # Poza TOP 30
4. Wnioski Biznesowe
Dzięki zastąpieniu drogiej bazy danych SQL płaskimi strukturami plików CSV i JSON, system ma zerowe koszty utrzymania serwera. Klient zyskał niezależność od agencji – na każdym cotygodniowym spotkaniu zarząd dysponuje obiektywnym raportem wykazującym, które działania przyniosły efekty, a które były tylko pozorowane.
Chcesz wdrożyć podobną kontrolę analityczną w swojej firmie?
Zbuduję dla Twojego przedsiębiorstwa dedykowany system audytu technicznego bez comiesięcznych licencji.
Skonsultuj wdrożenie systemu