Audit Result

UUID: 01a11b81-291a-73b2-9649-8df89ecf4893

alinjewelry.com

https://alinjewelry.com/

Scanned 2 weeks ago

72
Fair Score
39 total checks
Passed
19
Warnings
18
Errors
2

Meta Information

  • Title Tag Warning

    Found 22 characters. Keep title between 30 and 60 characters.

    Fix: Add a unique <title> tag describing the main page intent in 30-60 characters.

  • Found 86 characters. Good snippet length.

  • Canonical URL Warning

    Canonical link not found.

    Fix: Add <link rel="canonical" href="https://example.com/page"> to avoid duplicate URL ambiguity.

  • Favicon Pass

    Favicon found and reachable: /favicon.ico (HTTP 200).

    Favicon
  • Viewport configured: width=device-width, initial-scale=1

  • HTML Lang Pass

    Language declared as "fa".

Content Structure

  • H1 Tag Pass

    Exactly one H1 found: "جایی که جواهرات الینریشه در نخل‌های جنوب دارد!".

  • Valid heading flow across 63 headings.

  • 15 of 68 images are missing alt text.

    Fix: Add meaningful alt attributes to all informative images for accessibility and image SEO.

Technical Optimization

  • HTTPS Pass

    Page is served over HTTPS.

  • 2 HTTPS hardening issues detected.

    • • Missing Strict-Transport-Security header.
    • • Could not probe the HTTP version of this page.

    Fix: Set Strict-Transport-Security with a long max-age, add includeSubDomains, and redirect all HTTP requests to HTTPS.

  • Missing: strict-transport-security, content-security-policy, x-frame-options, x-content-type-options, referrer-policy.

    Full HTTP headers (8)
    • • cache-control: private, no-cache, no-store, max-age=0, must-revalidate
    • • content-encoding: gzip
    • • content-type: text/html; charset=utf-8
    • • date: Thu, 08 Oct 2026 12:33:22 GMT
    • • link: </_next/static/media/2f3ac878458b8cad-s.p.ttf>; rel=preload; as="font"; crossorigin=""; type="font/ttf", </_next/static/media/5d87441b89e4de19-s.p.woff2>; rel=preload; as="font"; crossorigin=""; type="font/woff2", </_next/static/media/765288b4c0109548-s.p.woff2>; rel=preload; as="font"; crossorigin=""; type="font/woff2", </_next/static/media/9970fd44faffc340-s.p.woff2>; rel=preload; as="font"; crossorigin=""; type="font/woff2", </_next/static/media/b91ac2d1539e4499-s.p.ttf>; rel=preload; as="font"; crossorigin=""; type="font/ttf"
    • • server: nginx/1.24.0 (Ubuntu)
    • • vary: RSC, Next-Router-State-Tree, Next-Router-Prefetch, Accept-Encoding
    • • x-powered-by: Next.js

    Fix: Add the missing security headers at your reverse proxy or application layer.

  • CSP Quality Warning

    Content-Security-Policy header is missing.

    • • Missing Content-Security-Policy header.

    Fix: Define a restrictive Content-Security-Policy and avoid unsafe directives such as unsafe-inline and unsafe-eval.

  • No first-party cookies were set during the initial page load.

  • Versioned headers detected: server.

    • • server: nginx/1.24.0 (Ubuntu)

    Fix: Hide or remove version tokens in Server and X-Powered-By headers.

  • Domain does not appear to be behind Cloudflare.

  • Loaded in 1.77s (perceived).

    Fix: Reduce payload size, cache static assets, and remove non-critical JS from initial load.

  • 1 scripts and 2 styles may block rendering.

    • • script: https://alinjewelry.com/_next/static/chunks/polyfills-42372ed130431b0a.js
    • • style: https://alinjewelry.com/_next/static/css/373a2a9118573bc3.css
    • • style: https://alinjewelry.com/_next/static/css/f2a29bda7cd38f64.css

    Fix: Defer non-critical scripts and inline critical CSS to improve first paint speed.

  • Compression Warning

    11 text resources look uncompressed.

    • • https://alinjewelry.com/_next/static/chunks/main-app-9c990e4c120aff5e.js (application/javascript; charset=UTF-8)
    • • https://api.alinjewelry.com/api/v1/collections?active_only=true (application/json)
    • • https://api.alinjewelry.com/api/v1/settings/landing-branding (application/json)
    • • https://api.alinjewelry.com/api/v1/site/status (application/json)
    • • https://api.alinjewelry.com/api/v1/market-prices (application/json)
    • • https://api.alinjewelry.com/api/v1/products?collection_id=dc83a7ee-e31b-4763-9e40-2492307c17e5&page_size=8 (application/json)
    • • https://api.alinjewelry.com/api/v1/products?collection_id=c92a929f-3b56-4037-b3c8-e835ab749480&page_size=8 (application/json)
    • • https://api.alinjewelry.com/api/v1/products?collection_id=32e5b6c9-5daf-4911-8f0d-a2742026d98d&page_size=8 (application/json)
    • • https://api.alinjewelry.com/api/v1/products?collection_id=bfa968f2-100a-41e5-8db3-12c8c49eef0d&page_size=8 (application/json)
    • • https://api.alinjewelry.com/api/v1/products?collection_id=6fc3b6b7-4b38-43ff-81bf-48dc9223dcea&page_size=8 (application/json)
    • • https://api.alinjewelry.com/api/v1/products?collection_id=1fa3fef1-f34d-43c2-a932-7a17ece31c40&page_size=8 (application/json)

    Fix: Enable Brotli or Gzip compression for HTML, CSS, JS, and JSON responses.

  • Robots.txt Pass

    Found robots.txt (200).

  • Sitemap File Warning

    Sitemap missing or inaccessible at http://localhost:3000/sitemap.xml (no response).

    Fix: Publish a sitemap.xml and reference it in robots.txt with: Sitemap: https://alinjewelry.com/sitemap.xml

  • Robots meta found: index, follow

Accessibility Basics

  • All 1 controls are labeled.

  • Landmarks Pass

    Header, nav, main, and footer landmarks are present.

  • Tap Target Size Warning

    25 interactive elements appear smaller than 48px.

    • • button.flex.items-center (منو) - 65x36px
    • • a.flex.items-center (ALIN) - 62x32px
    • • button.text-[11px].font-medium (English) - 32x33px
    • • button.p-2.transition-colors (Toggle theme) - 32x32px
    • • a.p-2.transition-colors (جستجوی نام محصول...) - 34x34px
    • • a.hidden.sm:block (علاقه‌مندی‌ها) - 34x34px
    • • a.hidden.sm:block (حساب کاربری) - 34x34px
    • • a.relative.p-2 (cart) - 34x34px
    • • a.alin-link-underline.text-white (کشف جواهرات الین) - 118x24px
    • • a.alin-link-underline.text-white/80 (مشاهده نوسانات قیمت طلا) - 156x24px
    • • a.alin-link-underline.text-xs (مشاهده بیشتر) - 79x20px
    • • a.alin-link-underline.text-[11px] (مشاهده بیشتر) - 69x21px
    • • button.flex.h-8 (قبلی) - 32x32px
    • • button.flex.h-8 (بعدی) - 32x32px
    • • button.p-2.5.rounded-lg (افزودن به علاقه‌مندی‌ها) - 37x37px
    • • a.flex-1.h-9 (جزئیات محصول) - 165x37px
    • • button.p-2.5.rounded-lg (افزودن به علاقه‌مندی‌ها) - 36x36px
    • • a.flex-1.h-9 (جزئیات محصول) - 162x36px
    • • button.p-2.5.rounded-lg (افزودن به علاقه‌مندی‌ها) - 36x36px
    • • a.flex-1.h-9 (جزئیات محصول) - 162x36px
    • • button.p-2.5.rounded-lg (افزودن به علاقه‌مندی‌ها) - 36x36px
    • • a.flex-1.h-9 (جزئیات محصول) - 162x36px
    • • button.p-2.5.rounded-lg (افزودن به علاقه‌مندی‌ها) - 36x36px
    • • a.flex-1.h-9 (جزئیات محصول) - 162x36px
    • • button.p-2.5.rounded-lg (افزودن به علاقه‌مندی‌ها) - 36x36px

    Fix: Increase target size to at least 48x48 CSS pixels for touch interactions.

Social & Rich Results

  • Core Open Graph tags are present.

  • og:image is missing.

    Fix: Add <meta property="og:image" content="https://..."> with a high-quality share image.

  • twitter:card set to summary_large_image.

  • Structured Data Warning

    No JSON-LD schema scripts found.

    Fix: Add JSON-LD structured data matching your page type (Organization, Article, Product, etc.).

  • PWA Metadata Warning

    Manifest or Apple touch icon is missing.

    Fix: Link your web app manifest and apple-touch-icon for improved install/share experiences.

  • 3 social preview quality issues detected.

    • • ISSUE: og:url should be an absolute URL.
    • • ISSUE: og:description should typically be between 50 and 200 characters.
    • • ISSUE: Use an absolute URL for og:image or twitter:image.
    • • GUIDELINE: Optimal og:title length: 40-60 characters (acceptable: 10-70).
    • • GUIDELINE: Optimal og:description length: 110-160 characters (acceptable: 50-200).
    • • GUIDELINE: Optimal preview image size: 1200x630 pixels.
    • • GUIDELINE: Optimal preview image aspect ratio: 1.91:1.
    • • GUIDELINE: Optimal preview image file size: under 5 MB.
    • • GUIDELINE: Recommended twitter:card: summary_large_image.

    Fix: Use absolute OG/Twitter URLs, keep metadata lengths in recommended ranges, and provide a preview image near 1200x630 under 5MB.

Links Analysis

  • Checked 61 links. No broken internal links found.

  • No broken external links found in checked URLs.

  • All 136 links use non-empty href values.

Performance & Runtime

  • Largest Contentful Paint: 3.50s.

    Fix: Improve LCP by optimizing above-the-fold media, reducing server latency, and inlining critical CSS.

  • Cumulative Layout Shift: 0.000.

  • Total Blocking Time estimate: 155ms.

  • 9 asset requests failed.

    • • https://alinjewelry.com/_next/image?url=https%3A%2F%2Fapi.alinjewelry.com%2Fuploads%2Fproducts%2Fa7d0f0d076d4464ab8414da8d2492051_thumb.webp&w=384&q=90 (HTTP 404)
    • • https://alinjewelry.com/_next/image?url=https%3A%2F%2Fapi.alinjewelry.com%2Fuploads%2Fproducts%2Fcdc204acc8e44d72bca0834dd6da1a90_thumb.webp&w=384&q=90 (HTTP 404)
    • • https://alinjewelry.com/_next/image?url=https%3A%2F%2Fapi.alinjewelry.com%2Fuploads%2Fproducts%2F4d47f4896b1443b894d66c73d6f7bce0_thumb.webp&w=256&q=90 (HTTP 404)
    • • https://alinjewelry.com/_next/image?url=https%3A%2F%2Fapi.alinjewelry.com%2Fuploads%2Fproducts%2Ff528f93e93da4317a4c569e7c05596ad_thumb.webp&w=256&q=90 (HTTP 404)
    • • https://alinjewelry.com/_next/image?url=https%3A%2F%2Fapi.alinjewelry.com%2Fuploads%2Fproducts%2Fc4ed45c6a1de44059e3f845ed0256ba8_thumb.webp&w=256&q=90 (HTTP 404)
    • • https://alinjewelry.com/_next/image?url=https%3A%2F%2Fapi.alinjewelry.com%2Fuploads%2Fproducts%2F4d47f4896b1443b894d66c73d6f7bce0.png&w=256&q=90 (HTTP 404)
    • • https://alinjewelry.com/_next/image?url=https%3A%2F%2Fapi.alinjewelry.com%2Fuploads%2Fproducts%2Fc4ed45c6a1de44059e3f845ed0256ba8.webp&w=256&q=90 (HTTP 404)
    • • https://api.alinjewelry.com/uploads/branding/9f58ff2559344c0d81b448ff52d4d91e_thumb.webp (net::ERR_BLOCKED_BY_ORB)
    • • https://api.alinjewelry.com/uploads/branding/84b0a3c924744d94959f1dba5a2a5b5c_thumb.webp (net::ERR_BLOCKED_BY_ORB)

    Fix: Fix missing files, update asset URLs, and ensure static assets return HTTP 200.

  • 7 JavaScript runtime issues detected.

    • • Failed to load resource: the server responded with a status of 404 () [https://alinjewelry.com/_next/image?url=https%3A%2F%2Fapi.alinjewelry.com%2Fuploads%2Fproducts%2Fa7d0f0d076d4464ab8414da8d2492051_thumb.webp&w=384&q=90:1]
    • • Failed to load resource: the server responded with a status of 404 () [https://alinjewelry.com/_next/image?url=https%3A%2F%2Fapi.alinjewelry.com%2Fuploads%2Fproducts%2Fcdc204acc8e44d72bca0834dd6da1a90_thumb.webp&w=384&q=90:1]
    • • Failed to load resource: the server responded with a status of 404 () [https://alinjewelry.com/_next/image?url=https%3A%2F%2Fapi.alinjewelry.com%2Fuploads%2Fproducts%2F4d47f4896b1443b894d66c73d6f7bce0_thumb.webp&w=256&q=90:1]
    • • Failed to load resource: the server responded with a status of 404 () [https://alinjewelry.com/_next/image?url=https%3A%2F%2Fapi.alinjewelry.com%2Fuploads%2Fproducts%2Ff528f93e93da4317a4c569e7c05596ad_thumb.webp&w=256&q=90:1]
    • • Failed to load resource: the server responded with a status of 404 () [https://alinjewelry.com/_next/image?url=https%3A%2F%2Fapi.alinjewelry.com%2Fuploads%2Fproducts%2Fc4ed45c6a1de44059e3f845ed0256ba8_thumb.webp&w=256&q=90:1]
    • • Failed to load resource: the server responded with a status of 404 () [https://alinjewelry.com/_next/image?url=https%3A%2F%2Fapi.alinjewelry.com%2Fuploads%2Fproducts%2F4d47f4896b1443b894d66c73d6f7bce0.png&w=256&q=90:1]
    • • Failed to load resource: the server responded with a status of 404 () [https://alinjewelry.com/_next/image?url=https%3A%2F%2Fapi.alinjewelry.com%2Fuploads%2Fproducts%2Fc4ed45c6a1de44059e3f845ed0256ba8.webp&w=256&q=90:1]

    Fix: Fix JS files returning 404/failed requests and resolve the listed runtime exceptions.