🟤 Sepia Photo Filter
By ToolNimba Editorial Team · Updated 2026-06-19
PNG, JPEG, WebP, GIF or BMP. Files stay on your device, nothing is uploaded.
0% keeps the original colours, 100% is the full sepia tone. Values in between blend the two for a softer vintage look.
Original
Sepia result
Choose an image to begin. All processing happens locally in your browser.
This sepia image converter turns any photo into a warm, vintage sepia version right in your browser. Upload a picture, drag the intensity slider to set how strong the effect is, and watch the original and the sepia result sit side by side. When you are happy, download it as a PNG, JPEG or WebP. Nothing is uploaded to a server, the whole conversion happens on your own device.
What is the Sepia Image Converter?
Sepia is the soft reddish-brown tone you see in old photographs. The name comes from a pigment made from the ink of the cuttlefish (genus Sepia), which Victorian photographers used to tone prints. Beyond looking attractive, the chemical process made prints more stable and longer lasting, which is why so many surviving 19th and early 20th century photos have that familiar warm cast. Today sepia is purely an aesthetic choice, used to suggest age, nostalgia and a gentle, timeless mood.
Digitally, the classic sepia look is produced with a fixed color matrix. Each output pixel mixes the original red, green and blue channels using set weights: newR = 0.393R + 0.769G + 0.189B, newG = 0.349R + 0.686G + 0.168B, and newB = 0.272R + 0.534G + 0.131B. Notice that red and green carry the heaviest weights while blue is pulled down, which is exactly what tilts the image toward warm brown. Because the weighted sums can climb above 255, each result is clamped to the valid 0 to 255 range so the brightest areas do not overflow.
This tool reads the raw pixels from a canvas with getImageData, applies that matrix to every pixel, and writes the result back with putImageData. An intensity slider then blends between the original color and the full sepia value: at 100% you get the textbook sepia tone, at 0% the photo is unchanged, and values in between give a subtler warm wash. That blend lets you tune the strength of the effect rather than being stuck with one fixed look.
When to use it
- Giving modern photos a nostalgic, antique feel for scrapbooks, invitations or memorial pages.
- Creating a warm, cohesive look across a set of images for a blog, portfolio or social post.
- Mocking up how a picture would read as a vintage print before committing to a heavier edit.
- Toning down a busy, colorful photo so overlaid text or a logo stands out more clearly.
How to use the Sepia Image Converter
- Click Choose an image and select a PNG, JPEG, WebP, GIF or BMP file from your device.
- Drag the sepia intensity slider to set how strong the effect should be (100% is the full tone).
- Pick an output format, and for JPEG or WebP set the quality if you want a smaller file.
- Compare the original and the sepia preview, then click Download image to save the result.
Formula & method
Worked examples
A pure white pixel (R=255, G=255, B=255) at 100% intensity.
- newR = 0.393 x 255 + 0.769 x 255 + 0.189 x 255 = 344.5, clamped to 255
- newG = 0.349 x 255 + 0.686 x 255 + 0.168 x 255 = 306.8, clamped to 255
- newB = 0.272 x 255 + 0.534 x 255 + 0.131 x 255 = 238.9, rounds to 239
- Because two channels overflow, clamping keeps them at 255 while blue dips slightly.
Result: White becomes (255, 255, 239), a faintly warm off-white.
A mid-gray pixel (R=128, G=128, B=128) at 100% intensity.
- newR = 0.393 x 128 + 0.769 x 128 + 0.189 x 128 = 172.9, rounds to 173
- newG = 0.349 x 128 + 0.686 x 128 + 0.168 x 128 = 154.0, rounds to 154
- newB = 0.272 x 128 + 0.534 x 128 + 0.131 x 128 = 119.9, rounds to 120
- Red is lifted, blue is lowered, which is what creates the brown tone.
Result: Neutral gray becomes (173, 154, 120), a warm tan.
How the sepia matrix maps sample colors at 100% intensity (clamped to 0 to 255)
| Input R,G,B | Output R,G,B | Effect |
|---|---|---|
| 255, 255, 255 (white) | 255, 255, 239 | Slightly warm off-white |
| 128, 128, 128 (gray) | 173, 154, 120 | Warm tan |
| 0, 0, 0 (black) | 0, 0, 0 | Stays black |
| 255, 0, 0 (red) | 100, 89, 69 | Muted brown |
| 0, 255, 0 (green) | 196, 175, 136 | Light gold (green carries most weight) |
| 0, 0, 255 (blue) | 48, 43, 33 | Dark brown (blue is pulled down) |
What the intensity slider does
| Intensity | Result |
|---|---|
| 0% | Original colors, no change |
| 25% | Subtle warm tint, most original color kept |
| 50% | Half-way blend, gentle vintage wash |
| 100% | Full classic sepia tone |
Common mistakes to avoid
- Expecting black and white instead of brown. Sepia is not grayscale. It keeps a single warm brown hue rather than removing all color. If you want a neutral black and white image, use a grayscale converter instead.
- Saving a photo as PNG and getting a large file. PNG is lossless and best for graphics or transparency. For a sepia-toned photo, JPEG or WebP at around 80 to 90% quality usually gives a much smaller file with no visible loss.
- Leaving intensity at 100% for every image. A full sepia tone can flatten detail in already warm or low-contrast photos. Dropping the slider to 40 to 70% often gives a more natural vintage feel while keeping some original color.
- Tinting a transparent image to JPEG and getting black edges. JPEG has no transparency. This tool paints transparent areas white before applying sepia, so export as PNG or WebP if you need to keep a transparent background.
Glossary
- Sepia
- A warm reddish-brown tone, originally from a cuttlefish pigment, used to give photographs an aged, nostalgic look.
- Color matrix
- A set of weights that combine the red, green and blue of each pixel into new channel values, here producing the sepia tone.
- Clamping
- Forcing a calculated value back into the valid 0 to 255 range, so channels never overflow or go negative.
- Intensity
- How strongly the effect is applied. It blends between the original color (0%) and the full sepia value (100%).
- Channel
- One of the three color components of a pixel: red, green or blue, each stored as a value from 0 to 255.
Frequently asked questions
What is a sepia filter?
A sepia filter recolors a photo with a warm reddish-brown tone to mimic old, aged prints. It does this by mixing each pixel's red, green and blue channels with fixed weights that favor warm tones, giving the image a nostalgic, vintage feel.
How does this sepia image converter work?
It loads your image onto a canvas, reads every pixel with getImageData, and applies the classic sepia matrix (newR = 0.393R + 0.769G + 0.189B, and similar for green and blue) with the results clamped to 0 to 255. An intensity slider blends the sepia value with the original color.
Are my photos uploaded to a server?
No. The entire conversion runs in your browser using the canvas API. Your image never leaves your device, which keeps it private and means the tool works even offline once the page has loaded.
What is the difference between sepia and grayscale?
Grayscale removes all color and leaves only shades of gray. Sepia keeps a single warm brown hue, so the image still has a colored tone. Both reduce the original palette, but sepia looks warmer and more antique.
Which output format should I choose?
Use JPEG or WebP for photos, since they compress well and give small files at 80 to 90% quality. Use PNG if you need lossless output or a transparent background, though the file will be larger.
Can I make the sepia effect weaker?
Yes. Lower the intensity slider below 100%. At 0% the image is unchanged, and values in between blend the sepia tone with the original colors for a subtler, more natural vintage look.