What this makes
Random images. Real ones, drawn fresh on a canvas every time you hit Regenerate. Not a grey placeholder box with “800 x 450” stamped across it. You pick a width, a height, and a style, and the tool paints something colorful you can save as a PNG.
There are four styles, and each one behaves differently:
- Solid color picks a single random hue and floods the whole frame. Clean, flat, useful when you just want a believable block of color.
- Gradient blends two random colors across a random angle. Most reshuffles land somewhere between “soft sunset” and “loud neon,” and that variety is kind of the point.
- Noise writes a random value into every single pixel, then tints the whole thing toward a base color. The result is static, like an old TV channel with no signal.
- Geometric scatters triangles, circles, and bars over a pale background. Each shape gets a semi-transparent color near the base hue, so they overlap into something that almost looks designed.
How to use it
Set the size first. Type a width and height in pixels, or tap one of the presets (512 square, 800 x 450, the 1200 x 630 social card size, or full 1080p). Anything from 1 up to 4096 px per side works.
Then click a style and watch the preview. Don’t like what came out? Hit Regenerate. The colors, angles, and shapes are all randomized again, so the same style gives you a brand new image each press. When something looks good, click Download PNG and it lands in your downloads folder at the exact pixel size you chose, not the scaled-down preview.
That preview, by the way, is just a shrunk view. A 1920 x 1080 image still exports at full resolution even though the box on screen caps the display height.
Where people actually use these
Design mockups are the obvious one. Drop a random gradient behind a card to see how white text reads against a busy background, without hunting for a stock photo first.
Testing is another. Need a few dozen distinct images to seed a gallery, a CDN, or an upload form? Generate them at the same size, reshuffle between each, and you’ve got unique files in seconds. Each PNG is genuinely different, so deduplication and caching logic gets a real workout.
Then there’s the plain fun of it. Noise textures make decent backgrounds, and geometric output works as passable abstract wallpaper.
Good to know
Everything happens on your device. The canvas draws locally, the PNG encodes locally, and nothing gets uploaded anywhere. Close the tab and the image is gone unless you saved it.
A couple of small things worth knowing. Noise at large sizes touches millions of pixels, so a 4096 x 4096 noise render takes a beat longer than a solid fill does. And because the randomness comes from Math.random, results aren’t seedable. You can’t type a number and reproduce yesterday’s exact image. If you find one you love, download it right then.
PNG keeps the colors lossless, which matters most for the sharp edges in geometric and noise output. Saving those as JPEG would smear the fine detail.
Common questions
Are the images truly random? Pretty much. Hue, gradient angle, shape count, and pixel values all come from the browser’s random number generator. It’s not cryptographic randomness, but for art and test data it’s plenty varied.
Can I get the same image back later? Nope. There’s no seed, so each render is one of a kind. Download anything you want to keep before you reshuffle.
Why is my downloaded file bigger than the preview? The preview is scaled to fit the screen. Your PNG saves at the full width and height you set, so a 1920 x 1080 file is large on purpose.
Does this send my images to a server? No. The whole thing runs in your browser using a canvas element. No upload, no account, no network round trip.
What’s the largest size I can make? 4096 by 4096 pixels per side. Past that, browsers can choke on canvas memory, so the inputs cap there.