Blog

The 2025 TestParty Guide to WCAG 2.5.8 – Target Size (Minimum) (Level AA)

TestParty
TestParty
March 4, 2025

Why did the tiny button fail its accessibility audit? Because it couldn't handle the pressure—everyone kept missing the point!

WCAG 2.5.8 Target Size (Minimum) requires that clickable and tappable targets be at least 24 by 24 CSS pixels, ensuring users with motor impairments, tremors, or those using touch devices can accurately activate controls. Introduced in WCAG 2.2, this criterion addresses one of the most common usability barriers in modern web and mobile interfaces.

Table of Contents

  • What WCAG 2.5.8 Requires
  • Why This Matters
  • Quick Implementation Guide
  • Common Mistakes to Avoid
  • How to Test for WCAG 2.5.8
  • How TestParty Helps
  • FAQs

What WCAG 2.5.8 Requires

WCAG 2.5.8 mandates that interactive targets for pointer inputs (mouse clicks, finger taps, stylus touches) measure at least 24 by 24 CSS pixels. This applies to buttons, links, form controls, custom interactive components, and any element that responds to pointer events.

Key exceptions where smaller targets are permitted:

  • Spacing exception: Targets smaller than 24×24 pixels are acceptable if they have enough space around them. Specifically, if you center a 24-pixel diameter circle on each small target's bounding box, those circles must not overlap with any other target or circle.
  • Equivalent control: A smaller target is allowed if the same function is available through a different, compliant control on the same page.
  • Inline targets: Links or buttons within sentences or blocks of text are exempt when their size is constrained by the line-height of surrounding text.
  • User agent control: Targets sized by the browser or operating system (not modified by authors) are exempt.
  • Essential presentation: Targets that must be a specific size for legal or essential reasons (like signature boxes matching legal documents) are exempt.

What's covered:

  • Buttons, icon buttons, and toggle controls
  • Text links and navigation items
  • Form inputs, checkboxes, radio buttons, and their labels
  • Custom interactive components (sliders, drag handles, map pins)
  • Touch targets in mobile interfaces
  • Clickable cards, tiles, and list items

Why This Matters

People with motor disabilities, arthritis, Parkinson's disease, or limited fine motor control struggle to activate small targets. Touch screen users—especially on mobile devices—frequently miss tiny buttons, leading to frustration and task abandonment.

Legal and compliance context:

WCAG 2.5.8 is part of the WCAG 2.2 Level AA standard, which is referenced by the Americans with Disabilities Act (ADA), Section 508 (as of the expected 2025 refresh), EN 301 549 in Europe, and the European Accessibility Act (EAA) effective June 2025. Organizations that fail to meet Level AA requirements face legal risk, including lawsuits and regulatory penalties.

Business impact:

Larger touch targets reduce user errors, improve conversion rates, and decrease support costs. Mobile commerce sites with appropriately sized buttons see measurably higher checkout completion. Accessible target sizing benefits all users—not just those with disabilities—making interfaces faster and less frustrating for everyone.

Quick Implementation Guide

Set minimum dimensions on interactive elements:

Use CSS to enforce a 24×24 pixel minimum on all clickable targets. This applies to the entire interactive area, not just visible content.

/* Ensure buttons meet minimum target size */
button,
.btn,
a.interactive {
  min-width: 24px;
  min-height: 24px;
  padding: 8px 16px; /* Padding contributes to target size */
}

/* Icon-only buttons need explicit sizing */
.icon-button {
  width: 44px; /* Exceeds minimum for comfort */
  height: 44px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

Key implementation strategies:

  • Use padding generously: Padding around button text or icons increases the clickable area without enlarging visual elements disproportionately.
  • Expand clickable regions: Make entire cards, list items, or table rows clickable rather than just small text links within them.
  • Space out small targets: If you must use targets smaller than 24×24 pixels (like inline text links), ensure at least 24 pixels of spacing between them so the spacing exception applies.
  • Increase label click areas: Wrap form inputs with <label> tags or use for attributes so clicking the label text activates the control, effectively expanding the target.

Relevant WCAG techniques:

  • C42: Using min-height and min-width to ensure sufficient target spacing
  • Combine with 2.5.5 Target Size (Enhanced) guidance (48×48 pixels) for optimal usability

Common Mistakes to Avoid

Tiny icon-only buttons:

Icon buttons (close buttons, hamburger menus, social media icons) often render at 16×16 or 20×20 pixels. Without explicit sizing, these fail 2.5.8. Always set min-width and min-height or use padding to reach 24 pixels.

Clickable area smaller than visual appearance:

A button may look large enough, but if its clickable region is constrained by overflow: hidden or a nested link, the actual target can be too small. Ensure the entire visual button is interactive.

Densely packed mobile navigation:

Mobile hamburger menus with closely stacked links often have targets smaller than 24 pixels or insufficient spacing. Add vertical padding or margin between menu items.

Form controls without expanded labels:

Checkboxes and radio buttons are inherently small. If only the input itself is clickable (not the label), users must tap a tiny target. Always associate labels and make them clickable.

Ignoring touch target overlap:

Two small buttons placed 10 pixels apart fail even if each is 20×20 pixels, because their 24-pixel spacing circles overlap. Increase spacing or enlarge the buttons.

How to Test for WCAG 2.5.8

Automated checks:

  • Use browser developer tools to inspect computed dimensions (width, height, padding) of interactive elements.
  • Automated scanners can flag elements with computed dimensions below 24×24 pixels.
  • TestParty and similar tools analyze the DOM to identify undersized targets and calculate spacing between adjacent controls.

Manual testing checklist:

  • Measure target dimensions: Use browser inspect tools or overlay grids to verify each interactive element is at least 24×24 CSS pixels.
  • Check spacing for small targets: If a target is smaller than 24×24 pixels, measure the distance to adjacent targets. Confirm that 24-pixel diameter circles centered on each target do not overlap.
  • Test on touch devices: Use a real mobile device or emulator to tap buttons and links. Note any targets that are difficult to activate without accidentally hitting adjacent elements.
  • Verify label associations: Click on form labels to ensure they activate their associated inputs, expanding the effective target area.

What automation misses:

Automated tools may not accurately assess the spacing exception or identify when equivalent controls exist elsewhere on the page. Human review is necessary to evaluate context-specific exceptions like inline links or essential sizing requirements.

How TestParty Helps

TestParty's AI-powered platform detects, diagnoses, and helps remediate WCAG 2.5.8 violations at scale, integrating target size compliance directly into your development workflow.

What TestParty detects:

TestParty's DOM and source code analysis automatically identifies interactive elements with computed dimensions below 24×24 CSS pixels. The scanner evaluates:

  • Buttons, links, and form controls with insufficient width, height, or padding
  • Icon-only buttons and custom interactive components lacking explicit sizing
  • Densely packed navigation menus, toolbars, and button groups where targets are too close together
  • Clickable regions constrained by CSS (e.g., overflow: hidden, absolute positioning) that reduce the effective target area below the minimum

For undersized targets, TestParty calculates spacing to adjacent interactive elements, flagging violations where 24-pixel spacing circles overlap. This automated spacing analysis catches failures that manual review often misses.

How TestParty suggests fixes:

TestParty generates code-level remediation suggestions tailored to each violation:

  • CSS patches adding min-width: 24px and min-height: 24px to undersized buttons and links
  • Padding adjustments that expand clickable areas without altering visual design (e.g., increasing button padding from 4px 8px to 8px 16px)
  • Margin or gap recommendations for closely packed elements, ensuring 24-pixel spacing between small targets
  • Markup improvements like wrapping form inputs with <label> tags or adding for attributes to expand effective target areas

Each suggestion is reviewed by your development team or TestParty accessibility specialists before committing, ensuring fixes align with your design system and don't introduce layout regressions.

Developer workflow integration:

TestParty integrates into CI/CD pipelines, pull requests, and IDEs to catch target size violations before they reach production:

  • Pre-merge gates: Block pull requests that introduce buttons or links below the 24-pixel minimum, preventing regressions.
  • Line-level annotations: Highlight specific CSS rules or component templates causing undersized targets, with suggested fixes inline in your code review tool.
  • Real-time feedback: Developers receive instant feedback in local environments or staging, catching issues during implementation rather than after deployment.

For teams using design systems or component libraries, TestParty works at the template level—fixing a button component once cascades the improvement across thousands of pages.

Ongoing monitoring:

TestParty continuously scans your site or application, tracking target size compliance over time. Dashboards show:

  • Total count of undersized targets by page, component, or user flow
  • Trend lines indicating whether new violations are being introduced
  • Audit-ready reports for legal, procurement, or accessibility statements

Regression prevention alerts notify teams immediately when code changes reintroduce target size failures, ensuring compliance is maintained across releases.

TestParty's embedded guidance explains why each target size violation matters, helping developers understand the user impact and build accessibility knowledge over time.

FAQs About WCAG 2.5.8

What is WCAG 2.5.8 in plain language?

WCAG 2.5.8 requires that clickable and tappable targets (buttons, links, form controls) be at least 24 by 24 CSS pixels. This ensures people with motor impairments or those using touch devices can accurately activate controls without accidentally hitting the wrong target.

Is WCAG 2.5.8 required for ADA compliance?

Yes. WCAG 2.5.8 is part of WCAG 2.2 Level AA, which is increasingly recognized as the standard for ADA compliance. Courts and regulatory agencies expect organizations to meet Level AA, and Section 508 is expected to formally adopt WCAG 2.2 in 2025.

Does the 24-pixel minimum apply to text links in paragraphs?

No. The inline exception allows text links within sentences or paragraphs to be smaller than 24×24 pixels if their size is constrained by the line-height of surrounding text. However, standalone links or buttons outside of text blocks must meet the 24-pixel minimum.

What's the difference between WCAG 2.5.8 and 2.5.5?

WCAG 2.5.8 (Level AA) requires a 24×24 pixel minimum target size, while WCAG 2.5.5 (Level AAA) requires 44×44 pixels. Most organizations aim for Level AA compliance, but the 44-pixel target provides better usability and is recommended for critical actions like checkout buttons.

Can I use the spacing exception for all small buttons?

Yes, if you ensure that small targets (below 24×24 pixels) are spaced far enough apart that 24-pixel diameter circles centered on each target do not overlap. This requires at least 24 pixels of clear space between the edges of adjacent targets. However, simply making targets 24×24 pixels is often simpler and more robust than relying on precise spacing calculations.

How does padding affect target size?

Padding is included in the clickable area of a target. A button with width: 16px, height: 16px, and padding: 8px has an effective target size of 32×32 pixels (16 + 8 + 8 on each axis), which exceeds the 24-pixel minimum. Use padding strategically to meet target size requirements without visually enlarging elements.


Some TestParty features described in this article are currently under development. Visit TestParty.ai to learn more about our current capabilities and roadmap, or book a demo at TestParty.ai/book-a-demo to see TestParty in action.

Disclaimer: Some of this article was generated with Large Language Models (LLMs) and Artificial Intelligence (AI). There may be some errors and we advise you to consult with human professionals for detailed questions.

Stay informed

Accessibility insights delivered
straight to your inbox.

Contact Us

Automate the software work for accessibility compliance, end-to-end.

Empowering businesses with seamless digital accessibility solutions—simple, inclusive, effective.

Book a Demo