Juno
How it worksExample reportPricing
Start free audit
© Juno
Deutsch
ImprintPrivacyTermsWithdrawal
IndustryBakery chainRehab centresRestaurant chainElectrical contractorOnline shopFood producerMetal engineeringElectronics maker

Real exampleA real German company’s website, checked with the free quick check on 24 Oct 2026. Name and address removed.

Homepage · 24 Oct 2026

lebensmittel-shop.example

Needs work overall: 18 things to improve, with UI scoring lowest. Start with one action, one name. Quick audit: only the code-measured checks ran, so design and copy judgement is still missing. 6 checks need a person to confirm.

critical
1
major
6
minor
11
Checked51%quick audit
62of 100Needs work3 high-impact fixes you can make in minutes

Scores by audit

If you only do three things

  1. One action, one name

    When one destination has several names, or one name leads to different places, visitors stop trusting the navigation and second-guess every click.

    Fix→Give every destination one label and use it everywhere: menu, buttons, footer and page title. Rename or remove the duplicates the audit found.

  2. Comfortable body text

    Small text, long lines and tight line spacing tire readers quickly, especially on phones.

    Fix→Set body text to at least 16 px, line length to 45–75 characters (max-width around 65ch) and line height to 1.4–1.6.

  3. C6 · Buttons and links say what happens

    Labels like “Learn more” or “Click here” don’t say what happens, so people hesitate or skip them.

    Fix→Write every button and link as a verb plus what the visitor gets: “Book a call”, “See pricing”, “Download the guide”.

UI

Poor 25/100

UI is where visitors struggle most. I'd start with "comfortable body text".

  • major

    Comfortable body text

    Body text: body 14px (mobile), ≈82 characters per line (outside comfortable range). Small text, long lines and tight line spacing tire readers quickly, especially on phones.

    Fix→Set body text to at least 16 px, line length to 45–75 characters (max-width around 65ch) and line height to 1.4–1.6.

    For your developer
    • div.text-hero-wrapper > div.cms-element__text > div.w-full > div > p · ✓ body 16px (desktop) · ✗ body 14px (mobile) · ✗ ≈82 characters per line · ✓ line height…

    Matthew Butterick: Practical Typography — line length, point size, line spacing

  • major

    Consistent components

    141 buttons in 11 distinct styles. When buttons come in many styles, visitors can’t tell which action matters most or even what’s clickable.

    Fix→Reduce buttons to three styles (primary, secondary, text) and use each one for the same kind of action everywhere.

    For your developer
    • #__nuxt > button.fixed · 2× "Zum Hauptinhalt springen": rgb(0, 0, 0), radius 8px, weight 400
    • div.container > nav.topbar-nav > div.flex:nth-of-type(3) > span.group > button.flex:nth-of-type(1) · 3× "Deutschland": rgba(0, 0, 0, 0), radius 2px, weight 400
    • #search-input · 1× "": rgba(56, 55, 52, 0.05), radius 9999px, weight 400
    • div.container:nth-of-type(3) > div.my-4:nth-of-type(1) > div.header__actions > div.relative:nth-of-type(2) > button.flex · 1× "": rgba(0, 0, 0, 0), radius 4px,…

    Jakob Nielsen, NN/g: 10 Usability Heuristics for User Interface Design

  • minor

    Interactions feel direct

    0% of tested controls respond the moment they're pressed. Buttons that react a moment late feel unresponsive, even if the site is fast.

    Fix→Show a pressed state immediately (:active), open menus from the element that triggered them, and use CSS transitions so animations can be interrupted.

    For your developer
    • #__nuxt > button.fixed · "Zum Hauptinhalt springen": no change until release
    • div.container > nav.topbar-nav > div.flex:nth-of-type(3) > span.group > button.flex:nth-of-type(1) · "Deutschland": no change until release
    • div.container > nav.topbar-nav > div.flex:nth-of-type(3) > span.group > button.rounded-sm:nth-of-type(2) · "DE": no change until release
    • div.container > nav.topbar-nav > div.flex:nth-of-type(3) > div.flex > button.flex · "Service / Hilfe": no change until release

    Apple: Designing Fluid Interfaces (WWDC 2018)

  • minor

    A deliberate type scale

    2 font families, 10 sizes, 90% on a consistent scale. Too many font sizes and families make a page feel unplanned and blur the difference between a heading and body text.

    Fix→Pick two families at most and a scale of six to eight sizes (for example 14, 16, 20, 25, 31, 39 px), then map every text style onto it.

    For your developer
    • font families (excl. icons): 2
    • distinct font sizes: 10 (target 8)
    • sizes on a modular scale: 90 %
    • Families: Outfit, [brand] Serif

    Adam Wathan & Steve Schoger: Refactoring UI — hierarchy, spacing systems, limited palettes

  • minor

    Spacing on a system

    91% of spacing values sit on a 4 px grid; text aligns to 22 left edges. Random spacing makes a layout feel slightly off even when visitors can’t say why.

    Fix→Choose a spacing base (4 or 8 px), define a short set of steps (8, 16, 24, 32, 48, 64), and replace one-off values with the nearest step.

    For your developer
    • spacing on 4 px grid: 91 % (target 80)
    • distinct left text edges: 22 (target 4)

    Adam Wathan & Steve Schoger: Refactoring UI — hierarchy, spacing systems, limited palettes

  • minor

    Smooth, jank-free motion

    0 animation(s) on layout properties; CLS 0.39. Animating layout properties makes pages stutter and content jump, especially on cheaper phones.

    Fix→Animate only transform and opacity, reserve space for images and embeds, and keep layout shift (CLS) under 0.1.

    For your developer
    • CLS: 0.39 (target 0.1)

    Apple: Designing Fluid Interfaces (WWDC 2018)

Copy

Poor 54/100

Copy is where visitors struggle most. I'd start with "c6 · buttons and links say what happens".

  • major

    C6 · Buttons and links say what happens

    4 vague button/link label(s); "hier" leads to 2 different places. Labels like “Learn more” or “Click here” don’t say what happens, so people hesitate or skip them.

    Fix→Write every button and link as a verb plus what the visitor gets: “Book a call”, “See pricing”, “Download the guide”.

    For your developer
    • div.cms-section-default-wrapper:nth-of-type(12) > div.cms-section-default > div.element-[brand]-headline:nth-of-type(1) > div.element-[brand]-headline__actions:nth-o…
    • #order-status > div.api-form:nth-of-type(2) > form.mb-10 > div.mt-4:nth-of-type(2) > button.h-14 · "Absenden"
    • div.cms-element__text > div.w-full > div > p:nth-of-type(1) > a:nth-of-type(4) · "hier" → https://lebensmittel-shop.example/vision-mission
    • div.cms-element__text > div.w-full > div > p:nth-of-type(13) > a · "Hier" → https://lebensmittel-shop.example/wissen/blog/was-ist-eigentlich-gesund

    WCAG 2.2 SC 2.4.4

  • minor

    C3 · About the reader, not the company

    Homepage says "you" 21× and "we" 30×. Visitors care about their problem, not your company. Copy full of “we” reads like it’s about you.

    Fix→Rewrite key sections from the visitor’s side: lead with “you” and what they get, then say what you do.

    For your developer
    • reader words: 21
    • company words: 30

    Government Digital Service: GOV.UK content design: writing for the web

  • minor

    C5 · Plain, readable language

    Harder to read than needed: Amstad 54 (aim ≥ 60). Long sentences and difficult words lose readers, including experts reading on a phone.

    Fix→Aim for sentences under 20 words, prefer everyday words, write in the active voice, and explain any jargon the first time it appears.

    For your developer
    • Amstad (Flesch, German): 53.81
    • average sentence length: 14.72 words (target 20)

    plainlanguage.gov: Federal Plain Language Guidelines

Accessibility

Needs work 69/100

Accessibility needs some love. I'd start with "everything works with a keyboard".

  • critical

    Everything works with a keyboard

    40 interactive elements are not reachable with the keyboard. People who can’t use a mouse rely on the keyboard. Anything they can’t reach is something they can’t use.

    Fix→Use real <button> and <a href> elements for anything clickable, don’t remove them from the tab order, and add a “Skip to content” link.

    For your developer
    • focus stops: 1
    • unreachable controls: 40 (target 0)
    • backward jumps: 0 (target 1)
    • #__nuxt > button.fixed · Not reachable with Tab: "Zum Hauptinhalt springen"

    WCAG 2.2 SC 2.1.1, 2.1.2

  • major

    Survives zoom and custom text spacing

    24 text element(s) get cut off when people increase letter, word or line spacing. Many people zoom or enlarge text. If the layout breaks, content and buttons disappear for them.

    Fix→Use relative units and flexible layouts so the page works at 400% zoom and with larger letter and line spacing, without content being cut off.

    For your developer
    • page width at 320 px viewport: 320 px (target 320)
    • a.block > div.group > div.overlay > div.absolute > p.font-serif · Sticks out to 404px at 320px wide
    • a.block > div.group > div.overlay > div.absolute > p.font-serif · Sticks out to 608px at 320px wide
    • a.block > div.group > div.overlay > div.absolute > p.font-serif · Sticks out to 812px at 320px wide

    WCAG 2.2 SC 1.4.4, 1.4.10

  • minor

    Structure is real, not just visual

    1 skipped heading level(s). Screen reader users jump by headings and landmarks. A page without real structure is one long stream.

    Fix→Use one <h1>, nest headings in order (h2 under h1, h3 under h2), and wrap the page in <header>, <nav>, <main> and <footer>.

    For your developer
    • h1 count: 1 (target 1)
    • Skipped heading level: h2 → h5 "Toll als Topping auf dem Porridge"

    WCAG 2.2 SC 1.3.1, 1.3.2

  • minor

    Forms can be completed by everyone

    1 personal-data field(s) without autocomplete. Error handling needs the judge stage. Forms are where accessibility problems cost you leads and sales directly.

    Fix→Give every field a visible label, mark required fields in text, link error messages to their field, and use the right autocomplete attributes.

    For your developer
    • #form-builder__element__v-0-0-0-5-0-0-0-email-email · Personal-data field without autocomplete: "E-Mail-Adresse*"

    WCAG 2.2 SC 3.3.1, 3.3.2

SEO

Good 84/100

SEO is solid with a few rough edges. I'd start with "unique, descriptive titles and descriptions".

  • minor

    Unique, descriptive titles and descriptions

    1 description(s) outside 70–170 characters; 1 title(s) outside 15–65 characters. The title and description are your ad in search results. Missing or duplicate ones get fewer clicks.

    Fix→Write a unique title per page (main topic first, brand last, under about 60 characters) and a 120–160 character description that makes people want to click.

    For your developer
    • Title 4 characters: "[brand]"

    Google Search Central: Influencing title links in search results

  • minor

    Looks right when shared

    Missing og:title, og:description, og:image; shared links will look bare. Links shared without a preview image and description get far fewer clicks.

    Fix→Add og:title, og:description and a 1200 × 630 px og:image to every key page, and check them with a link preview tool.

    For your developer
    • No og:title
    • No og:description
    • No og:image

    Google Search Central: SEO Starter Guide

UX

Not checked yet 28% measured

UX is where visitors struggle most. I'd start with "one action, one name".

  • major

    One action, one name

    96 page(s) reached under different names; 39 label(s) leading to different pages. When one destination has several names, or one name leads to different places, visitors stop trusting the navigation and second-guess every click.

    Fix→Give every destination one label and use it everywhere: menu, buttons, footer and page title. Rename or remove the duplicates the audit found.

    For your developer
    • "schnelle lieferung" ×16, "versandinformationen" ×48
    • "bestellstatus" ×32, "versandstatus" ×16
    • "widerrufsrecht" ×32, "vertrag widerrufen" ×16
    • "anmelden" ×32, "registrieren" ×32

    Jakob Nielsen, NN/g: 10 Usability Heuristics for User Interface Design

  • minor

    Mobile is a first-class experience

    First action 0.2 screens down; 20 key button(s) under 44px tall. Most visits are on phones. Small tap targets and actions pushed far down make the mobile site feel second-class.

    Fix→Make primary buttons at least 44 px tall, bring the main action into the first screen on mobile, and check that nothing overflows sideways.

    For your developer
    • #back-to-top > header > div.container:nth-of-type(3) > div.scrollable-navigation:nth-of-type(2) > button.relative:nth-of-type(2) · First prominent action "" at…
    • #__nuxt > button.fixed · 40px tall: "Zum Hauptinhalt springen"
    • header > div.container:nth-of-type(3) > div.my-4:nth-of-type(1) > div.header__actions > button.h-14:nth-of-type(1) · 40px tall: ""
    • div.container:nth-of-type(3) > div.my-4:nth-of-type(1) > div.header__actions > div.relative:nth-of-type(2) > button.flex · 40px tall: ""

    NN/g: Mobile UX guidelines (touch targets, content priority)

Conversion

Not checked yet 23% measured

Conversion needs some love. I'd start with "fast on a phone".

  • major

    Fast on a phone

    Landing page: LCP unknown, 29.3 MB on mobile. Later funnel steps are measured by the funnel walk. On phones, every extra second of loading costs conversions.

    Fix→Get mobile LCP under 2.5 s and pages under 2 MB: compress images, cut unused scripts and fonts, and lazy-load what’s below the fold.

    For your developer
    • page weight: 29.3 MB (target 2)

    web.dev: Core Web Vitals thresholds (LCP 2.5 s, INP 200 ms, CLS 0.1)

Your 30-minute plan

0 of 7 done

Small fixes with a big pay-off. Tick them off as you go.

That's it from me. Make a few changes, run me again, and I'll tell you what moved.

Run your own audit