JPG to VTF Converter

To convert a JPG to VTF, drop the .jpg or .jpeg below, pick map texture, model texture or a spray preset, and download the .vtf. A JPG has no transparency, so the Auto format picks DXT1, the smallest VTF format. The tool resizes the photo to power-of-two sides, builds the mipmaps and can write the .vmt material file. Everything runs in your browser.

Free · no signup · your files stay in your browser

Loading the tool...

How to convert JPG to VTF

  1. 1

    Add your JPG

    Drop a .jpg or .jpeg on the box, or click it to choose one. PNG, WebP, GIF and BMP work too. The file is read on your device.

  2. 2

    Choose how it is used

    Pick map texture (LightmappedGeneric), model texture (VertexLitGeneric) or a spray preset. Width and height snap to powers of two such as 512 or 1024; pick stretch, fit or crop if the shape changes.

  3. 3

    Download VTF and VMT

    Save the .vtf, the .vmt, or a ZIP with both in the materials/ folder layout, then copy them into your game or addon folder.

VTF formats you can write

FormatSizeTypical useAlpha
DXT10.5 byte per pixelOpaque world and model textures (smallest file)No
DXT51 byte per pixelTextures and sprays with smooth transparencyYes
BGRA88884 bytes per pixelLossless sprays, HUD and pixel artYes
RGBA88884 bytes per pixelLossless, same as BGRA8888 with another channel orderYes
BGR8883 bytes per pixelLossless opaque texturesNo
I81 byte per pixelGreyscale masks and detail mapsNo

The VTF to PNG tab also opens DXT3, RGB565, IA88, A8, ABGR8888, ARGB8888, BGRX8888, BGRA4444, BGRA5551, UV88 and RGBA16161616F files.

More free texture tools

Frequently Asked Questions

Yes. .jpg and .jpeg are the same image format with two spellings, and the converter accepts both.
DXT1 compresses in 4x4 pixel blocks at 0.5 byte per pixel, so it can soften fine detail. If you need the photo exact, pick BGR888 (3 bytes per pixel, lossless) in the VTF format list. Detail the JPG already lost when it was saved cannot come back.
JPG files have no alpha channel, so a JPG spray is a solid rectangle. For a see-through spray, remove the background and save the image as a PNG, then use the Spray HD or Spray classic preset. With "fit", the tool only adds transparent padding at the edges when the shape changes.
Any size works: each side is resized to a power of two from 16 to 4096 pixels. For a sharp result, start from a photo at least as large as the size you pick, for example 1024x1024 for a wall texture. Width and height can differ, for example 1024x512.
LightmappedGeneric for brushes and map surfaces, VertexLitGeneric for models and props, and UnlitGeneric for sprays or anything that should ignore lighting. The presets set it for you, and you can change it under VMT shader.
No. Reading the image, resizing, DXT compression and writing or reading the VTF all happen in your browser, so your files stay on your device. It is free and needs no signup.

Valve, Source, Garry's Mod, Team Fortress 2 and Counter-Strike are trademarks of Valve Corporation, named only to describe file compatibility; The3DAI is not affiliated with or endorsed by Valve.