Audit Result

UUID: 019e2aec-6f37-7131-b6b3-2471aca3fa88

nuphy.com

https://nuphy.com/

Scanned 3 months ago

79
Fair Score
39 total checks
Passed
25
Warnings
12
Errors
2

Meta Information

  • Title Tag Warning

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

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

  • Found 203 characters. Keep description around 70-160 characters.

    Fix: Add <meta name="description" content="..."> in <head> with a clear page summary.

  • Canonical found: https://nuphy.com/

  • Favicon Pass

    Favicon found and reachable: //nuphy.com/cdn/shop/files/favicon_08659ce5-a45d-442c-972e-a9209f5e6759_32x32.jpg?v=1626859204 (HTTP 200).

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

  • HTML Lang Pass

    Language declared as "en".

Content Structure

  • H1 Tag Pass

    Exactly one H1 found: "NuPhy".

  • Valid heading flow across 10 headings.

  • 32 of 42 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.

  • 3 HTTPS hardening issues detected.

    • • HSTS max-age is too short (7889238s).
    • • HSTS is missing includeSubDomains.
    • • Could not probe the HTTP version of this page.
    • • Strict-Transport-Security: max-age=7889238

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

  • Missing: referrer-policy.

    Full HTTP headers (27)
    • • alt-svc: h3=":443"; ma=86400
    • • cf-cache-status: DYNAMIC
    • • cf-ray: 9fc10b4d2de5e5ec-IAD
    • • content-encoding: br
    • • content-language: en-US
    • • content-length: 64755
    • • content-security-policy: block-all-mixed-content; frame-ancestors 'none'; upgrade-insecure-requests;
    • • content-type: text/html; charset=utf-8
    • • date: Fri, 15 May 2026 09:16:29 GMT
    • • etag: "page_cache:26872971373:IndexController:24f9124fc93fb70a6309b892d45d7b87"
    • • link: <https://cdn.shopify.com>; rel="preconnect", <https://cdn.shopify.com>; rel="preconnect"; crossorigin, <//nuphy.com/cdn/shop/t/169/assets/theme.css?v=161013874594707468941778833476>; as="style"; rel="preload", <//nuphy.com/cdn/shop/t/169/assets/theme.js?v=59940718280601537721776762620>; as="script"; rel="preload"
    • • nel: {"report_to":"cf-nel","success_fraction":0.01,"max_age":604800}
    • • powered-by: Shopify
    • • report-to: {"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=0vMcDBAXVQtIGKifUCw9fLFcQZK8ka2pjZ6MNd8BQGYWZxbmsl0DAT4gUGZf9TnQIEds3efrT%2BsfXjthn5acW3UQlJ2P5na3jhSbNwiio3Lk4taEdixi5cFd1A%3D%3D"}]}
    • • server: cloudflare
    • • server-timing: processing;dur=44;desc="gc:1", db;dur=14, asn;desc="213230", edge;desc="IAD", country;desc="US", theme;desc="137619046509", pageType;desc="index", servedBy;desc="ztpx", requestID;desc="16acc8d7-a06e-4910-9f6f-022f39ea1169-1778836589", _y;desc="d6283ec3-e057-4995-b12a-93df7817801d", _s;desc="fffd13dd-aa47-4d08-8f25-a483ffb63890", _cmp;desc="3.AMPS_USVA_f_t_EIALIlQbTMydmVtVnNnzeQ", compressionLevel;desc="5", earlyhints
    • • shopify-complexity-score: 40
    • • shopify-complexity-score-v2: 40
    • • strict-transport-security: max-age=7889238
    • • vary: Accept accept-encoding
    • • x-content-type-options: nosniff
    • • x-dc: gcp-us-east1,gcp-us-east1,gcp-us-east1
    • • x-download-options: noopen
    • • x-frame-options: DENY
    • • x-permitted-cross-domain-policies: none
    • • x-request-id: 16acc8d7-a06e-4910-9f6f-022f39ea1169-1778836589
    • • x-xss-protection: 1; mode=block

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

  • CSP Quality Warning

    2 CSP hardening issues detected.

    • • CSP is missing object-src 'none'.
    • • CSP is missing a base-uri restriction.
    • • Content-Security-Policy: block-all-mixed-content; frame-ancestors 'none'; upgrade-insecure-requests;

    Fix: Tighten Content-Security-Policy by removing unsafe directives and adding object-src, base-uri, and frame-ancestors restrictions.

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

  • Server response headers do not expose version tokens.

  • Domain appears to be behind Cloudflare.

    • • server: cloudflare
    • • cf-cache-status: DYNAMIC
    • • cf-ray: 9fc10b4d2de5e5ec-IAD
  • Loaded in 0.83s (perceived).

  • 7 scripts and 9 styles may block rendering.

    • • script: https://sapi.negate.io/script/bP9V7mRegUGfQP1B/lsEbA==?shop=nuphy-store.myshopify.com
    • • script: https://nuphy.com/cdn/shop/t/169/assets/jquery-3.6.0.min.js?v=115860211936397945481757322129
    • • script: https://cdn-static.okendo.io/reviews-widget-plus/js/okendo-reviews-core.84d23785.js
    • • script: https://cdn-static.okendo.io/reviews-widget-plus/js/okendo-reviews-styles.35ef0117.js
    • • script: https://cdn-static.okendo.io/reviews-widget-plus/js/okendo-reviews-translation.c0fa6869.js
    • • script: https://cdn-static.okendo.io/reviews-widget-plus/js/modules/okendo-widget-init.a24d8f80.js
    • • script: https://cdn-static.okendo.io/reviews-widget-plus/js/modules/okendo-star-rating.1840642e.js
    • • style: https://nuphy.com/cdn/shop/t/169/assets/hs-image-blur.css?v=157208600979694062561757322131
    • • style: https://nuphy.com/cdn/shop/t/169/assets/theme.css?v=161013874594707468941778833476
    • • style: https://nuphy.com/cdn/shopifycloud/portable-wallets/latest/accelerated-checkout-backwards-compat.css
    • • style: https://cdn-static.okendo.io/reviews-widget-plus/css/okendo-reviews-styles.6dbb2446.css
    • • style: https://cdn.shopify.com/extensions/019e22a3-c449-74f5-83b7-bc0068de4552/swish-wishlist-king-225/assets/app-base.css
    • • style: https://cdn.shopify.com/extensions/019e22a3-c449-74f5-83b7-bc0068de4552/swish-wishlist-king-225/assets/component-wishlist-button-collection.css
    • • style: https://cdn.shopify.com/extensions/019e22a3-c449-74f5-83b7-bc0068de4552/swish-wishlist-king-225/assets/component-wishlist-page-bundle.css
    • • style: https://cdn.appmate.io/themecode-templates/themes/expanse-4/custom.css?v=21
    • • style: https://cdn-static.okendo.io/reviews-widget-plus/css/modules/okendo-star-rating.4cb378a8.css

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

  • Compression Warning

    7 text resources look uncompressed.

    • • https://shop.app/checkouts/internal/preloads.js?locale=en-US&shop_id=26872971373 (application/javascript; charset=utf-8)
    • • https://shop.app/pay/session?v=1 (application/json; charset=utf-8)
    • • https://nuphy.com/api/collect (text/html; charset=utf-8)
    • • https://cdn-static.okendo.io/reviews-widget-plus/js/okendo-reviews-styles.35ef0117.js (application/javascript)
    • • https://cdn-static.okendo.io/reviews-widget-plus/css/modules/okendo-star-rating.4cb378a8.css (text/css)
    • • https://cdn.appmate.io/themecode-templates/event-subscribers.js?v=21 (text/javascript)
    • • https://cdn.appmate.io/themecode-templates/add-to-cart.js?v=21 (text/javascript)

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

  • Robots.txt Pass

    Found robots.txt (200).

  • Found sitemap (200) at https://nuphy.com/sitemap.xml.

  • No robots meta tag defined.

    Fix: Add <meta name="robots" content="index,follow"> (or the intended directive) in <head>.

Accessibility Basics

  • All 3 controls are labeled.

  • Landmarks Pass

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

  • Tap Target Size Warning

    23 interactive elements appear smaller than 48px.

    • • a.in-page-link.visually-hidden (Skip to content) - 1x1px
    • • button.visually-hidden.slideshow__pause (Pause slideshow Play slideshow) - 12x2px
    • • a.site-header__logo-link - 100x24px
    • • a.trans90_mb.site-nav__link (编组 ) - 44x52px
    • • a.site-nav__link.site-nav__link--icon (编组 ) - 44x52px
    • • a#HeaderCartTrigger.trans90_mb.site-nav__link (编组 ) - 44x53px
    • • button.flickity-button.flickity-prev-next-button (Previous) - 40x40px
    • • button.flickity-button.flickity-prev-next-button (Next) - 40x40px
    • • button.text-link.quick-add-btn (Add to cart) - 37x37px
    • • button.wk-button.wk-align-center (Add to Wishlist) - 37x37px
    • • button.text-link.quick-add-btn (Add to cart) - 37x37px
    • • button.wk-button.wk-align-center (Add to Wishlist) - 37x37px
    • • button.text-link.quick-add-btn (Add to cart) - 37x37px
    • • button.wk-button.wk-align-center (Add to Wishlist) - 37x37px
    • • button.text-link.quick-add-btn (Add to cart) - 37x37px
    • • button.wk-button.wk-align-center (Add to Wishlist) - 37x37px
    • • button.text-link.quick-add-btn (Add to cart) - 37x37px
    • • button.wk-button.wk-align-center (Add to Wishlist) - 37x37px
    • • button.text-link.quick-add-btn (Add to cart) - 37x37px
    • • button.text-link.quick-add-btn (Add to cart) - 37x37px
    • • button.text-link.quick-add-btn (Add to cart) - 37x37px
    • • button.text-link.quick-add-btn (Add to cart) - 37x37px
    • • button.text-link.quick-add-btn (Add to cart) - 37x37px

    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 present and absolute.

    Open Graph Image
  • twitter:card set to summary_large_image.

  • JSON-LD schema detected.

  • 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.

  • 2 social preview quality issues detected.

    • • ISSUE: og:description should typically be between 50 and 200 characters.
    • • ISSUE: Preview image is below recommended size (1200x630).
    • • 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.
    • • MEASURED: Image size: 0.03 MB
    • • MEASURED: Image dimensions: 1200x628

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

Links Analysis

  • Checked 80 links. No broken internal links found.

  • No broken external links found in checked URLs.

  • All 159 links use non-empty href values.

Performance & Runtime

  • Largest Contentful Paint: 0.95s.

  • Cumulative Layout Shift: 0.000.

  • Total Blocking Time estimate: 2ms.

  • 2 asset requests failed.

    • • https://sapi.negate.io/script/bP9V7mRegUGfQP1B/lsEbA==?shop=nuphy-store.myshopify.com (HTTP 403)
    • • https://sapi.negate.io/script/bP9V7mRegUGfQP1B/lsEbA==?shop=nuphy-store.myshopify.com (net::ERR_ABORTED)

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

  • 9 JavaScript runtime issues detected.

    • • Request failed: https://sapi.negate.io/script/bP9V7mRegUGfQP1B/lsEbA==?shop=nuphy-store.myshopify.com (HTTP 403, type: script)
    • • Request failed: https://sapi.negate.io/script/bP9V7mRegUGfQP1B/lsEbA==?shop=nuphy-store.myshopify.com (net::ERR_ABORTED, type: script)
    • • Request failed: https://monorail-edge.shopifysvc.com/v1/produce (net::ERR_ABORTED, type: fetch)
    • • Request failed: https://nuphy.com/api/collect (net::ERR_ABORTED, type: fetch)
    • • Request failed: https://nuphy.com/shopify_pay/accelerated_checkout (net::ERR_ABORTED, type: fetch)
    • • Failed to load resource: the server responded with a status of 403 () [https://sapi.negate.io/script/bP9V7mRegUGfQP1B/lsEbA==?shop=nuphy-store.myshopify.com:1]
    • • Framing 'https://shop.app/' violates the following Content Security Policy directive: "frame-ancestors 'self' https://shop.app https://admin.shopify.com". The request has been blocked.
    • • Failed to load resource: the server responded with a status of 403 () [chrome-error://chromewebdata/:1]
    • • Cannot read properties of undefined (reading 'publish')

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