Noise & Grain Generator
Generate custom SVG noise textures to add depth, texture, and a "film grain" look to your backgrounds.
5%
0.65
3
Content Overlay
This demonstrates how the noise texture sits behind your content, adding depth without reducing readability.
.bg-noise {
background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20viewBox%3D'0%200%20200%20200'%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%3E%3Cfilter%20id%3D'noiseFilter'%3E%3CfeTurbulence%20%0A%20%20%20%20%20%20type%3D'turbulence'%20%0A%20%20%20%20%20%20baseFrequency%3D'0.65'%20%0A%20%20%20%20%20%20numOctaves%3D'3'%20%0A%20%20%20%20%20%20stitchTiles%3D'stitch'%20%0A%20%20%20%20%2F%3E%3C%2Ffilter%3E%3Crect%20width%3D'100%25'%20height%3D'100%25'%20filter%3D'url(%23noiseFilter)'%20opacity%3D'0.05'%20%2F%3E%3C%2Fsvg%3E");
}Includes an optimized SVG data URI. Supports all modern browsers.
Why use Noise?
Adding subtle noise can reduce color banding in gradients and give flat designs a more tangible, premium feel. This tool generates a pure CSS background-image using an SVG data URI, meaning:
- No external requests: It's embedded directly in your CSS.
- Infinite scalability: It's SVG-based, so it looks crisp at any resolution.
- Performance: Lightweight compared to raster images.
Features
- Turbulence vs Fractal Noise: Choose between rougher or smoother organic textures.
- Base Frequency: Controls the "zoom" or grain size of the noise.
- Octaves: Controls the detail level (complexity).
- Opacity: Fine-tune the blend strength.
Usage
Simply copy the generated CSS class and apply it to any element. You can stack it with gradients or colors using comma-separated backgrounds:
.my-element { background-color: #000; /* Paste the generated noise code here, combined with your background */ background-image: url('data:image/svg+xml...'), linear-gradient(to bottom, #333, #000);}