Uitly Logo
UITLY
Border Radius Consistency Checker

Free Border Radius Consistency Checker Standardize Your UI Corners

Paste the border radius values from your UI components and instantly see which ones are off-scale, inconsistent, or non-standard. Get a standardized radius scale, visual previews, and a Tailwind config you can paste directly into your project.

Inconsistency Detection

Scores your radius values against a standard scale and flags every off-scale value with suggested fixes

Visual Preview

See your radius values rendered as actual cards before and after standardization in a live side-by-side preview

Tailwind + CSS Output

Generates a complete borderRadius config for tailwind.config.js and CSS custom properties ready to paste

Check Your Border Radius Consistency

Add the border radius values from your buttons, cards, inputs, modals, and badges. The tool detects inconsistencies, suggests a standard scale, and generates code you can use immediately.

Border Radius Checker

Try a preset:

Your Radius Values

4px

Consistency Score

100/100

Consistent

Unique raw values: 5

After standardizing: 5

Button: 6pxCard: 12pxInput: 8pxModal: 16pxBadge: full

Standard Scale Preview

rounded-none

0px

rounded-sm

2px

rounded-md

4px

rounded-lg

6px

rounded-xl

8px

rounded-2xl

12px

rounded-3xl

16px

rounded-full

9999px

Your Values → Standardized

Button

6px

Card

12px

Input

8px

Modal

16px

Badge

9999px

Tailwind Config (tailwind.config.js)

// tailwind.config.js
module.exports = {
  theme: {
    extend: {
      borderRadius: {
        "sm": "2px",
        "md": "4px",
        "lg": "6px",
        "xl": "8px",
        "2xl": "12px",
        "3xl": "16px",
        "full": "9999px",
      },
    },
  },
}

What This Checker Analyzes

Scale Alignment

  • Detects your base unit automatically
  • Snaps each value to the nearest scale step
  • Shows exactly how far each value deviates

Consistency Score

  • 0–100 score based on deviation and variety
  • Measures token reduction: unique raw vs. standardized
  • One-click "Apply All Suggestions" fix

Code Output

  • Tailwind borderRadius config extension
  • CSS custom properties for any framework
  • Adjustable base unit (2–16px)

No account required — 100% free

The Complete Guide to Border Radius Consistency in UI Design

Open your browser's inspector on almost any production web application and inspect the border radii of the first ten components you find. Most codebases reveal something like this: buttons at 6px, cards at 12px, inputs at 8px, modals at 16px, badges at 9999px, tooltips at 4px, dropdowns at 10px. Seven components, seven different values, zero system. This is the border radius problem and it compounds silently as products scale.

Why Border Radius Consistency Matters

Border radius is one of the primary visual signals that gives a UI its personality whether it feels sharp and businesslike, soft and friendly, or playfully rounded. When radius values scatter across arbitrary numbers, the UI sends contradictory signals to users. A card with 12px corners next to a button with 6px corners creates a subtle visual discord that users can't articulate but absolutely feel.

The maintenance burden is equally significant. When radius values aren't standardized, every new component becomes a judgment call. Should this tooltip be 4px or 6px? Different engineers answer differently on different days, and the inconsistency compounds. By the time a design system audit happens, the codebase might contain 15 distinct radius values for what should be 5–7 semantic tokens.

Visual coherence

A consistent radius scale creates a unified visual language. All your UI components feel like they belong to the same family because their geometric vocabulary is shared.

Design-to-code parity

When Figma components and coded components share the same radius tokens, designers and engineers stop arguing about 'close enough' and start trusting the system.

Rebrand efficiency

Changing a brand from sharp corners to soft requires updating one token not hunting through 50 components for hardcoded values scattered across a codebase.

Component predictability

When new engineers join the team, a documented radius scale tells them exactly which value to use in every context. No guessing, no inconsistency introduced by unfamiliarity.

How the Consistency Checker Works

The checker applies a three-step analysis to your radius values:

  • 1Base unit detection: The tool computes the greatest common divisor of your non-zero, non-full radius values to infer the base unit your codebase has been implicitly using. If your values are 4, 8, 12, and 16px, the detected base is 4px. You can override this with the manual control.
  • 2Scale generation: From the base unit, the tool generates a semantic radius scale: none (0), sm (0.5×), md (1×), lg (1.5×), xl (2×), 2xl (3×), 3xl (4×), and full (9999px). Each step maps to a named token so engineers reference tokens, not pixel values.
  • 3Value snapping and scoring: Each of your radius values snaps to the nearest step in the generated scale. The consistency score penalizes large deviations from scale steps and rewards reduction in unique value count. A score of 85+ is consistent. Below 35 requires significant standardization work.

Standard Radius Systems Used by Major Design Systems

Every mature design system makes an explicit decision about its radius language. Here's how the industry leaders approach it:

Tailwind CSS

Base: 4px

0, 2, 4, 6, 8, 12, 16, 24, 9999px

Linear multipliers of 2px increments. The most commonly adopted scale on the web. Works well for both sharp enterprise UIs and soft consumer products.

Material Design 3

Base: 4px

0, 4, 8, 12, 16, 28, 9999px

Semantic shape tokens (none, extra-small, small, medium, large, extra-large, full). The radius scale is part of a full shape system tied to component tokens.

Radix / shadcn

Base: CSS variable

--radius: 0.5rem base, sm/md/lg derived

Single --radius variable that scales all components proportionally. Changing one value updates the entire UI — ideal for theming and white-labeling.

Integrating a Custom Radius Scale in Tailwind CSS

Tailwind's default rounded utilities (rounded-sm through rounded-3xl) use a 4px base. You can extend or replace these in your config using the generated output from this tool. Add the config to theme.extend.borderRadius to merge with defaults, or theme.borderRadius to replace them entirely:

tailwind.config.js usage in components

{/* Use semantic token names instead of pixel values */}
<button className="rounded-md px-4 py-2">   {/* 8px on 4px base */}
<div className="rounded-lg p-6">            {/* 12px on 4px base */}
<input className="rounded-sm border" />     {/* 2px on 4px base */}
<span className="rounded-full px-2">       {/* 9999px — pill */}

{/* Override for dark/brand theme by changing base unit */}
{/* 4px base = crisp enterprise UI */}
{/* 8px base = friendly consumer UI */}
{/* 16px base = very soft/rounded style */}

Once you adopt a token-based radius system, the utility class names become semantic: rounded-sm means "subtle rounding," rounded-lg means "prominent rounding for cards," and rounded-full means "pill/circle." The actual pixel values can change per brand without updating a single component file.

In Tailwind v4, you define your radius scale using @theme in your CSS file, which creates CSS custom properties that Tailwind uses to generate utility classes. The CSS variables output from this tool is directly compatible with this approach.

Radius Conventions Every UI Engineer Should Know

Match radius to component size

Larger components typically use larger radii to maintain visual proportion. A full-screen modal with a 4px radius looks oddly sharp. A small tooltip with a 24px radius looks cartoonish. Scale radii with component scale: small components → small radius, large containers → larger radius.

Use 'full' sparingly and deliberately

Pill shapes (border-radius: 9999px) are a strong visual statement. Overusing them dilutes the effect. Reserve rounded-full for badges, tags, avatar circles, and toggle switches not for every interactive element in the UI.

Align radius to brand personality

Sharp corners (0–4px) read as authoritative, precise, and businesslike right for fintech, B2B SaaS, and developer tools. Softer corners (8–16px) read as friendly and approachable right for consumer apps, health tech, and education. Very round corners (20px+) signal playful or youthful brands.

Never mix radius philosophies

The most common mistake is using Tailwind's defaults (4px base) while Figma components use an 8px base. This creates a permanent drift between design and code. Choose one base unit, document it, and enforce it with a linting rule or this checker.

Frequently Asked Questions

What border radius values should I use for a standard design system?+

Most design systems settle on 5–7 semantic steps derived from a 4px or 8px base: none (0), sm (2–4px), md (4–8px), lg (6–12px), xl (8–16px), 2xl (12–24px), and full (9999px). The right scale depends on your base unit and brand personality. A 4px base is the industry standard — it aligns with both Tailwind's defaults and most major design systems including Material Design. Choose your base unit first, then derive all radius steps as multipliers of that unit.

How do I audit existing border radius values in a large codebase?+

Run a regex search across your CSS and component files: grep -r 'border-radius' --include='*.css' | grep -o '[0-9]*px' | sort | uniq -c | sort -rn. This lists every unique radius value and how many times each appears. Paste the results into this tool to analyze them. For Tailwind codebases, search for 'rounded-[' to find arbitrary values that bypass the token system. These arbitrary values are the primary source of radius inconsistency in Tailwind projects.

Should I use a 4px or 8px base unit for border radii?+

Use a 4px base for dense, information-heavy UIs where fine-grained control matters admin dashboards, data tables, and developer tools. Use an 8px base for consumer-facing products where softer, more spacious rounding matches the overall design language. The key constraint is that your radius base should match your spacing base. When radius and spacing share the same base unit, components naturally feel proportioned padding, margins, and corner rounding all speak the same mathematical language.

How do I enforce border radius consistency across a team?+

Configure your linting toolchain to prohibit arbitrary radius values. In Tailwind, enable the tailwindcss ESLint plugin and forbid the rounded-[*] arbitrary syntax. For CSS codebases, use stylelint with the declaration-property-value-allowed-list rule to restrict border-radius to only your approved token values. Document the approved scale in your design system's contribution guide. Run this checker as a periodic audit to catch drift introduced by new contributors who haven't internalized the system yet.

What is the difference between consistent and matching border radii?+

Consistent means all values come from the same scale — a mathematical system where each step relates to a common base. Matching means every component has the same value. These are very different things: a well-designed system uses consistent (scale-based) values, not matching (identical) values. A button should have a smaller radius than a modal, but both should draw from the same scale. Matching corner radii across components of different sizes actually creates visual inconsistency the corners look proportionally different even when the pixel values are the same.

Border radius inconsistency is one of the easiest design system problems to fix once you can see it. Audit your radius values above, apply the standardized scale, and eliminate one more source of visual noise from your UI. It takes five minutes and improves the coherence of every component on the page.

Free forever · No account · Tailwind & CSS output

You might also like

4 related tools