Audyt SEO: jakubowaizba.pl

Kompleksowa analiza optymalizacji pod wyszukiwarki

Data raportu
25 lutego 2026
Przygotowano dla
Jakubowa Izba, Niwa Babicka 91, 08-500 Ryki
Stack technologiczny
WordPress 6.9.1 + Oxygen Builder + Yoast SEO v27.0
Serwer
LiteSpeed + LiteSpeed Cache (TTFB lab ~47ms, real users p75: 1.3s)
4
/ 10
Ocena ogólna

Ocena ogólna: 4 / 10

Strona ma solidne fundamenty techniczne (szybki serwer, cache, HTTPS), ale zawiera krytyczne błędy on-page SEO, które drastycznie ograniczają potencjał rankingowy. Problemy z nagłówkami H1, tytułami stron, brak schema oraz niezdany test Core Web Vitals (CLS 0.39, Performance 65/100 mobile) wymagają natychmiastowej interwencji.

Top 6 najważniejszych problemów

  1. Wiele tagów H1 na każdej stronie (5-12 H1 na stronę) Krytyczny
  2. Tytuł strony głównej „O nas” zamiast kluczowej frazy Krytyczny
  3. Core Web Vitals: FAILED – CLS 0.39 (50% użytkowników!), LCP lab 8.6s Wysoki
  4. Brak schematu Restaurant / LocalBusiness Wysoki
  5. 17 obrazów bez alt text na samej stronie głównej Wysoki
  6. Zbędny tag UA obok działającego GA4 – marnuje 117 KiB JS Średni
Sekcja 1

Crawlability i indeksacja

robots.txt OK
Brak blokad – wszystkie strony dostępne dla crawlerów
Wskazuje sitemap: https://jakubowaizba.pl/sitemap_index.xml
XML Sitemap Średni

Wykryte problemy

  • Sitemap dostępny po whitelistingu IP (WAF blokował) – upewnić się, że Googlebot również ma dostęp
  • Sitemap index zawiera 2 sub-sitemapy: page-sitemap.xml (10 URLi) i category-sitemap.xml (1 URL)
  • Stare daty lastmod – większość stron z datami 2021, najnowsza 2023-03 (/menu/)
  • Strona /category/bez-kategorii/ w sitemapie – pusta domyślna kategoria WP, nie powinna być indeksowana
  • Strona /funduszeue/ ma meta description „Testowe fundusze” – testowa treść na produkcji!

Rekomendacje

  • Usunąć /category/bez-kategorii/ z sitemapy (ustawić noindex)
  • Poprawić meta description /funduszeue/
  • Zaktualizować daty lastmod w sitemapie
  • Sprawdzić w Google Search Console, czy sitemap jest prawidłowo przetwarzany
Struktura strony OK
7 podstron w nawigacji: Menu, Pokoje, Kontakt, Galeria, Przyjęcia, Biznes, Praca
Wszystkie dostępne w 1 kliknięciu z głównej
Płaska, prosta hierarchia – prawidłowa dla tego typu witryny
Wersja www vs non-www OK
http://jakubowaizba.pl → 301 → https://jakubowaizba.pl/
https://www.jakubowaizba.pl → 301 → https://jakubowaizba.pl/
Trailing slash: /menu → 301 → /menu/
Kanoniczne URLe OK
Każda strona ma poprawny link rel="canonical"
Self-referencing canonicals prawidłowe
Meta robots OK
index, follow, max-image-preview:large, max-snippet:-1, max-video-preview:-1
Sekcja 2

Fundamenty techniczne

HTTPS OK
Certyfikat SSL aktywny
HTTP → HTTPS redirect działa
Brak nagłówka HSTS – zalecane dodanie Niski
PageSpeed Insights – Mobile Wysoki

Core Web Vitals: FAILED

Ocena Core Web Vitals na podstawie danych rzeczywistych użytkowników (Chrome UX Report, ostatnie 28 dni) – nie zdaje testu. Główny problem: CLS (przesunięcia układu).

Dane polowe (Real Users – mobile)

Metryka Wartość (p75) Próg Ocena
LCP (Largest Contentful Paint) 2.4 s ≤ 2.5 s OK (graniczne)
INP (Interaction to Next Paint) 112 ms ≤ 200 ms OK
CLS (Cumulative Layout Shift) 0.39 ≤ 0.1 POOR
FCP (First Contentful Paint) 1.7 s ≤ 1.8 s OK (graniczne)
TTFB (Time to First Byte) 1.3 s ≤ 0.8 s Średni

CLS 0.39 – 50% użytkowników doświadcza złego CLS!

Przesunięcia układu dotyczą połowy wszystkich wizyt. Główna przyczyna: obrazy bez zdefiniowanych wymiarów (width / height) oraz slider, który zmienia układ strony po załadowaniu.

Wyniki Lighthouse (lab – mobile, symulacja Slow 4G)

Kategoria Wynik Ocena
Performance 65 / 100 Średni
Accessibility 88 / 100 Średni
Best Practices 96 / 100 OK
SEO 92 / 100 OK

Metryki lab (mobile)

Metryka Wartość Ocena
First Contentful Paint 2.9 s Średni
Largest Contentful Paint 8.6 s POOR
Total Blocking Time 120 ms OK
Cumulative Layout Shift 0 OK
Speed Index 5.8 s Średni

LCP 8.6s – element LCP to slider!

Elementem LCP jest slajd slidera (<div id="slide-59-7" class="ct-slide">). Rozbicie czasu LCP:

  • TTFB: 0 ms – OK (cache)
  • Resource load delay: 720 ms – zasób nie jest wykrywany natychmiast
  • Resource load duration: 60 ms – OK
  • Element render delay: 1 930 ms – to główny problem!

Brak fetchpriority="high" na obrazie LCP. Obraz nie ma priorytetu ładowania.

Główne problemy wydajności

Render-blocking resources

17 plików CSS/JS blokuje renderowanie strony. Szacowane oszczędności: 240 ms. Obejmuje m.in.: universal.css, jquery.min.js, 8 plików CSS Oxygen, style.min.css, block-library/style.min.css, AOS, Unslider.

Nieużywany JavaScript – 148 KiB do zaoszczędzenia

Google Tag Manager ładuje niepotrzebne skrypty: gtag.js dla GA4 (137 KiB) i stary UA (117 KiB). Facebook Pixel (fbevents.js) również zawiera dużo nieużywanego kodu (93 KiB).

Obrazy bez wymiarów (width/height)

Wiele elementów <img> nie ma jawnie zdefiniowanych atrybutów width i height, co powoduje przesunięcia układu (CLS) podczas ładowania. Dotyczy: jakubowa-izba.jpg, jakubowa-3.jpg, jakubowa-4.jpg, plansza UE, logo, ikony SVG i inne.

Obrazy przewymiarowane

nagroda.jpg: wyświetlane 79×88 px, źródło 1429×1600 px – 18x za duże! Oszczędność: ~43 KiB. Inne obrazy (jakubowa-izba.jpg, jakubowa-4.jpg) również wymagają responsive images.

Brak preconnect

Strona nie wykonuje preconnect do żadnych zewnętrznych originów. Google Fonts (gstatic.com, googleapis.com) ładują fonty z opóźnieniem. Brak ustawienia font-display: swap lub optional.

Nieużywany CSS – 14 KiB do zaoszczędzenia

Wtyczki WordPress ładują arkusze stylów, które nie są używane na stronie. Dotyczy głównie block-library/style.min.css (14.4 KiB).

Accessibility (88/100)

  • Średni Niewystarczający kontrast kolorów tła i tekstu
  • Średni Linki bez rozpoznawalnej nazwy (brak tekstu w linkach)
  • Niski Skip links nie są focusowalne
  • Niski Elementy z tabindex > 0

Bezpieczeństwo (Best Practices)

  • Średni Brak nagłówka HSTS
  • Niski Brak CSP (Content Security Policy)
  • Niski Brak COOP (Cross-Origin Opener Policy)
  • Niski Brak X-Frame-Options / CSP frame-ancestors

Rekomendacje PageSpeed (priorytet)

  1. Dodać wymiary width/height do wszystkich obrazów – naprawi CLS (0.39 → <0.1)
  2. Dodać fetchpriority="high" do obrazu slidera (element LCP)
  3. Przeskalować nagroda.jpg do rzeczywistych wymiarów wyświetlania (79×88 zamiast 1429×1600)
  4. Usunąć stary tag UA (UA-115394387-1) – GA4 już działa, to zbędne 117 KiB
  5. Odroczyć ładowanie niekrytycznych JS/CSS (defer, async)
  6. Dodać preconnect do fonts.googleapis.com i fonts.gstatic.com
  7. Ustawić font-display: swap w Google Fonts
Szybkość serwera OK
TTFB lab: ~47ms (doskonale, z cache)
TTFB real users (p75): 1.3s (potrzebuje poprawy – prawdopodobnie cache miss dla części użytkowników)
Rozmiar HTML: ~100KB (do poprawy – dużo inline CSS z Oxygen Builder)
LiteSpeed Cache aktywny (HIT)
HTTP/3 (QUIC) wspierany

Uwaga o TTFB

TTFB w labie wynosi ~47ms (z cache), ale dane rzeczywistych użytkowników pokazują 1.3s (p75). To sugeruje, że cache LiteSpeed nie obsługuje wszystkich żądań (cold cache, warianty urządzeń, query strings). Warto sprawdzić konfigurację cache – reguły wykluczające, TTL, warminng.

WordPress – uwagi bezpieczeństwa Niski
Wersja WP wystawiona w meta generator: WordPress 6.9.1
wp-json/ dostępny (z noindex – OK)
xmlrpc.php zablokowany przez WAF (dobrze)

Rekomendacja

Usunąć meta generator tag, by nie ujawniać wersji WordPress.

Zasoby Niski
7 plików JavaScript ładowanych
WebP Express aktywny (konwersja obrazów do WebP)
Google Fonts ładowane (PT Sans, Italianno)
Brak preconnect do fonts.googleapis.com Niski
Lazy loading Średni

Problem

Brak atrybutów loading="lazy" na obrazkach. WordPress 6.9 powinien dodawać to automatycznie, ale Oxygen Builder prawdopodobnie omija ten mechanizm.

Rekomendacja

Dodać loading="lazy" do wszystkich obrazów poniżej „the fold” – ręcznie w Oxygen lub za pomocą wtyczki (np. LiteSpeed Cache ma taką opcję).

Analytics – zbędny tag UA Średni

Podwójny tracking: UA + GA4

Strona ładuje oba tagi jednocześnie:

  • UA-115394387-1 – Universal Analytics (wygaszony od lipca 2023, nie zbiera danych)
  • G-JYYRBMHWB2 – Google Analytics 4 (aktywny, działa poprawnie)

Stary tag UA ładuje zbędne 117 KiB JavaScript, spowalniając stronę bez żadnych korzyści.

Rekomendacja

  • Usunąć tag UA-115394387-1 – GA4 już działa, UA jest zbędny i marnuje zasoby
  • W Google Tag Manager lub w kodzie strony: usunąć linię gtag('config', 'UA-115394387-1') i powiązany skrypt
  • Oszczędność: ~117 KiB JS + 1 żądanie sieciowe mniej
  • Facebook Pixel jest aktywny – OK, nie wymaga zmian
Sekcja 3

On-page SEO

Title tags Krytyczny
Strona Title Długość Ocena
/ „O nas - Jakubowa Izba” 22 zn. Krytyczny
/menu/ „Menu - Jakubowa Izba” 21 zn. Średni
/pokoje/ „Pokoje - Jakubowa Izba” 23 zn. Średni
/kontakt/ „Kontakt - Jakubowa Izba” 24 zn. OK
/galeria/ „Galeria - Jakubowa Izba” 24 zn. OK
/przyjecia/ „Przyjęcia - Jakubowa Izba” 26 zn. Średni

Główny problem

Title strony głównej to „O nas” – nie zawiera żadnej frazy kluczowej! To najważniejsza strona witryny i jej tytuł powinien komunikować, czym jest biznes.

Rekomendowane tytuły

  • /„Jakubowa Izba - Restauracja Ryki | Kuchnia polska przy S17”
  • /menu/ → „Menu - Kuchnia polska i regionalna | Jakubowa Izba Ryki”
  • /pokoje/ → „Pokoje gościnne przy S17 Ryki | Jakubowa Izba”
  • /przyjecia/ → „Wesela, komunie, catering Ryki | Jakubowa Izba”
  • /biznes/ → „Spotkania firmowe i konferencje Ryki | Jakubowa Izba”
Meta descriptions Średni
Każda główna strona ma unikalną meta description
Długości odpowiednie (130-160 znaków)
Zawartość opisowa i z CTA

Problemy

  • /funduszeue/ ma meta description „Testowe fundusze” Średni
  • /polityka-prywatnosci/ – brak meta description Niski
  • /category/bez-kategorii/ – brak meta description, pusta strona kategorii Średni
Nagłówki H1 – krytyczny problem Krytyczny

Problem

Każda strona witryny posiada wiele tagów <h1> (od 5 do 12). Google oczekuje dokładnie jednego H1 na stronę. Wiele H1 rozmywa sygnał tematyczny strony i utrudnia ranking.

Strona Liczba H1 Problem
/ 11 Slider + sekcje treści
/menu/ 6 Kategorie menu jako H1
/pokoje/ 8 Każda sekcja ma H1
/kontakt/ 7 Slider H1 + sekcje
/galeria/ 7 Slider H1 + sekcje
/przyjecia/ 12 Najgorszy przypadek
/biznes/ 5 Slider + sekcje
/praca/ 7 Slider + sekcje

Przyczyna problemu

Oxygen Builder używa tagów H1 zarówno w sliderze (osobny H1 na każdym slajdzie), jak i w sekcjach treści. Każdy slajd i każda sekcja strony zaczyna się od H1, co powoduje multiplikację nagłówków.

Instrukcja naprawy

  1. Slajdy slidera: zmienić z <h1> na <span> lub <div> z odpowiednią klasą CSS (zachowując wygląd wizualny)
  2. Sekcje treści: pierwszy nagłówek = H1, wszystkie pozostałe = H2 lub H3
  3. Przykład dla strony głównej:
    • H1 = „Jakubowa Izba – restauracja z tradycją”
    • „Udogodnienia”, „Oryginalna architektura” itp. = H2
  4. Powtórzyć proces na wszystkich 8 podstronach
Obrazy – brakujące atrybuty alt Wysoki

Problem

Na samej stronie głównej wykryto 17 obrazów z pustym atrybutem alt="". Brakujące teksty alternatywne to stracona szansa na ranking w Google Images oraz problem z dostępnością (accessibility).

Przykłady z rekomendowanymi poprawkami:

Plik Obecny alt Rekomendowany alt
jakubowa-izba.jpg alt="" „Jakubowa Izba – restauracja w stylu góralskim”
jakubowa-4.jpg alt="" „Wnętrze Jakubowej Izby – nagrody”
nagroda.jpg alt="" „Nagroda Poland 100 Best Restaurants”
ogrod-letni.svg alt="" Ikona dekoracyjna – OK, ale lepiej: „Ogród letni”
taras.svg alt="" Ikona dekoracyjna – OK, ale lepiej: „Taras”

Obrazy z poprawnym alt (OK)

  • logo.svgalt="Jakubowa Izba logo"
  • jakubowa-3.jpgalt="Jakubowa Izba wnętrza"
Linkowanie wewnętrzne OK
Nawigacja główna linkuje do wszystkich podstron
CTA w sliderze linkują do odpowiednich podstron
Link do PDF menu: JI_karta_2026.pdf – lepiej byłoby mieć menu jako podstronę HTML
Sekcja 4

Schema / Structured Data

Obecne dane strukturalne (Yoast SEO) OK
WebPage – na każdej podstronie
Organization – z logo, nazwą, URL, sameAs (Facebook, Instagram)
BreadcrumbList – poprawna hierarchia
WebSite – z SearchAction
google-site-verification – obecny
Brakujące dane strukturalne Wysoki

Brak schematu Restaurant / LocalBusiness

Dla restauracji to kluczowe dane strukturalne, które pomagają Google wyświetlać wizytówkę w wynikach wyszukiwania, w tym adres, godziny otwarcia, zakres cenowy i typ kuchni.

1. Schema Restaurant – rekomendowany JSON-LD:

{
  "@context": "https://schema.org",
  "@type": "Restaurant",
  "name": "Jakubowa Izba",
  "address": {
    "@type": "PostalAddress",
    "streetAddress": "Niwa Babicka 91",
    "addressLocality": "Ryki",
    "postalCode": "08-500",
    "addressCountry": "PL"
  },
  "telephone": "+48507181570",
  "servesCuisine": "Polska",
  "priceRange": "$$",
  "menu": "https://jakubowaizba.pl/menu/"
}

2. LocalBusiness

Dodać pełny schemat LocalBusiness z adresem, godzinami otwarcia (openingHoursSpecification), numerem telefonu i współrzędnymi GPS.

3. LodgingBusiness

Dla podstrony /pokoje/ – dodać schemat LodgingBusiness z informacjami o pokojach gościnnych.

4. Review / AggregateRating

Jeśli restauracja zbiera opinie – dodać schemat AggregateRating na podstawie ocen z Google lub Tripadvisor.

Implementacja

Schemat Restaurant i LocalBusiness można dodać poprzez Yoast SEO (ustawienia → typ organizacji → restauracja) lub dedykowaną wtyczkę schema markup. JSON-LD należy umieścić w sekcji <head> strony głównej.

Gotowe snippety JSON-LD

Przygotowaliśmy gotowe do wklejenia snippety schema markup dla wszystkich typów danych: Schema Markup – gotowe snippety JSON-LD →

Sekcja 5

Treść i E-E-A-T

Elementy pozytywne OK
Unikalna treść na każdej podstronie
Wspomniane nagrody (Poland 100 Best Restaurants, Tripadvisor)
Dane kontaktowe widoczne (telefon, email, adres)
Social proof – nagrody i certyfikaty
Obszary do poprawy Średni

Wykryte problemy

  • Treść nie była aktualizowana od 2021 (dateModified w schema) Średni
  • Brak bloga / aktualności – zero nowych treści od lat Średni
  • Menu jako PDF zamiast HTML – Google nie indeksuje efektywnie PDF Średni
  • Brak dedykowanej strony „O nas” (strona główna pełni tę rolę, ale title mówi „O nas”)
  • Brak opinii na stronie (wspomniane w Tripadvisor, ale brak embed)
  • Informacja o nagrodzie „NAJLEPSZA KARCZMA W POLSCE 2022” – można dodać nowsze osiągnięcia

Rekomendacje

  • Założyć sekcję blog/aktualności z regularnymi wpisami (wydarzenia, menu sezonowe, przepisy)
  • Stworzyć menu jako podstronę HTML (oprócz wersji PDF do pobrania)
  • Embedować opinie z Google Business lub Tripadvisor
  • Zaktualizować treści i daty dateModified
Sekcja 6

Open Graph / Social

Elementy pozytywne OK
OG tags na każdej stronie
Unikalne OG title i description per strona
OG image (1200×630) – prawidłowe wymiary
Obszary do poprawy Niski

Problemy

  • Wszystkie strony używają tego samego OG image Niski
  • Brak twitter:image (tylko card, title, description) Niski

Rekomendacja

Przygotować unikalne grafiki OG (1200×630px) dla każdej kluczowej podstrony, szczególnie: Menu, Pokoje, Przyjęcia. Dodać tag twitter:image.

Sekcja 7

Lokalne SEO

Dane NAP (Name, Address, Phone)
Nazwa
Jakubowa Izba
Adres
Niwa Babicka 91, 08-500 Ryki (trasa S17 MOP)
Telefon
+48 507 181 570
Email
[email protected]
Obszary do poprawy Wysoki

Problemy

  • Brak schematu LocalBusiness / Restaurant (jak opisano w sekcji 4) Wysoki
  • Brak informacji o Google Business Profile na stronie Średni
  • Brak embedowanej mapy Google Średni
  • Brak stron z lokalnymi frazami kluczowymi Średni

Rekomendacje

  • Dodać mapę Google na stronie /kontakt/
  • Stworzyć podstrony targetujące lokalne frazy, np. „restauracja Ryki”, „wesela Lubelszczyzna”, „noclegi przy S17”
  • Zoptymalizować i uzupełnić profil Google Business
  • Dodać widget z opiniami Google na stronie
Sekcja 8

Audyt automatyczny – Squirrelscan

O narzędziu

Squirrelscan to automat audytowy analizujący strony według 230+ reguł w 17 kategoriach. Poniżej wyniki skanowania surface (100 stron) z dnia 26.02.2026.

46
/ 100 • Ocena F

Wynik ogólny Health Score

Przeskanowano 100 stron. Znaleziono 55 błędów i 282 ostrzeżenia (938 reguł przeszło pomyślnie). Główne czynniki obniżające wynik: brak danych strukturalnych (0/100), problemy z obrazami (58/100) i wydajnością (67/100).

Wyniki według kategorii

100
Analytics
100
Internationalization
100
Local SEO
100
Mobile
100
Social Media
100
URL Structure
98
Crawlability
94
Content
89
Accessibility
81
Core SEO
81
E-E-A-T
77
Links
72
Security
68
Legal Compliance
67
Performance
58
Images
0
Structured Data

Problemy krytyczne (errors)

Core SEO – 2 błędy, 25 ostrzeżeń
RegułaProblemDotyczy
core/meta-description Brakujące lub za krótkie meta description 7 stron: /funduszeue, /galeria, /kontakt, /polityka-prywatnosci, /praca, /przyjecia (69–115 znaków)
core/meta-title Tytuły za krótkie (21–25 znaków) 9 stron: /, /biznes, /kontakt, /pokoje, /przyjecia i inne
core/h1 Wiele tagów H1 na stronie (5–11 na stronę) 11 stron – wszystkie przeskanowane
Structured Data – 11 błędów
RegułaProblemDotyczy
schema/json-ld-valid Nieprawidłowa składnia JSON-LD: Organization.logo musi być stringiem, nie obiektem Wszystkie 11 stron – błąd w globalnym szablonie
Images – 11 błędów, 45 ostrzeżeń
RegułaProblemDotyczy
images/image-file-size 74 obrazy przekraczają 200 KB (do 907 KB!) logo.svg (225 KB), ji_zespol.jpg (907 KB), plakat EFRR (789 KB) i inne
images/alt-text 120 obrazów bez atrybutu alt Wszystkie strony – w tym FB pixel, zdjęcia, ikony SVG
images/dimensions 127 obrazów bez width/height (powoduje CLS) ue_znak.jpg, logo.svg, jakubowa-izba.jpg i wiele innych
images/offscreen-lazy 36 obrazów below-fold bez lazy loading jakubowa-izba.jpg, jakubowa-3.jpg, ogrod-letni.svg i inne
Accessibility – 22 błędy, 47 ostrzeżeń
RegułaProblemDotyczy
a11y/aria-command-name Elementy interaktywne bez dostępnych nazw (ARIA) Linki do Facebook, Instagram, Google, TripAdvisor, Poland Best Restaurants
a11y/link-text Linki bez dostępnego tekstu (puste lub svg-no-name) 11 linków na każdej stronie (ikony social media)
a11y/landmark-one-main Brak elementu <main> na stronie Wszystkie strony – Oxygen Builder nie generuje landmarku main
a11y/color-contrast Potencjalne problemy z kontrastem kolorów Biały tekst i bardzo jasne kolory na wielu stronach
Performance – 9 błędów, 91 ostrzeżeń
RegułaProblemDotyczy
perf/total-byte-weight Łączna waga zasobów: 26 826 KB (bardzo ciężka) Cała witryna
perf/cls-hints 132 obrazy bez width/height powodują przesunięcia layoutu (CLS) Wszystkie strony
perf/lcp-hints Obrazy LCP bez <link rel="preload"> logo.svg, ue_znak.jpg
perf/critical-request-chains Łańcuchy blokujących żądań (5+ CSS w head) fonts.googleapis.com, oxygen.css, block-library, cookie-notice, pojo-accessibility
perf/inp-hints 7 blokujących skryptów na każdej stronie Wszystkie strony
perf/unminified-js 2 pliki JS niezminifikowane (jquery.event.move/swipe.js) ~7.3 KB do zaoszczędzenia
perf/cache-headers Brak nagłówków cache na stronach HTML Wszystkie strony
perf/font-loading Google Fonts bez preconnect Wszystkie strony
Links – 0 błędów, 37 ostrzeżeń
RegułaProblemDotyczy
links/redirect-chains 10 stron z przekierowaniami 301 (brak trailing slash) /biznes, /kontakt, /pokoje, /przyjecia, /polityka-prywatnosci i inne
links/anchor-text 103 linki z pustym anchor text Ikony social media (FB, IG, Google, TripAdvisor, Poland Best Restaurants)
links/orphan-pages 3 strony osierocone (<2 linki wewnętrzne) /polityka-prywatnosci, /funduszeue, /category/bez-kategorii
links/invalid-links 1 nieprawidłowy link: http:// Pusty URL http:// występuje na wszystkich stronach
links/internal-links Za dużo linków wewnętrznych (111, maks. 100) /galeria
Security – 0 błędów, 15 ostrzeżeń
RegułaProblemDotyczy
security/csp Brak nagłówka Content-Security-Policy Cała witryna
security/hsts Brak nagłówka Strict-Transport-Security Cała witryna
security/x-frame-options Brak ochrony przed clickjackingiem Cała witryna
security/http-to-https 11 URL-i HTTP przekierowuje na HTTPS (301) http://jakubowaizba.pl/* → https://jakubowaizba.pl/*
Content – 0 błędów, 9 ostrzeżeń
RegułaProblemDotyczy
content/word-count Thin content: za mało słów na stronie (<300) 9 stron: / (295), /polityka-prywatnosci (201), /biznes (193), /kontakt (209), /pokoje (189) i inne
E-E-A-T & Legal – 3 ostrzeżenia
RegułaProblemDotyczy
eeat/about-page Brak dedykowanej strony „O nas” Cała witryna – strona główna pełni rolę „O nas”, ale nie jest rozpoznawana
eeat/privacy-policy Polityka prywatności linkowana z 0% stron Brak linku w stopce/nawigacji
legal/privacy-policy Brak linku do polityki prywatności na całej witrynie Cała witryna

Kategorie bez problemów (100/100)

Analytics, Internationalization, Local SEO, Mobile, Social Media, URL Structure – te obszary są w pełni poprawne i nie wymagają zmian.

Następne kroki

Po wdrożeniu poprawek z planu działań zalecamy ponowne uruchomienie audytu Squirrelscan w trybie full (500 stron) w celu weryfikacji. Docelowy wynik: 85+ (Grade B).

squirrel audit https://jakubowaizba.pl -C full --format llm --refresh

Sekcja 9

Plan działań (priorytetyzowany)

Interaktywna wersja planu

Otwórz Interaktywny Plan Działań → – checklistę z możliwością odznaczania zadań, śledzenia postępu i eksportu wyników.

Krytyczne — natychmiast

  • 1 Naprawić nagłówki H1 – dokładnie 1 H1 na stronę, reszta H2/H3. Dotyczy wszystkich 8 podstron. Slajdy slidera zmienić na <span> lub <div>.
  • 2 Zmienić title strony głównej z „O nas - Jakubowa Izba” na „Jakubowa Izba - Restauracja Ryki | Kuchnia polska przy S17”.
  • 3 Upewnić się, że Googlebot ma dostęp do sitemap – sprawdzić reguły WAF, przetestować w Google Search Console.
  • 4 Usunąć /category/bez-kategorii/ z indeksu (ustawić noindex) i poprawić testowy opis /funduszeue/.

Wysoki priorytet

  • 5 Dodać schema Restaurant + LocalBusiness w Yoast SEO lub dedykowanej wtyczce schema.
  • 6 Uzupełnić alt text na wszystkich obrazkach – 17+ pustych na samej stronie głównej.
  • 7 Usunąć stary tag Universal Analytics (UA-115394387-1) – GA4 (G-JYYRBMHWB2) już działa. UA jest zbędny i ładuje 117 KiB niepotrzebnego JS.
  • 8 Zoptymalizować title tags na wszystkich podstronach zgodnie z rekomendacjami z sekcji 3.
  • 9 Naprawić CLS (0.39) – dodać atrybuty width i height do WSZYSTKICH elementów <img>. Core Web Vitals: FAILED z powodu CLS.
  • 10 Zoptymalizować LCP slidera – dodać fetchpriority="high" do obrazu slidera, przeskalować nagroda.jpg (1429×1600 → ~160×176 px). LCP lab: 8.6s!

Średni priorytet

  • 11 Dodać lazy loading na obrazkach (loading="lazy").
  • 12 Stworzyć menu jako podstronę HTML zamiast / oprócz PDF.
  • 13 Dodać unikalne OG images per strona.
  • 14 Dodać HSTS header w konfiguracji serwera.
  • 15 Usunąć meta generator (WordPress version exposure).
  • 16 Dodać preconnect do fonts.googleapis.com i fonts.gstatic.com. Ustawić font-display: swap.
  • 17 Odroczyć niekrytyczne JS/CSS – 17 render-blocking zasobów blokuje renderowanie (oszczędność ~240 ms).

Długoterminowe

  • 18 Założyć blog / aktualności z regularnymi wpisami (wydarzenia, menu sezonowe, przepisy regionalne).
  • 19 Stworzyć podstrony pod lokalne frazy („restauracja Ryki”, „wesela Lubelszczyzna”, „noclegi przy S17”).
  • 20 Embedować opinie z Google Business / Tripadvisor na stronie.
  • 21 Zaktualizować daty treści i odświeżyć opisy na wszystkich podstronach.
Sekcja 10

Weryfikacja po wdrożeniu

Po wdrożeniu poprawek z planu działań należy przeprowadzić następujące testy:

  • Sprawdzić indeksację: wyszukać site:jakubowaizba.pl w Google
  • Sprawdzić dostępność sitemap: wejść na https://jakubowaizba.pl/sitemap_index.xml i zweryfikować w Google Search Console
  • Przetestować schema: Google Rich Results Test
  • Sprawdzić nagłówki H1: po dokładnie 1 na każdej stronie (inspekcja elementów w przeglądarce lub rozszerzenie SEO)
  • Sprawdzić PageSpeed Insights score: pagespeed.web.dev
  • Zweryfikować GA4: sprawdzić raport „Realtime” w Google Analytics po odwiedzeniu strony
  • Sprawdzić Google Search Console po 2-4 tygodniach od wdrożenia – obserwować pokrycie indeksu i błędy

Harmonogram monitoringu

  • Tydzień 1-2: Wdrożenie poprawek krytycznych i o wysokim priorytecie (punkty 1-8)
  • Tydzień 3-4: Wdrożenie poprawek o średnim priorytecie (punkty 9-14)
  • Miesiąc 2-3: Rozpoczęcie działań długoterminowych (punkty 15-18)
  • Miesiąc 3: Ponowny przegląd SEO w celu oceny postępów