CSS Border Radius Generator

Free toolNo sign-up
uniform
PRESETS12
CORNER MODE
UNIT
RADIUS16px
Radius
px
PREVIEW ON
SHAPE
0.03 KBlive
200 × 200
3 lines · 0.03 KB
.shape {
  border-radius: 16px;
}

About this generator

Design CSS border-radius shapes visually — pick a preset or tune per-corner H/V radii independently for elliptical corners (the slash syntax: border-radius: H1 H2 H3 H4 / V1 V2 V3 V4). 12 curated presets cover sharp / slight / rounded / pill / circle for the standard cases, plus 3 blob shapes, leaf, diamond, ticket, and chat-bubble for organic shapes most generators don’t ship.

Switch between px and % units (% is relative to element dimensions — 50% always produces a circle). Preview on 4 surfaces (dark / light / brand / accent) on 3 element shapes (square / wide / tall) so you can see how the radius reads at different aspect ratios.

Permalink: every adjustment encodes into the URL. No login, no watermark, no paywall. Free and MIT-licensed.

?

How to use

01
Choose a corner mode
Use "All Corners" to round uniformly, or switch to "Individual" to control each corner's horizontal and vertical radius separately.
02
Drag the sliders
Adjust the radius value for each corner. Toggle between % and px units to suit your layout.
03
Switch shape & background
Preview the radius on a square, wide, or tall box. Change the stage background to check contrast.
04
Try a preset
Pick from Sharp, Pill, Circle, or organic Blob shapes — one click loads the full border-radius value.
05
Combine H & V radii
The slash syntax (e.g. 60% 40% / 30% 70%) lets you set independent horizontal and vertical radii for elliptical corners.
06
Copy the CSS
Hit "Copy CSS" to grab the single-line output and paste it straight into your stylesheet.
</>

CSS border-radius syntax

ValueDescription
top-leftRounds the top-left corner. First value in the shorthand.
top-rightRounds the top-right corner. Second value in the shorthand.
bottom-rightRounds the bottom-right corner. Third value in the shorthand.
bottom-leftRounds the bottom-left corner. Fourth value in the shorthand.
/ h vSlash separates horizontal from vertical radii for elliptical corners.
%Percentage is relative to the element's width (H) or height (V).
</>

border-radius snippets

Basic
border-radius: 16px;
Four
border-radius: 8px 16px 24px 0px;  /* TL TR BR BL */
Ellipse
border-radius: 60% 40% 30% 70% / 60% 30% 70% 40%;

Browser support

border-radius has universal browser support — safe to use anywhere without a fallback or prefix.

Chromev4+
Firefoxv4+
Safariv5+
Edgev12+
IEv9+
?

Frequently asked questions

01

What's the slash syntax (border-radius: 50% 30% / 20% 40%)?

The slash separates horizontal radii from vertical radii — letting each corner have an ELLIPTICAL curve instead of a circular one. Before the slash: the four horizontal radii (top-left, top-right, bottom-right, bottom-left). After the slash: the four vertical radii in the same order. When all 8 values are different, you get organic blob shapes like the leaf, chat bubble, and asymmetric blob presets in this generator. Most simple cases (sharp / rounded / pill) only need one number per corner, so the slash is auto-omitted from the output when H = V on every corner.

02

Why use px vs % for border-radius?

px gives a FIXED pixel radius — looks the same on every size element. Best for buttons, cards, inputs where you want consistent corner curvature. % gives a radius RELATIVE to the element's dimensions — 50% always produces a perfect ellipse (circle on square elements). Best for pills, circles, and shape-shifting components. Combining: use border-radius: 50% on a square = circle. border-radius: 999px on a wider element = pill (the radius caps at element-half). Both approaches are widely used.

03

Can I animate border-radius?

Yes — animating between two border-radius values produces smooth shape morphing. Both the start and end must have the same number of values (all-corners, four-corner shorthand, or full 8-value slash syntax). Common patterns: hover-morph from a square card to a rounded one, loading-state morph from a circle to a pill, blob breathing animation by stepping through several blob keyframes. transition: border-radius 300ms ease just works.

04

What about modern CSS corner-shape (squircle)?

CSS Working Group is shipping corner-shape as a new property (Chrome 132+ behind a flag as of late 2025; Safari likely 2026). It lets you specify the SHAPE of the corner curve — squircle (iOS-style superellipse), straight, scoop, etc. — independent of the radius. Until it ships universally, the closest CSS approximation is a high-precision border-radius slash with carefully tuned H/V ratios, which the blob presets in this generator approximate. For now, use the existing border-radius; layer corner-shape in once it's broadly supported.

05

Why is my radius being clipped at 50%?

Browsers cap the border-radius at half of the element's smaller dimension to prevent the corners from overlapping. On a 200px × 200px square, the maximum effective radius is 100px (50%). On a 400px × 100px pill, the maximum is 50px. Setting border-radius: 999px is the convergent trick to 'always clamp to maximum' — works for any aspect ratio and produces a pill / circle without computing the exact pixel value.

06

Is this free for commercial use?

Free, MIT-licensed, zero attribution required, no watermark, no signup. Use on any project — personal, client, enterprise — without permission.

See it used in real designs

Browse hand-coded collections that put this tool to work.

Search CodeFronts

Loading…