Skip to content
Server-sideDeleted in 30 minutes

Convert TGA to JPG

A TGA is uncompressed pixels with an alpha channel; a JPG is compressed pixels with none. This conversion is worth doing when a form, an upload or an old piece of software will take nothing else — and worth avoiding when the file is a texture or a render you will use again.

Use this without the search next time. Prathom Workbench puts Prathom's tools in your toolbar.

Add to Chrome — free
TGAJPG

Drop your TGA file here, or click to browse

Up to 50 MB. Deleted automatically after 30 minutes.

What it does

  • Encoded at quality 82, a number we publish
  • Transparency composited onto white, deliberately
  • Reads uncompressed and RLE Targa alike
  • Nothing to install

How to use TGA to JPG

  1. 1

    Add the TGA

    Drop it in. Both the uncompressed and run-length-encoded variants are read.

  2. 2

    Flattened, then encoded

    Transparent areas are composited onto white, then the image is encoded as JPEG at quality 82.

  3. 3

    Download the JPG

    Small, universally accepted, and permanently without an alpha channel.

How it works

The Targa file is decoded, transparent pixels are composited onto white and the alpha channel removed, and the image is encoded as JPEG at quality 82.

What this conversion costs

Both losses are worth naming, because a TGA is an unusually pristine starting point and there is more to give away than usual.

The alpha channel, entirely. JPEG has no way to represent it. If the TGA was 32-bit, the transparency that was its reason for existing is gone the moment it becomes a JPG, and no later conversion brings it back.

Exactness. A TGA is uncompressed or run-length encoded, which means every pixel is the pixel that was written. JPEG discards detail, permanently, and compounds it on every re-save. At quality 82 this is invisible on a photograph at normal size — and quite visible on a texture that a renderer will magnify, tile and filter.

Neither cost matters if the destination is a person looking at a picture once. Both matter if the file is an asset that will be used again.

When it is the right call

Three cases, and they are all about the destination rather than the image.

An upload form that lists JPEG and nothing useful. Job applications, marketplace listings, older content systems. This is the common one.

Email. A 64-megabyte texture does not attach. A JPG of it does, and the recipient is looking at it rather than rendering with it.

Software that predates PNG or never adopted it. Rarer now, but it exists, particularly in industrial and embedded tooling.

Everywhere else — anything you will open again, edit, render with, or upload somewhere that also accepts PNG — /tga-to-png is the better file and is usually smaller than the TGA anyway.

A note on file names in texture sets

Something that catches people converting a whole folder at once.

Texture sets follow naming conventions that carry meaning: _diffuse or _albedo for color, _normal for surface direction, _roughness, _metallic, _ao, _height. Only the first of those is an image in the sense of something a person looks at.

The rest are data wearing an image's clothes. A normal map's red, green and blue channels are the X, Y and Z of a surface vector; a roughness map is a single measurement stored as gray. JPEG compression assumes it is discarding detail the eye will not miss — an assumption that is simply false when nothing is being looked at. A slightly wrong normal produces visibly wrong lighting.

So: converting _diffuse.tga to JPG for a preview is reasonable. Converting the rest of the set is not, at any quality. If you need them smaller, /tga-to-png is lossless and still a fraction of the TGA's size.

Examples

A render for a client email

preview.tga
preview.jpg

The recipient opens it in anything. A hundred-megabyte TGA becomes a file that fits in a message.

An upload form that only takes JPEG

shot.tga
shot.jpg

This is the case the conversion exists for. If PNG is also on the list, /tga-to-png is the better answer.

Frequently asked questions

What happens to the transparency?

It becomes white. A 32-bit TGA carries an alpha channel and JPEG has nowhere to store one, so a converter must put something behind every see-through pixel. White is chosen here and stated plainly; tools that hand back a render on a black rectangle are not choosing black, they are not choosing at all. If the transparency matters, /tga-to-png keeps it.

Should I use PNG instead?

In most cases yes. A TGA is uncompressed or nearly so, meaning the pixels are exact, and PNG keeps them exact while still being far smaller than the TGA. JPEG discards detail permanently. The one thing JPEG gives you is broader acceptance in old software and upload forms, which is a real reason but the only one.

Why is my TGA so large in the first place?

Because it is barely compressed. Targa's only compression is run-length encoding, which collapses runs of identical pixels and achieves close to nothing on a photograph or a detailed texture — and many TGA files use no compression at all. A 4096 by 4096 32-bit texture is 64 megabytes on disk with no trickery involved. That is deliberate: the format is built to be read fast, not stored small.

Is this a good idea for game textures?

No. JPEG artifacts around edges become visible once a renderer samples, tiles and filters a texture, in a way they never are when a photograph is viewed at normal size — and a normal map or a mask is not an image the eye is judging at all, it is data. Keep textures lossless: /tga-to-png, or the TGA itself.

Does my file leave my computer?

Yes. The decoding runs on our server rather than in a browser tab. Your file and the result are both deleted within 30 minutes by a timer, and nothing is stored, indexed or kept against an account.