Aseprite Tilemap Guide: Grid Size Limits, Tileset Modes, and How to Actually Use It
Why You Can’t Resize the Grid After Creating a Tilemap Layer
Aseprite’s tilemap system landed in v1.3, and the grid-resize issue is one of the first walls people hit. Try to change your tile grid dimensions on an existing tilemap layer and nothing happens. No error, no warning — the change just doesn’t apply.
Here’s the reason: once a tileset is created with a specific tile size (say, 16×16 pixels), every cell in the tilemap layer stores an integer index pointing to a tile of exactly that size. If the tile dimensions changed mid-project, every index in the canvas would point to the wrong image or fail to resolve entirely. Aseprite locks the dimensions to protect the data. The tradeoff is a silent failure that leaves users convinced they did something wrong.
This is a documented limitation, flagged in the project’s GitHub tracker. Aseprite simply refuses the resize when a tilemap layer is active — no feedback, no prompt. The practical fix is straightforward: decide on your tile size before creating the layer. Once you commit, you’re committed.
How the Tilemap Architecture Actually Works
A tilemap layer is not a pixel layer. When you draw on it, you’re placing tile references, not pixels directly. Three components form the system:
- Tile — a small rectangular image of a fixed pixel size.
- Tileset — a collection of those images, all identical in dimensions.
- Tilemap Layer — a grid where each cell stores a numeric index into the tileset. Index 0 is always the transparent, empty tile.
That index-based structure is what makes tilemaps memory-efficient and easy to export to game engines. It’s also exactly what makes them inflexible once they’re initialized.
The Three Tileset Modes
Most guides skip past this. Aseprite has three modes that control how tiles get created as you draw, and picking the wrong one leads to a messy tileset fast.
Manual Mode
You control everything. Drawing on the canvas edits existing tiles without spawning new ones. This is the right choice when you want a tidy, intentional tileset — no duplicates, no throwaway tiles accumulating in the panel.
Auto Mode
This is the default. When you draw, Aseprite checks whether the result is a unique tile pattern. If it is, a new tile gets created automatically. If the same pattern already exists, it reuses it. Unused tiles are pruned. Auto mode feels most like painting freely, but it can generate clusters of near-duplicate tiles if you work loosely or make small corrections.
Stack Mode
Every time you edit an existing tile, a new tile is created rather than overwriting the old one. The original stays intact; the modified version is appended to the tileset. Useful for building variant sets — but the tileset grows fast and needs periodic manual cleanup.
Switching modes mid-project is possible. Going from Auto to Manual, for example, hands full tile management back to you immediately. It’s worth choosing deliberately at the start rather than mid-way through.
Working Around the Grid Size Problem
There’s no built-in migration path between tile sizes. If you created a layer with the wrong grid dimensions, the realistic options are:
- Create a new tilemap layer with the correct tile size and repaint what you need. Tedious, but clean.
- Export your tileset as a flat image, scale it in an external editor, and reimport — this works if every tile is being scaled by the same factor.
- Accept the current size and keep going. Sometimes the so-called wrong tile size still reads fine at the game’s actual render resolution.
The most reliable habit is to open a small throwaway file first and confirm the tile dimensions work for your project before touching the real one.
Aseprite’s Tilemap vs Tiled Map Editor
Tiled is a dedicated level editor. It supports orthogonal, isometric, and hexagonal map orientations, exports to JSON, Lua, GameMaker, Defold, and more, and has scripting for automation. If map layout and level construction are the main job, Tiled is purpose-built for exactly that.
Aseprite’s tilemap lives inside a pixel art and animation tool. The advantage is workflow continuity: draw a tile, see it placed in context, animate it — without switching applications. For smaller scopes, a few screens or a simple overworld, that’s genuinely useful.
A split many developers land on: build and animate tiles in Aseprite, export the tileset as a spritesheet, pull it into Tiled for level design. Each tool handles what it’s actually built for.
Artists recommending Tiled aren’t saying Aseprite is bad. They’re saying Tiled is specialized, and that specialization matters more as projects grow.
Sources
- blog.aseprite.org
- github.com
- github.com
- en.wikipedia.org
- mapeditor.org
- doc.mapeditor.org
- gamefromscratch.com
