An SVG blob generator for organic shapes
This SVG blob generator draws smooth, irregular shapes that work as backgrounds behind photos, decorative accents in hero sections or containers for icons. Each blob is a single closed <path> in a 400 × 400 viewBox, so it is small, scales to any size without blurring and can be edited in any vector editor.
How the shape is made
The tool places a number of points evenly around a circle with a radius of 160 units (40% of the canvas). Each point is pulled toward the center by a random amount, up to the Randomness percentage. The points are then joined with a closed Catmull-Rom curve, converted to cubic Bézier C commands, which gives the rounded, organic outline. Because the random numbers come from a seeded generator, the same seed always produces the same blob.
Example output
The default blob (seed 42, 6 points, 40% randomness) with Gradient fill switched on:
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 400 400" width="400" height="400">
<defs>
<linearGradient id="blob-gradient" x1="0" y1="0" x2="1" y2="1">
<stop offset="0%" stop-color="#0f766e"/>
<stop offset="100%" stop-color="#6366f1"/>
</linearGradient>
</defs>
<path fill="url(#blob-gradient)" d="M321.5,200C321.9,237.2 294.7,298.5 265.7,313.7C236.6,328.9 177.7,310.3 147.3,291.3C116.8,272.4 86.5,236.7 82.9,200C79.2,163.3 95.5,89.4 125.6,71.1C155.6,52.9 230.5,69.1 263.1,90.6C295.8,112.1 321.1,162.8 321.5,200Z"/>
</svg>
Options explained
- Seed – identifies the shape; Randomize picks a new one.
- Complexity – 3 to 16 points. Three or four give simple pebble shapes; twelve and above give wavy, cloud-like edges.
- Randomness – 0% gives a smooth, nearly circular shape; high values give deep dents.
- Gradient fill – a diagonal linear gradient from the main color to the gradient end color.
- Outline only – removes the fill and draws a 6-unit stroke in the main color. It takes priority over the gradient.
Tips
- Rename duplicate gradient IDs. If you paste several gradient blobs inline on one page, each uses
id="blob-gradient", and the browser applies the first one to all of them. Give each a unique ID. - Make it responsive. Remove the
widthandheightattributes, or setwidth: 100%; height: autoin CSS; the viewBox keeps the proportions. - Clip an image. Put the path in a
<clipPath>and apply it to an<image>to crop a photo into the blob. - Background use. The CSS background tab creates a URL-encoded data URI; SVG to Base64 produces a Base64 version if you prefer.
Preview or edit the file in the SVG viewer. For section edges rather than floating shapes, try the SVG wave generator.
Privacy
Blobs are generated locally in your browser; nothing is uploaded.