Make a D&D token from any portrait, right in your browser

Upload a character image, crop it into a circle, choose one of eight borders, and download a transparent PNG ready for Roll20, Foundry VTT or Owlbear Rodeo.

Free · No signup · Everything stays in your browser

Upload a character portrait
Click here, drag a file onto this box, or paste an image with Ctrl+V

Border
Export size · transparent PNG

Preview at table size
1 inch
2 inch
Zoomed
Your token will appear here — this is what the tool makes. Upload a portrait, then try one of the eight borders above.

How to make a VTT token

A virtual tabletop token is a portrait cut into a circle with a ring around the outside, and that is exactly what this tool builds. You start with any image of a character — a photo of a painted mini, a piece of digital art, or an AI-generated portrait — and you finish with a square PNG in which the artwork is cropped to a circle and bordered, ready to drop onto a map.

The steps take about half a minute. Upload the image by clicking the drop zone, dragging a file onto it, or pasting from your clipboard with Ctrl+V (Cmd+V on a Mac). Drag inside the circular preview to move the framing, and use the zoom slider to pull the face in or out until the composition sits right. Then pick one of the eight borders along the bottom of the workbench, choose an export size, and press download.

Framing is the part worth taking a moment over. The circle crops away the corners of your image, so a portrait where the head sits low or off to one side will lose part of the face if you leave it centred. Pan the image until the eyes sit a little above the middle of the circle and the shoulders fill the lower third — that is the framing that reads clearly at the small size a token is usually displayed.

When you are happy, export at 512 pixels for most tables or 1024 for important characters, and the file downloads as a transparent PNG named for its size. Drag it straight onto a Roll20 or Foundry map, or into a character sheet’s token field, and it is ready to play.

Borders and the transparent background

The eight borders are drawn by the tool as vector shapes rather than loaded as image files, which is what keeps the whole page a single self-contained HTML file with no external requests and no copyright-encumbered assets. Each one is a different rim treatment: a plain gold ring, a doubled ring, a ring studded with rivets, a dashed rune band, a scale pattern, a toothed gear, a vine-studded wreath, and a starburst. They are drawn at export time at the full output resolution, so a border on a 1024 pixel token is crisp rather than upscaled.

Because the crop is circular and the border sits inside the square, the corners of the exported PNG are left untouched and therefore fully transparent. That single design choice is what makes the token usable on any map: drop it on grass, stone or parchment and only the circle shows. It also means the file does not need a background colour option — there is simply nothing to set.

Which export size to choose

SizePixelsBest for
Small512 pxStanding monsters, hirelings and the general run of NPCs
Medium1024 pxPlayer characters and bosses you want to stay sharp when players zoom in
Large2048 pxPrintable handouts and battle-map close-ups
The corners are why it is a PNG. The crop is circular, so the area outside the circle is left untouched and exported fully transparent. Drop the token on grass, stone or parchment and only the circle shows — no white box, no black box. A JPG could not do this, which is why the tool only ever writes PNG.

Three things worth getting right

Exporting a JPG by mistake

Exporting a JPG instead of a PNG is the mistake with the most visible consequences. JPEG has no transparency, so the area outside the circle comes back as a solid rectangle — usually white or black — and the token looks like a sticker with a box behind it on the map. This tool only ever writes PNG, which is why there is no format dropdown to get wrong.

Framing the face too tightly

Framing too tightly is the second common slip. It is tempting to zoom in until the face fills the circle, but a token is usually displayed small, and a face pressed against the rim reads as cramped and loses the head shape to the border. Leave a little breathing room between the head and the ring — the border is there to frame the portrait, not to crop it.

Using art you do not have the right to

Using an image you do not have the right to is the mistake with consequences beyond the game. A token looks private, but battle maps get shared, streams get recorded, and screenshots travel. Use a portrait you commissioned, generated for your own character, or otherwise have permission to use, and keep the art you found in a gallery for your own reference instead.

D&D token questions, answered

What is a D&D token, and what does this tool make?

A token is the circular image that represents a character, monster or NPC on a virtual tabletop such as Roll20, Foundry VTT or Owlbear Rodeo. This tool turns an ordinary portrait — a photo, a painted illustration or an AI-generated character image — into a finished token: a square PNG with the artwork cropped into a circle and one of eight decorative borders around the rim. Everything happens in your browser; you upload nothing and there is no account.

What size should a token image be?

Export at 512 pixels for most games and at 1024 when your scene zoom level is high or you want headroom for scaling. Roll20 places a token over one grid cell, and by default a cell is 70 pixels, so a 512 or 1024 pixel square simply displays more sharply when a player zooms in — it is not a problem to be ’too big’, only to be too small. Foundry VTT shows tokens at whatever resolution you supply, so 512 is a comfortable default and 1024 is worth it for important characters. The 2048 option is there for printable handouts and battle-map close-ups rather than the tabletop grid.

Will the exported PNG have a transparent background?

Yes. Everything outside the circle is fully transparent, so the token sits cleanly on any map without a white or black box around it. That is the whole point of exporting as PNG rather than JPG — JPEG cannot store transparency and would leave you with a rectangle. The tool never paints a background colour; the only pixels it writes are your portrait inside the circle and the border ring itself.

Do I need an account, or does it upload my image somewhere?

Neither. There is no sign-up, no login and no server upload. The portrait you choose is read straight into your browser with the FileReader API and drawn on an HTML canvas on your own device; it never leaves your computer, and closing the page discards it. The one request the page makes is a single invisible pixel so we can count how many people opened the tool.

What image should I use for the portrait?

Any square-ish image works best, because the tool crops to a circle and you can pan and zoom to frame the face. Photos of miniatures, digital paintings and AI-generated character art all work well. Make sure you have the right to use the image: a portrait commissioned for your character or generated for your own use is fine, but pulling art from an artist’s gallery or a Pinterest board without permission is not. The border you pick is drawn by the tool itself and carries no licence restriction.

Which virtual tabletops is the finished token compatible with?

Any of them. The output is a standard transparent PNG, which Roll20, Foundry VTT, Owlbear Rodeo, Fantasy Grounds, MapTool and Foundry’s many systems all accept directly as a token image. There is no proprietary format and no import step beyond dragging the file onto the map or into the character sheet. If a platform lets you set a token image at all, it will take this file.