How to use the SVG wave generator
- Start from a preset or press New random wave until you like the shape.
- Shape it. More points make a busier wave; more height variation makes it more dramatic. Switch between smooth, peaks and steps.
- Add layers (up to four) and decide whether back layers fade.
- Color it with a solid color or a two-color gradient, and set the background behind it.
- Place it at the bottom or top, flip it, and set the height.
- Export the SVG file, inline HTML, a CSS background or a React component.
How smooth curves are drawn
Smooth waves use a Catmull-Rom spline converted to cubic Bézier curves. Each curve segment’s control points come from the neighbouring points, so the line passes exactly through every point with no sharp corners. The path then closes along the bottom of the 1440 × 320 box, and preserveAspectRatio="none" lets it stretch to any width.
Worked examples
Example 1: a hero section that flows into content
Load Layered ocean, keep it at the bottom and set its height to 200px. Put it as the last element of your hero, with the hero’s background color behind it and the wave color matching the next section. The three fading layers make the transition feel soft.
Example 2: a skyline for a city guide
Load Skyline: stepped outlines with lots of points look like buildings. Set the color to near-black and place it above your footer for a striking silhouette.
Example 3: a gradient footer edge
Load Gradient fire and choose Top so the wave hangs into your footer. Gradients look best with fewer points, so try 5–7 for broad, glowing shapes.
Tips
- Keep the wave’s height moderate on mobile. It stretches horizontally but keeps its pixel height.
- Use the CSS export when you can’t change the HTML, for example in a CMS theme.
- Save shapes you like as favourites: the seed is stored, so you get exactly the same wave later.
- Waves are decorative, so the inline SVG is hidden from screen readers.