Catalog / rusjanworkshop.com
42

SEO audit for rusjanworkshop.com

RUSJAN Workshop

ecommerceWordPress

Health 42/100 (poor) · 50 pages crawled · generated 2026-08-26

Download Markdown report (feed to ChatGPT / Claude / Cursor)
Screenshot of rusjanworkshop.com
50
pages crawled
29
indexable pages
29
errors
128
warnings
341
notices
0
orphan pages
0
broken links
Category breakdown
CategoryScoreErrorsWarningsNotices
Security 42 29 0 58
Agent Readiness 83 0 29 1
Meta Description 83 0 29 0
Performance 83 0 29 97
Content 85 0 25 28
Canonical 91 0 15 0
Titles 99 0 1 1
Headings 100 0 0 13
Links 100 0 0 27
Sitemap 100 0 0 4
Social 100 0 0 58
Structured Data 100 0 0 29
URL 100 0 0 25
Findings

Errors (1 rules)

error Mixed content on HTTPS page

Rule security.mixed_content · Security · 29 occurrence(s)

Warnings (6 rules)

warning Control has no accessible name

Rule agent.control_no_name · Agent Readiness · 29 occurrence(s)

warning Thin content (low word count)

Rule content.thin · Content · 25 occurrence(s)

warning Render-blocking script in <head> (no defer/async)

Rule perf.render_blocking · Performance · 29 occurrence(s)

warning Title likely truncated in SERP (too wide)

Rule title.too_long · Titles · 1 occurrence(s)

Notices (18 rules)

notice No llms.txt for AI agents

Rule agent.llms_txt_missing · Agent Readiness · 1 occurrence(s)

notice Low text-to-HTML ratio

Rule content.low_ratio · Content · 28 occurrence(s)

notice Internal link has no anchor text / accessible name

Rule links.no_anchor_text · Links · 27 occurrence(s)

notice Missing Open Graph tags

Rule og.missing · Social · 29 occurrence(s)

notice Legacy image format (jpg/png/gif) with no next-gen fallback

Rule perf.images_legacy_format · Performance · 29 occurrence(s)

notice No ETag header (no conditional GET for unchanged pages)

Rule perf.no_etag · Performance · 29 occurrence(s)

  • https://rusjanworkshop.com/ — the response carries no ETag header — without an ETag (or Last-Modified) there is no cache-revalidation mechanism, so crawlers re-download the full body every visit. Emit an ETag (a content hash) to enable conditional If-None-Match requests.
  • https://rusjanworkshop.com/2025/03/05/cargo-borsoni/ — the response carries no ETag header — without an ETag (or Last-Modified) there is no cache-revalidation mechanism, so crawlers re-download the full body every visit. Emit an ETag (a content hash) to enable conditional If-None-Match requests.
  • https://rusjanworkshop.com/2025/03/14/borsa-da-telaio-roll-top/ — the response carries no ETag header — without an ETag (or Last-Modified) there is no cache-revalidation mechanism, so crawlers re-download the full body every visit. Emit an ETag (a content hash) to enable conditional If-None-Match requests.
  • https://rusjanworkshop.com/2025/03/14/skizzo-il-mini-portafoglio/ — the response carries no ETag header — without an ETag (or Last-Modified) there is no cache-revalidation mechanism, so crawlers re-download the full body every visit. Emit an ETag (a content hash) to enable conditional If-None-Match requests.
  • https://rusjanworkshop.com/2025/03/15/borsa-da-manubrio-berkut/ — the response carries no ETag header — without an ETag (or Last-Modified) there is no cache-revalidation mechanism, so crawlers re-download the full body every visit. Emit an ETag (a content hash) to enable conditional If-None-Match requests.
  • https://rusjanworkshop.com/2025/03/15/borsa-da-telaio-100-impermeabile/ — the response carries no ETag header — without an ETag (or Last-Modified) there is no cache-revalidation mechanism, so crawlers re-download the full body every visit. Emit an ETag (a content hash) to enable conditional If-None-Match requests.
  • https://rusjanworkshop.com/2025/03/15/come-fare-la-dima/ — the response carries no ETag header — without an ETag (or Last-Modified) there is no cache-revalidation mechanism, so crawlers re-download the full body every visit. Emit an ETag (a content hash) to enable conditional If-None-Match requests.
  • https://rusjanworkshop.com/2025/03/18/4-mani/ — the response carries no ETag header — without an ETag (or Last-Modified) there is no cache-revalidation mechanism, so crawlers re-download the full body every visit. Emit an ETag (a content hash) to enable conditional If-None-Match requests.
  • https://rusjanworkshop.com/2025/03/18/biroc/ — the response carries no ETag header — without an ETag (or Last-Modified) there is no cache-revalidation mechanism, so crawlers re-download the full body every visit. Emit an ETag (a content hash) to enable conditional If-None-Match requests.
  • https://rusjanworkshop.com/2025/03/18/dom-corta-borsa-top-tube-bikepacking/ — the response carries no ETag header — without an ETag (or Last-Modified) there is no cache-revalidation mechanism, so crawlers re-download the full body every visit. Emit an ETag (a content hash) to enable conditional If-None-Match requests.
  • https://rusjanworkshop.com/2025/03/18/dom-lunga/ — the response carries no ETag header — without an ETag (or Last-Modified) there is no cache-revalidation mechanism, so crawlers re-download the full body every visit. Emit an ETag (a content hash) to enable conditional If-None-Match requests.
  • https://rusjanworkshop.com/2025/03/18/mi-8m/ — the response carries no ETag header — without an ETag (or Last-Modified) there is no cache-revalidation mechanism, so crawlers re-download the full body every visit. Emit an ETag (a content hash) to enable conditional If-None-Match requests.
  • https://rusjanworkshop.com/2025/03/18/sacche-stagne/ — the response carries no ETag header — without an ETag (or Last-Modified) there is no cache-revalidation mechanism, so crawlers re-download the full body every visit. Emit an ETag (a content hash) to enable conditional If-None-Match requests.
  • https://rusjanworkshop.com/2025/03/18/sottosella/ — the response carries no ETag header — without an ETag (or Last-Modified) there is no cache-revalidation mechanism, so crawlers re-download the full body every visit. Emit an ETag (a content hash) to enable conditional If-None-Match requests.
  • https://rusjanworkshop.com/author/rusjanbag/ — the response carries no ETag header — without an ETag (or Last-Modified) there is no cache-revalidation mechanism, so crawlers re-download the full body every visit. Emit an ETag (a content hash) to enable conditional If-None-Match requests.
  • https://rusjanworkshop.com/author/rusjanbag/page/2/ — the response carries no ETag header — without an ETag (or Last-Modified) there is no cache-revalidation mechanism, so crawlers re-download the full body every visit. Emit an ETag (a content hash) to enable conditional If-None-Match requests.
  • https://rusjanworkshop.com/category/borse/messenger/ — the response carries no ETag header — without an ETag (or Last-Modified) there is no cache-revalidation mechanism, so crawlers re-download the full body every visit. Emit an ETag (a content hash) to enable conditional If-None-Match requests.
  • https://rusjanworkshop.com/category/borse/zaini/blog/ — the response carries no ETag header — without an ETag (or Last-Modified) there is no cache-revalidation mechanism, so crawlers re-download the full body every visit. Emit an ETag (a content hash) to enable conditional If-None-Match requests.
  • https://rusjanworkshop.com/category/borse/zaini/blog/bikepacking/ — the response carries no ETag header — without an ETag (or Last-Modified) there is no cache-revalidation mechanism, so crawlers re-download the full body every visit. Emit an ETag (a content hash) to enable conditional If-None-Match requests.
  • https://rusjanworkshop.com/category/borse/zaini/blog/bikepacking/borse-da-manubrio/ — the response carries no ETag header — without an ETag (or Last-Modified) there is no cache-revalidation mechanism, so crawlers re-download the full body every visit. Emit an ETag (a content hash) to enable conditional If-None-Match requests.
  • https://rusjanworkshop.com/category/senza-categoria/ — the response carries no ETag header — without an ETag (or Last-Modified) there is no cache-revalidation mechanism, so crawlers re-download the full body every visit. Emit an ETag (a content hash) to enable conditional If-None-Match requests.
  • https://rusjanworkshop.com/home/ — the response carries no ETag header — without an ETag (or Last-Modified) there is no cache-revalidation mechanism, so crawlers re-download the full body every visit. Emit an ETag (a content hash) to enable conditional If-None-Match requests.
  • https://rusjanworkshop.com/home/page/2/ — the response carries no ETag header — without an ETag (or Last-Modified) there is no cache-revalidation mechanism, so crawlers re-download the full body every visit. Emit an ETag (a content hash) to enable conditional If-None-Match requests.
  • https://rusjanworkshop.com/io-sono/ — the response carries no ETag header — without an ETag (or Last-Modified) there is no cache-revalidation mechanism, so crawlers re-download the full body every visit. Emit an ETag (a content hash) to enable conditional If-None-Match requests.
  • https://rusjanworkshop.com/page/2/ — the response carries no ETag header — without an ETag (or Last-Modified) there is no cache-revalidation mechanism, so crawlers re-download the full body every visit. Emit an ETag (a content hash) to enable conditional If-None-Match requests.

notice No Last-Modified header (no conditional GET for unchanged pages)

Rule perf.no_last_modified · Performance · 29 occurrence(s)

  • https://rusjanworkshop.com/ — the response carries no Last-Modified header — Googlebot can't send an If-Modified-Since request, so it re-downloads the full page body on every crawl even when nothing changed. Emit Last-Modified (or an ETag) on stable pages to enable 304 Not Modified responses.
  • https://rusjanworkshop.com/2025/03/05/cargo-borsoni/ — the response carries no Last-Modified header — Googlebot can't send an If-Modified-Since request, so it re-downloads the full page body on every crawl even when nothing changed. Emit Last-Modified (or an ETag) on stable pages to enable 304 Not Modified responses.
  • https://rusjanworkshop.com/2025/03/14/borsa-da-telaio-roll-top/ — the response carries no Last-Modified header — Googlebot can't send an If-Modified-Since request, so it re-downloads the full page body on every crawl even when nothing changed. Emit Last-Modified (or an ETag) on stable pages to enable 304 Not Modified responses.
  • https://rusjanworkshop.com/2025/03/14/skizzo-il-mini-portafoglio/ — the response carries no Last-Modified header — Googlebot can't send an If-Modified-Since request, so it re-downloads the full page body on every crawl even when nothing changed. Emit Last-Modified (or an ETag) on stable pages to enable 304 Not Modified responses.
  • https://rusjanworkshop.com/2025/03/15/borsa-da-manubrio-berkut/ — the response carries no Last-Modified header — Googlebot can't send an If-Modified-Since request, so it re-downloads the full page body on every crawl even when nothing changed. Emit Last-Modified (or an ETag) on stable pages to enable 304 Not Modified responses.
  • https://rusjanworkshop.com/2025/03/15/borsa-da-telaio-100-impermeabile/ — the response carries no Last-Modified header — Googlebot can't send an If-Modified-Since request, so it re-downloads the full page body on every crawl even when nothing changed. Emit Last-Modified (or an ETag) on stable pages to enable 304 Not Modified responses.
  • https://rusjanworkshop.com/2025/03/15/come-fare-la-dima/ — the response carries no Last-Modified header — Googlebot can't send an If-Modified-Since request, so it re-downloads the full page body on every crawl even when nothing changed. Emit Last-Modified (or an ETag) on stable pages to enable 304 Not Modified responses.
  • https://rusjanworkshop.com/2025/03/18/4-mani/ — the response carries no Last-Modified header — Googlebot can't send an If-Modified-Since request, so it re-downloads the full page body on every crawl even when nothing changed. Emit Last-Modified (or an ETag) on stable pages to enable 304 Not Modified responses.
  • https://rusjanworkshop.com/2025/03/18/biroc/ — the response carries no Last-Modified header — Googlebot can't send an If-Modified-Since request, so it re-downloads the full page body on every crawl even when nothing changed. Emit Last-Modified (or an ETag) on stable pages to enable 304 Not Modified responses.
  • https://rusjanworkshop.com/2025/03/18/dom-corta-borsa-top-tube-bikepacking/ — the response carries no Last-Modified header — Googlebot can't send an If-Modified-Since request, so it re-downloads the full page body on every crawl even when nothing changed. Emit Last-Modified (or an ETag) on stable pages to enable 304 Not Modified responses.
  • https://rusjanworkshop.com/2025/03/18/dom-lunga/ — the response carries no Last-Modified header — Googlebot can't send an If-Modified-Since request, so it re-downloads the full page body on every crawl even when nothing changed. Emit Last-Modified (or an ETag) on stable pages to enable 304 Not Modified responses.
  • https://rusjanworkshop.com/2025/03/18/mi-8m/ — the response carries no Last-Modified header — Googlebot can't send an If-Modified-Since request, so it re-downloads the full page body on every crawl even when nothing changed. Emit Last-Modified (or an ETag) on stable pages to enable 304 Not Modified responses.
  • https://rusjanworkshop.com/2025/03/18/sacche-stagne/ — the response carries no Last-Modified header — Googlebot can't send an If-Modified-Since request, so it re-downloads the full page body on every crawl even when nothing changed. Emit Last-Modified (or an ETag) on stable pages to enable 304 Not Modified responses.
  • https://rusjanworkshop.com/2025/03/18/sottosella/ — the response carries no Last-Modified header — Googlebot can't send an If-Modified-Since request, so it re-downloads the full page body on every crawl even when nothing changed. Emit Last-Modified (or an ETag) on stable pages to enable 304 Not Modified responses.
  • https://rusjanworkshop.com/author/rusjanbag/ — the response carries no Last-Modified header — Googlebot can't send an If-Modified-Since request, so it re-downloads the full page body on every crawl even when nothing changed. Emit Last-Modified (or an ETag) on stable pages to enable 304 Not Modified responses.
  • https://rusjanworkshop.com/author/rusjanbag/page/2/ — the response carries no Last-Modified header — Googlebot can't send an If-Modified-Since request, so it re-downloads the full page body on every crawl even when nothing changed. Emit Last-Modified (or an ETag) on stable pages to enable 304 Not Modified responses.
  • https://rusjanworkshop.com/category/borse/messenger/ — the response carries no Last-Modified header — Googlebot can't send an If-Modified-Since request, so it re-downloads the full page body on every crawl even when nothing changed. Emit Last-Modified (or an ETag) on stable pages to enable 304 Not Modified responses.
  • https://rusjanworkshop.com/category/borse/zaini/blog/ — the response carries no Last-Modified header — Googlebot can't send an If-Modified-Since request, so it re-downloads the full page body on every crawl even when nothing changed. Emit Last-Modified (or an ETag) on stable pages to enable 304 Not Modified responses.
  • https://rusjanworkshop.com/category/borse/zaini/blog/bikepacking/ — the response carries no Last-Modified header — Googlebot can't send an If-Modified-Since request, so it re-downloads the full page body on every crawl even when nothing changed. Emit Last-Modified (or an ETag) on stable pages to enable 304 Not Modified responses.
  • https://rusjanworkshop.com/category/borse/zaini/blog/bikepacking/borse-da-manubrio/ — the response carries no Last-Modified header — Googlebot can't send an If-Modified-Since request, so it re-downloads the full page body on every crawl even when nothing changed. Emit Last-Modified (or an ETag) on stable pages to enable 304 Not Modified responses.
  • https://rusjanworkshop.com/category/senza-categoria/ — the response carries no Last-Modified header — Googlebot can't send an If-Modified-Since request, so it re-downloads the full page body on every crawl even when nothing changed. Emit Last-Modified (or an ETag) on stable pages to enable 304 Not Modified responses.
  • https://rusjanworkshop.com/home/ — the response carries no Last-Modified header — Googlebot can't send an If-Modified-Since request, so it re-downloads the full page body on every crawl even when nothing changed. Emit Last-Modified (or an ETag) on stable pages to enable 304 Not Modified responses.
  • https://rusjanworkshop.com/home/page/2/ — the response carries no Last-Modified header — Googlebot can't send an If-Modified-Since request, so it re-downloads the full page body on every crawl even when nothing changed. Emit Last-Modified (or an ETag) on stable pages to enable 304 Not Modified responses.
  • https://rusjanworkshop.com/io-sono/ — the response carries no Last-Modified header — Googlebot can't send an If-Modified-Since request, so it re-downloads the full page body on every crawl even when nothing changed. Emit Last-Modified (or an ETag) on stable pages to enable 304 Not Modified responses.
  • https://rusjanworkshop.com/page/2/ — the response carries no Last-Modified header — Googlebot can't send an If-Modified-Since request, so it re-downloads the full page body on every crawl even when nothing changed. Emit Last-Modified (or an ETag) on stable pages to enable 304 Not Modified responses.

notice Slow server response

Rule perf.slow_response · Performance · 2 occurrence(s)

notice Missing recommended security headers

Rule security.missing_headers · Security · 29 occurrence(s)

notice target=_blank link without rel=noopener (tab-napping)

Rule security.unsafe_cross_origin_links · Security · 29 occurrence(s)

notice Indexable page not listed in sitemap

Rule sitemap.orphan_not_listed · Sitemap · 4 occurrence(s)

notice Title tag is identical to the H1 (missed keyword variation)

Rule title.same_as_h1 · Titles · 1 occurrence(s)

Pages (showing 50 of 50)
URLStatusIndexableWordsIn-links
https://rusjanworkshop.com/
RUSJAN Workshop
200 yes 177 29
https://rusjanworkshop.com/home/
Home – RUSJAN Workshop
200 yes 177 29
https://rusjanworkshop.com/io-sono/
Rusjan – RUSJAN Workshop
200 yes 385 29
https://rusjanworkshop.com/2025/03/18/sottosella/
LE borse SOTTOSELLA. – RUSJAN Workshop
200 yes 250 10
https://rusjanworkshop.com/2025/03/15/borsa-da-manubrio-berkut/
BORSA DA MANUBRIO “BERKUT” – RUSJAN Workshop
200 yes 47 10
https://rusjanworkshop.com/2025/03/18/mi-8m/
“MI-8M” BORSA DA MANUBRIO IMPERMEABILE 100% – RUSJAN Workshop
200 yes 49 10
https://rusjanworkshop.com/2025/03/15/come-fare-la-dima/
COME FARE LA DIMA – RUSJAN Workshop
200 yes 103 6
https://rusjanworkshop.com/2025/03/18/biroc/
“BIROC” – RUSJAN Workshop
200 yes 126 6
https://rusjanworkshop.com/2025/03/18/dom-lunga/
DOM LUNGA.borsa top tube per bikepacking. – RUSJAN Workshop
200 yes 215 6
https://rusjanworkshop.com/2025/03/18/4-mani/
Lavoro A 4 Mani – RUSJAN Workshop
200 yes 131 6
https://rusjanworkshop.com/2025/03/18/dom-corta-borsa-top-tube-bikepacking/
DOM CORTA. borsa top tube per bikepacking. – RUSJAN Workshop
200 yes 107 6
https://rusjanworkshop.com/2025/03/15/borsa-da-telaio-100-impermeabile/
Borse da telaio a tenuta stagna. – RUSJAN Workshop
200 yes 245 9
https://rusjanworkshop.com/2025/03/18/sacche-stagne/
SACCHE STAGNE – RUSJAN Workshop
200 yes 88 5
https://rusjanworkshop.com/2025/03/14/skizzo-il-mini-portafoglio/
SKIZZO. Il mini portafoglio. – RUSJAN Workshop
200 yes 166 10
https://rusjanworkshop.com/2025/03/14/borsa-da-telaio-roll-top/
Borsa da telaio roll top – RUSJAN Workshop
200 yes 142 9
https://rusjanworkshop.com/2025/03/05/cargo-borsoni/
CARGO BORSONI – RUSJAN Workshop
200 yes 103 6
https://rusjanworkshop.com/home/page/2/
Home – Pagina 2 – RUSJAN Workshop
200 yes 72 1
https://rusjanworkshop.com/page/2/
Pagina 2 – RUSJAN Workshop
200 yes 72 1
https://rusjanworkshop.com/author/rusjanbag/
rusjanbag – RUSJAN Workshop
200 yes 177 1
https://rusjanworkshop.com/author/rusjanbag/page/2/
rusjanbag – Pagina 2 – RUSJAN Workshop
200 yes 72 1
https://rusjanworkshop.com/category/borse/
Borse – RUSJAN Workshop
200 yes 123 0
https://rusjanworkshop.com/category/borse/messenger/
Messenger – RUSJAN Workshop
200 yes 37 0
https://rusjanworkshop.com/category/borse/zaini/blog/
Blog – RUSJAN Workshop
200 yes 110 0
https://rusjanworkshop.com/category/borse/zaini/blog/bikepacking/
Bikepacking – RUSJAN Workshop
200 yes 110 0
https://rusjanworkshop.com/category/borse/zaini/blog/bikepacking/accessori/
Accessori – RUSJAN Workshop
200 yes 65 0
https://rusjanworkshop.com/category/borse/zaini/blog/bikepacking/borse-da-manubrio/
Borse da manubrio – RUSJAN Workshop
200 yes 35 0
https://rusjanworkshop.com/category/borse/zaini/blog/bikepacking/borse-da-telaio/
Borse da telaio – RUSJAN Workshop
200 yes 55 0
https://rusjanworkshop.com/category/borse/zaini/blog/bikepacking/sottosella/
Sottosella – RUSJAN Workshop
200 yes 38 0
https://rusjanworkshop.com/category/senza-categoria/
Senza categoria – RUSJAN Workshop
200 yes 158 0
https://rusjanworkshop.com/wp-content/uploads/2025/03/20221028_173958-scaled.jpg 200 no 0 1
https://rusjanworkshop.com/wp-content/uploads/2025/03/20230319_113307-scaled.jpg 200 no 0 1
https://rusjanworkshop.com/wp-content/uploads/2025/03/20230708_124149-1-scaled.jpg 200 no 0 1
https://rusjanworkshop.com/wp-content/uploads/2025/03/20231018_120648-1-scaled.jpg 200 no 0 2
https://rusjanworkshop.com/wp-content/uploads/2025/03/2024-02-28-105821133.mp4 200 no 0 1
https://rusjanworkshop.com/wp-content/uploads/2025/03/20240121_141521.jpg 200 no 0 1
https://rusjanworkshop.com/wp-content/uploads/2025/03/20240616_122322-rotated.jpg 200 no 0 1
https://rusjanworkshop.com/wp-content/uploads/2025/03/20240616_122716-rotated.jpg 200 no 0 1
https://rusjanworkshop.com/wp-content/uploads/2025/03/20240706_103348.jpg 200 no 0 1
https://rusjanworkshop.com/wp-content/uploads/2025/03/20250213_111237-rotated.jpg 200 no 0 1
https://rusjanworkshop.com/wp-content/uploads/2025/03/20250213_111930.jpg 200 no 0 1
https://rusjanworkshop.com/wp-content/uploads/2025/03/760cc632b335091399271d80fa1f8f57.mp4 200 no 0 1
https://rusjanworkshop.com/wp-content/uploads/2025/03/IMG-20201124-WA0024.jpg 200 no 0 1
https://rusjanworkshop.com/wp-content/uploads/2025/03/IMG_20210925_104955-scaled.jpg 200 no 0 1
https://rusjanworkshop.com/wp-content/uploads/2025/03/IMG_20230524_170124-scaled.jpg 200 no 0 1
https://rusjanworkshop.com/wp-content/uploads/2025/03/IMG_20240427_092143-scaled.jpg 200 no 0 1
https://rusjanworkshop.com/wp-content/uploads/2025/03/Photoroom-20241003_074856-1.png 200 no 0 1
https://rusjanworkshop.com/wp-content/uploads/2025/03/Photoroom-20241012_162123.png 200 no 0 1
https://rusjanworkshop.com/wp-content/uploads/2025/03/Photoroom-20241012_162247.png 200 no 0 1
https://rusjanworkshop.com/wp-content/uploads/2025/03/Screenshot_20250314_203227_Instagram.jpg 200 no 0 1
https://rusjanworkshop.com/wp-content/uploads/2025/03/inbound2178058596415237836-scaled.jpg 200 no 0 1

Audit your own site — free

157 checks, internal PageRank, render-diff. No signup, results in ~30s.

Scan your site →