Skip to main content

Free CSS Clip Path Generator: Polygon, Inset, Circle & Ellipse

Build any non-rectangular shape with CSS `clip-path` — triangles, hexagons, stars, arrows, chevrons, circles, and ellipses. Editable vertex coordinates, live preview, ten curated presets, Tailwind v4 export. 100% client-side.

Vertices (3)

1
2
3

Presets

Four Shape Modes

Polygon (arbitrary N vertices), inset (rectangle with optional radius), circle (centred or off-centre), and ellipse — every clip-path basic-shape function with full browser support.

Vertex-Level Editing

Edit any vertex by typing exact percentage coordinates. Add or remove vertices to build custom shapes. Reorder with arrows to control the polygon's winding direction.

Multi-Format Output

Copy the CSS value, full declaration (with optional `-webkit-` prefix for old Safari), Tailwind v4 arbitrary-property value, or SCSS variable. Tailwind output is escape-safe.

100% Client-Side

Custom brand shapes, illustration accents, hero callout containers — all stay in your browser. No upload, no save, no analytics tied to your design tokens.

The CSS Clip Path Generator for Real Non-Rectangular Layouts

Non-rectangular shapes used to require either an SVG, a background image, or a stack of pseudo-elements with awkward transforms. Modern CSS `clip-path` replaces all three with a single declaration — and unlike the workarounds, the resulting shape is the element. Click events fire only on the visible region, the content inside flows naturally, and animation just works (within the rules). Our Free Online CSS Clip Path Generator builds every basic-shape function with universal browser support: polygon for arbitrary N-vertex shapes, inset for clipped rectangles, circle, and ellipse.

Use this generator with our Border Radius Generator (for the rounded-rectangle case where clip-path is overkill), the CSS Gradient Generator (to fill the clipped shape), the CSS Box Shadow Generator (note: shadows don't apply to clipped regions — use `filter: drop-shadow()` instead), and the Color Palette Generator for the fill colour.

The Four CSS Basic-Shape Functions

FunctionSyntaxBest For
polygon()polygon(0 0, 100% 0, 50% 100%)Triangles, hexagons, stars, arrows, custom shapes
inset()inset(10% 10% 10% 10% round 8%)Rectangles with margins, ticket cutouts, framed images
circle()circle(50% at 50% 50%)Avatars, profile photos, decorative dots, focus indicators
ellipse()ellipse(50% 30% at 50% 50%)Oval avatars, banner mask shapes, organic-feeling crops

Where Each Shape Earns Its Keep in Production UI

Hexagonal Avatars

Team-page photos in a hex grid feel modern without resorting to SVG masks. Common on gaming, esports, and creative agency sites.

Chevron Section Dividers

Wide hero with chevron bottom edge that bleeds into the next section. Clip-path is dramatically cheaper than an SVG path.

Arrow CTA Buttons

Polygon arrows make "Next" / "Get Started" buttons feel directional. Pair with hover animation that translates left.

Parallelogram Banners

Skewed promotion banners with crisp diagonals. Cheaper and more flexible than CSS `transform: skew()` which distorts text inside.

Blob Hero Backgrounds

Soft, organic shapes behind hero text. Animate between two equal-vertex polygons for a slowly morphing blob.

Ticket Stub Cards

Inset clipping with negative-margin pseudo-elements gives that punched-edge ticket look for event tickets, vouchers, and receipts.

Four Clip-Path Pitfalls (and How to Avoid Them)

1. Box-Shadow Disappears

Shadows are clipped along with the element. Use filter: drop-shadow() on the parent instead — it shadows the visible shape, not the box.

2. Hit Area Too Small

A 24×24 star-shaped icon button has a hit area of maybe 12×12 — fails WCAG 2.5.5. Pad the parent or add a transparent rectangular overlay for clicks.

3. Animation Snaps Instead of Morphing

Source and target must have the same shape function AND the same vertex count. Add a vertex to one shape to match the other before transitioning.

4. Overflow Hides Children

Tooltips, dropdowns, and other overflow children get clipped along with the parent. Move them out of the clipped element entirely.

Free CSS Clip Path Generator: Polygon, Inset, Circle & Ellipse | Toolk