Skip to main content
CalcChef

SVG Blob Generator

Make an organic SVG blob: set complexity, contrast and smoothness, pick a color, gradient or image fill, then copy SVG, CSS or React, or save a PNG. How it works

Use the SVG Blob Generator

PNG, JPEG, WebP or GIF up to 300 KB, embedded in the SVG and clipped to the blob.

0 turns the stroke off.

SharpSmooth
Complexity (5)
Contrast (5)
Preview on
SVG Code
1<svg viewBox="0 0 200 200" xmlns="http://www.w3.org/2000/svg">
2  <path fill="#007bff" d="M 150.94537209421497,119.4489339639443 C 133.22850906443986,144.45070240199772 126.72904807595197,150.01951649067385 119.4489339639443,150.29801437566158 C 92.71988588799233,161.97665870842232 85.21564068581567,157.39805932192476 79.00385556390167,151.84522484781564 C 51.795926005889335,136.43945439808755 45.255412124983174,129.3162303381419 44.493938219935,120.99614443609835 C 30.218691407018504,91.67991409795644 34.05174251442006,81.38462371829596 40.26352763633406,74.77344498030074 C 55.75867508251545,42.93571122260625 65.49345120984455,38.243108177025086 74.77344498030072,38.044674213660656 C 109.27999377045614,26.344024503355406 120.6596070638307,30.33108456808527 126.32896592727943,36.942263306080484 C 158.3272907180076,53.95324688343635 159.06380981095043,65.4310120923003 157.82540405755012,73.67103407272057 C 161.75447050714106,108.24002198042027 156.6147309576637,113.89609948983518 150.94537209421497,119.4489339639443 Z" />
3</svg>

About the SVG Blob Generator

A blob is a closed outline through 3 + complexity points on a circle of radius 70 units, each moved in or out by a random amount spanning contrast × 6 units and joined with Bézier curves. The defaults (complexity 5, contrast 5, smoothness 60) give 8 points and a 942-character path, and the same settings and seed always draw the same blob.

Shapes and PNG sizes

ShapeviewBoxPNG at 256PNG at 512PNG at 1024PNG at 2048
Square200 × 200256 × 256512 × 5121024 × 10242048 × 2048
Wide 16:9356 × 200456 × 256911 × 5121823 × 10243645 × 2048
Tall 9:16200 × 356256 × 456512 × 9111024 × 18232048 × 3645
Avatar Circle200 × 200256 × 256512 × 5121024 × 10242048 × 2048

The number on a PNG button is the length of the 200-unit side; the other side scales with it and is rounded to a whole pixel. The Avatar Circle also clips the picture to a circle.

Complexity, points and curve segments

ComplexityPointsCurve segments in the path
255
588
101313
151818

Counted at smoothness 60 (cubic curves). The path has one curve segment per point.

How to use this tool

  1. Pick a shape (Square, Wide 16:9, Tall 9:16 or Avatar Circle), then set complexity (2 to 15), contrast (1 to 10) and smoothness (0 to 100).
  2. Press Randomize for the next seed. Complexity and contrast are re-rolled too unless you lock them.
  3. Choose a solid fill, a two-color gradient with an angle, or an image fill (PNG, JPEG, WebP or GIF up to 300 KB, embedded in the SVG), an optional stroke (width 0 to 20) and a plain, card or hero preview.
  4. Copy SVG, Copy CSS or Copy React, download the SVG, or save a PNG at 256, 512, 1024 or 2048. Save keeps a blob in the favorites strip, up to 8.

Frequently asked questions

How do I use a blob as a CSS clip-path?
Copy CSS gives width and height in pixels plus clip-path: path(…) for the shape you chose. A path() clip uses pixel coordinates from the top-left corner of the element and does not scale with it, so the clip is exact at 200 × 200 (356 × 200 for Wide, 200 × 356 for Tall). For another size, scale the element with a transform or use the SVG. On the Avatar Circle the CSS carries a comment: the circle clip is not included.
How big is the PNG export?
The button number is the length of the 200-unit side. A Square or Avatar Circle blob at 512 is 512 × 512, a Wide one is 911 × 512 and a Tall one is 512 × 911. The largest, 2048, gives 3645 × 2048 for Wide.
How do I keep a blob I like?
Press Save to add it to the favorites strip. A favorite keeps the settings and the seed, so loading it redraws the same blob, and the strip holds up to 8. Without Save, a reload returns to seed 0 with your last settings, and Randomize moves to seed 1, 2 and so on.
What do complexity, contrast and smoothness change?
Complexity (2 to 15) sets the number of points, 3 more than its value. Contrast (1 to 10) sets how far each point can drift from the circle. Smoothness (0 to 100) bends the joins: at 0 they are quadratic curves through the midpoints, above 0 they are cubic curves whose handles grow with the value.
Why are the copy and download buttons disabled?
A color that is not #rrggbb or #rgb draws no blob and shows its own message, for example “Enter the fill color as #rrggbb or #rgb to draw the blob.” The second color counts while the gradient is on, the stroke color while the width is above 0, and the stroke width must be from 0 to 20.
Can I use the blob as a React component?
Copy React gives const BlobSVG = () => ( … ); with the SVG written as JSX, so clip-path, stroke-width and stop-color become clipPath, strokeWidth and stopColor.

Related Tools

View all tools