New: 12 free tools for Unreal Engine and Unity developers.Try them →

Sprite Sheet Packer

Pack hundreds of sprites into atlases with trimming, padding and extrusion. Exports JSON for Paper2D and more.

  • ✓ Free, no sign-up
  • ✓ Works for Unreal Engine & Unity
  • ✓ Files processed securely, never stored

Sprites

    Stops texture bleeding when sprites are scaled or mipmapped.

    Atlas

    Your packed atlas will appear here.

    Processed on our server. Files are never stored.

    Why use a sprite atlas?

    Drawing many sprites from one texture lets the engine batch them into fewer draw calls, which is one of the easiest performance wins in 2D and UI-heavy games. Atlases also load faster than hundreds of small files and keep your project tidy.

    How to use the packer

    1. Select all your sprites at once (up to 500 PNGs). File names become sprite names, so name them well, for example hero_run_01.png.
    2. Choose a max atlas size. 2048 works on every platform; 4096 is fine for PC and consoles.
    3. Set padding and extrusion (see below), then press Pack.
    4. Check the preview with frame outlines, then download the ZIP.

    Settings explained

    • Trim transparent borders: removes empty space around each sprite to fit more in the atlas. The original size and offset are saved in the JSON, so sprites still line up in animations.
    • Padding: empty pixels between sprites. 2 px is a safe default.
    • Extrude edges: repeats each sprite's edge pixels outwards. This stops thin lines of neighbouring colours appearing when sprites are scaled, filtered or mipmapped.
    • Power-of-two size: keeps the atlas at 256, 512, 1024… which compresses best and supports mipmaps everywhere.
    • Force square: only needed by some older platforms and pipelines.

    What you get

    • atlas.png: the packed texture (more atlases are created if needed).
    • atlas.json: frame data in the widely supported TexturePacker JSON (Hash) format: position, size, trim offsets and original size of every sprite.
    • atlas.paper2dsprites: the same data with the file extension Unreal's Paper2D importer expects.

    Engine tips

    • Unreal (Paper2D): drag in atlas.paper2dsprites to create the sprites and a flipbook. For pixel art, use nearest filtering and no compression on the texture.
    • Unity: Sprite Mode Multiple, then Slice → Automatic in the Sprite Editor. For pixel art set Filter Mode to Point and Compression to None.
    • Also works with Phaser, PixiJS, Cocos and other tools that read TexturePacker JSON.

    FAQ

    How do I import the atlas into Unreal Engine (Paper2D)?

    Enable the Paper2D plugin, keep atlas.png next to atlas.paper2dsprites and drag the .paper2dsprites file into the Content Browser. Unreal creates the texture, a sprite for every frame and a flipbook. A log warning about the format version can be ignored.

    How do I use the atlas in Unity?

    Import the PNG, set Texture Type to "Sprite (2D and UI)" and Sprite Mode to "Multiple", then open the Sprite Editor and choose Slice > Automatic. Keep padding at 2 px or more so every sprite is detected. The JSON keeps the exact coordinates and names if you use your own importer.

    What do trimming, padding and extrusion do?

    Trimming removes empty transparent borders to save space (original sizes and offsets are kept in the JSON). Padding adds space between sprites. Extrusion repeats edge pixels outwards to stop colour bleeding when textures are filtered or mipmapped.

    Is there a limit?

    Up to 500 sprites per upload and atlases up to 8192 x 8192. If sprites do not fit in one atlas, extra atlases are created automatically.

    More free tools