Get 100 bonus credits with your first plan
Games
Pricing
←All posts

Assets·November 3, 2026·13 min read

Free Sprite Sheets: Where to Get Them and Use Them in Godot

Where to get free sprite sheets legally (Kenney, OpenGameArt, itch.io, CraftPix), what each license allows, and how to animate a sheet in Godot 4 step by step.

The safest place to get free sprite sheets is Kenney, whose assets are CC0 and need no credit, followed by CC0 packs on itch.io and OpenGameArt. CraftPix also has a free section with its own commercial license. Sheets ripped from commercial games aren't free, even when a site lets you download them at no cost.

We make Oryn, an AI game maker that builds Godot projects, so weigh that. We didn't test these packs in a shipped game. License terms come from each source's own pages as of November 3, 2026, and the itch.io terms from search-engine copies of its pages, because itch.io blocked our direct fetches. The Godot steps follow the Godot 4 docs.

The short answer

  • No conditions: Kenney (CC0), plus CC0 packs such as Pixel Adventure and Ninja Adventure on itch.io.
  • Largest variety: OpenGameArt and itch.io. Licenses vary by upload, so check each one.
  • Commercial use without credit: CraftPix's free section, with no redistribution of files and no AI training.
  • Not free: rips from commercial games. The Spriters Resource itself says they can't go in commercial projects without the owner's written consent.
  • In Godot 4: use AnimatedSprite2D with SpriteFrames and "Add frames from a Sprite Sheet", and set the default texture filter to Nearest for pixel art.
  • Need a specific character: generate it with an AI tool, or describe the game and let Oryn make the art.

What is a sprite sheet?

A sprite sheet is one image file holding many frames of art, usually the frames of a character's animations. Your engine shows one rectangle of the image at a time, and playing the rectangles in order looks like movement. Packing frames together means one texture for the graphics card to load, and one file for you to manage.

Sheets come in two layouts, and the layout decides how you import them.

Grid sheets place every frame in an equal cell. A sheet that's 192×64 pixels with 6 columns and 2 rows has 32×32 frames, because 192 ÷ 6 = 32 and 64 ÷ 2 = 32. Rows usually hold one animation each, such as idle on the first row and run on the second. If the division doesn't come out even, the sheet has padding between cells, or it isn't a grid at all.

Packed atlases squeeze frames of different sizes together to save space, and need a data file to say where each frame sits. That file is usually XML, JSON or TXT. Kenney's Platformer Art Deluxe, for example, lists its spritesheets as PNG plus XML/TXT. A JSON entry from a tool like Aseprite has roughly this shape:

{
  "frames": {
    "walk 0": { "frame": { "x": 0, "y": 0, "w": 32, "h": 32 }, "duration": 100 },
    "walk 1": { "frame": { "x": 32, "y": 0, "w": 32, "h": 32 }, "duration": 100 }
  }
}

Atlases also often store UI elements or props, where nothing animates and the sheet exists to keep files together.

Where to get free sprite sheets legally

SourceLicenseCredit needed?Best forMain catch
KenneyCC0NoClean, consistent starter artVery recognizable
itch.ioPer packPer packPixel art characters from individual artistsFree tiers are sometimes non-commercial
OpenGameArtPer uploadUsually, unless CC0Open source projects, huge varietyQuality varies, and some licenses complicate app stores
Universal LPC generatorPer asset (mostly attribution)Yes, except CC0Custom RPG characters from layered partsYou must credit every author
CraftPix freebiesCustomNoCharacters and game kitsNo redistribution, no AI training

Kenney

Kenney's support page says its game assets are public domain licensed (CC0), usable in commercial projects, with attribution not required. The one exception is the Kenney logo, which is reserved for the studio's own projects. If you want to know which pack to pick, our Kenney assets guide goes deeper.

Packs that suit character work, all CC0, as listed on Kenney's site in November 2026:

  • Roguelike Characters: 450 files, tagged rpg, character, roguelike, pixel, with a spritesheet mentioned in its update log.
  • Toon Characters: 270 files of character poses for platformers.
  • New Platformer Pack: 440 files of tiles, characters and backgrounds, released in 2025, with spritesheets mentioned in its update log.

The 2D category runs to ten pages of 16 packs each, and Kenney's pages don't always spell out what's in the download. Check the zip for the sheet layout you need, since some packs may ship loose frames too.

itch.io

Free assets tagged spritesheet is the most direct place to start, and free Sprites showed 9,406 results in the copy we read. Three CC0 or nearly-no-strings packs stand out:

  • Pixel Adventure by Pixel Frog: CC0, attribution not required, free or pay what you want.
  • Ninja Adventure by pixel-boy: CC0, top-down art and animations, plus fonts, sound effects and music.
  • Tiny Swords, also by Pixel Frog: commercial use allowed with credit optional, under custom terms that ban redistribution and AI training.

Our itch.io assets guide covers how to filter and how to read each pack's terms.

OpenGameArt

OpenGameArt lets uploaders choose from several licenses, and its FAQ says each of them allows commercial use under its own conditions:

  • CC0: use it any way you like, with no credit or notice.
  • CC BY and OGA-BY: commercial use is fine with credit. The FAQ suggests the format "[asset name]" by [author name] licensed [license(s)]: [asset url].
  • CC BY-SA: can only be combined with other CC BY-SA or compatible art, and the FAQ says you may not distribute it mixed with closed or proprietary art. Treat it as a bad fit for a closed commercial game.
  • GPL: fine for GPL projects, and the FAQ asks everyone else to understand how it affects them first.

Two warnings from the same FAQ. Apple's App Store has terms found to conflict with the GPL, LGPL, CC BY-SA and CC BY, so an iPhone release narrows you toward CC0. And the FAQ says it isn't a legal document.

Filter by license in the search form, and read the comments on an upload before you rely on it. A CC0 label only helps if the uploader had the right to grant it.

Universal LPC Spritesheet Character Generator

The Liberated Pixel Cup began as an OpenGameArt competition sponsored by Creative Commons, Mozilla and the Free Software Foundation. Its community generator lets you layer body, hair, clothes and weapons into one full character sheet, with a consistent animation layout.

The repository says you must credit all authors except for CC0 art, whether you use the generator or take images directly. Licenses vary per item across CC BY-SA, CC BY, OGA-BY, GPL and CC0, and share-alike or GPL terms apply to derivatives when you choose them. The generator can export a license sheet for the parts you picked. Export it, and keep it in your project.

CraftPix free section

CraftPix's freebies ran to 31 pages of 16 items in November 2026, with filters for Characters & Sprites, Tilesets, GUI and more. The license allows free assets in any number of personal and commercial projects, and says credit is appreciated without requiring it. It bans reselling or redistributing source files, and bans using the assets or derivatives to train or improve AI systems.

CraftPix also runs the free game assets storefront on itch.io, which a representative says uses the same license.

Which sprite sheets aren't free

Downloadable and free to use are different things, and this is where most trouble starts.

Rips from commercial games. The Spriters Resource is the best-known archive of them. Its own FAQ says the resources are copyrighted, can't be used in commercial projects without express written consent from the copyright holder, and aren't the site's to license. Its help pages allow for non-monetized fan projects as a matter of site policy, which doesn't bind the rights holder. A fan game can still get a takedown, and a rights holder doesn't need your game to make money to send one. Don't build on these for anything you plan to sell.

Reuploads. "Free sprites" threads, wallpaper sites and image searches mix rips, paid packs and fan art without labels. Without a named creator and a stated license, you have no license, and a watermark-free PNG proves nothing. Use the original source or leave it out.

Fan-made sprites of famous characters. An artist's redraw of Mario is still Mario. A CC0 label from the artist can't release a character they don't own, and the same goes for AI output you got by naming that character. Describe qualities instead: our brief guide recommends adjectives over titles for this reason.

Free tiers with non-commercial terms. These are honest, and easy to miss. The free version of Sprout Lands is non-commercial and requires credit, while the premium version from $3.99 allows commercial use.

Before you ship, run each sheet through this: Who drew it? Where's the license written? Does it allow selling, and does it require credit? If you can't answer the first two from a page you can link to, replace the sheet.

How to use a sprite sheet in Godot 4

Godot gives you two routes. The official 2D sprite animation tutorial covers both. Use AnimatedSprite2D by default. Switch to Sprite2D with an AnimationPlayer when the animation also needs to change other properties in time with the frames, such as a hitbox or a position offset.

Set up pixel art first

Do this once per project, or your pixel art will look soft:

  • Filter: Project Settings > Rendering > Textures > Canvas Textures > Default Texture Filter, set to Nearest. The default is Linear, which blurs pixels together when scaled. To change one node only, set its texture_filter property.
  • Stretch: under Display > Window > Stretch, set Mode to viewport and Scale Mode to integer. The multiple resolutions guide suggests a base size such as 640×360, which scales cleanly to 720p, 1080p, 1440p and 4K. Integer scaling prevents uneven pixel sizes.
  • Snapping: the same project settings page points pixel art games to rendering/2d/snap/snap_2d_transforms_to_pixel, which stops sprites sitting between pixels.

AnimatedSprite2D with SpriteFrames

  1. Add the node

    Add an AnimatedSprite2D under your character, then in the Inspector set Sprite Frames to New SpriteFrames and click the resource to open the bottom panel.

  2. Load the sheet

    Click "Add frames from a Sprite Sheet" and pick your PNG.

  3. Enter the grid

    Set Horizontal and Vertical to the sheet's columns and rows, for our example 6 and 2. If the cells have gaps, set the separation and offset fields until the grid lines sit on the art.

  4. Select one animation's frames

    Click the frames for one animation in order, such as the top row for idle, and add them.

  5. Name and tune it

    Rename default to idle by double-clicking it, and set its speed in the FPS field. There's no standard frame rate. Start a walk at around 10 FPS and adjust by eye next to your character's real movement speed. Add run, jump and the rest the same way, and turn Loop off for one-shot animations such as jump or attack.

  6. Play it from code

    Call the animation from your movement script, as below.

extends CharacterBody2D

@onready var sprite: AnimatedSprite2D = $AnimatedSprite2D

func _process(_delta: float) -> void:
    if velocity.x != 0.0:
        sprite.flip_h = velocity.x < 0.0
    sprite.play("run" if velocity.length() > 0.0 else "idle")

Calling play() with the animation that's already running doesn't restart it, so you can call it every frame. The flip means a side-view sheet only needs frames for one direction. This sample assumes your movement code sets velocity elsewhere.

Sprite2D with hframes and vframes

Sprite2D can also slice a grid without any SpriteFrames resource. Drag the sheet into Texture, open the Animation section in the Inspector, set Hframes to the columns and Vframes to the rows, and the Frame property now selects a cell, counted left to right and top to bottom.

Then add an AnimationPlayer, make a new animation, and key Frame over time. The docs' example uses six frames at 0.1 seconds each, for a 0.6-second loop. It's more setup, but the same timeline can also move a hitbox, toggle a particle effect or play a footstep at the exact frame the foot lands.

Packed atlases and Aseprite files

The "Add frames from a Sprite Sheet" dialog works on a grid, so packed atlases with XML or JSON need another route:

  • For a few frames, create an AtlasTexture, set the sheet as its atlas, and set its region by hand from the data file's numbers.
  • For Aseprite sources, install a plugin. Aseprite Wizard imports .aseprite files as SpriteFrames that load straight into AnimatedSprite2D. Importality also reads Krita, Pencil2D, Piskel and Pixelorama files.
  • If you own Aseprite and the source file, re-export a grid. File > Export Sprite Sheet offers horizontal, vertical and matrix layouts, and can limit the export to frames under a tag.

Making your own sprite sheets with AI

Free packs stop helping when you need a specific character doing a specific thing. As of November 2026, AI sprite sheet generators can get you there, and several have free tiers:

  • PixelLab: free trial with 40 fast generations, then 5 slower ones a day, up to 200×200 pixels, including rotation and basic animation.
  • Retro Diffusion: free daily usage with about 3 of its best images to start. Its terms let it display art made on free usage publicly, so don't use that for anything unannounced.
  • SpriteCook: 40 free credits every 30 days, and it says commercial use is allowed on every plan.

Our PixelLab vs Retro Diffusion comparison covers prices and limits. We haven't tested their output ourselves, so judge any sheet with the same three checks you'd use on a pack: frames on an even grid, a transparent background, and a character that keeps its proportions from one frame to the next. Output that only looks like pixel art, with soft edges and uneven pixel sizes, can go through Retro Diffusion's free Pixel Art Fixer, which snaps it to a real grid.

AI output carries its own conditions. Retro Diffusion's terms warn that AI-generated content may not be protected by copyright in some places, and that it doesn't promise your results are unique. If you later sell on itch.io as an asset, it must be disclosed, and Valve has its own AI disclosure policy for Steam.

If what you want is a game and the sprites are a means to that, Oryn does the sheet work as part of the build. It asks which art style to use during planning, generates the sprites and textures your mockup calls for, and draws on free libraries such as Kenney, then wires it all into a Godot project you can export. The first build takes about 30 minutes, and you can also upload a sheet you already have and tell it the frame size and which rows are which (assets guide).

Try this prompt in Oryn

“A top-down pixel art dungeon crawler with a small knight, three enemy types and a boss. Use a limited 16-color palette. Give every character idle, walk, attack and hurt animations, and keep sprites at 32x32. Keyboard, gamepad and touch controls.”

Build it in Oryn

Frequently asked questions

Where can I download free sprite sheets?

Kenney for CC0 packs with no credit required, itch.io and OpenGameArt for variety (check each listing's license), the Universal LPC generator for custom RPG characters, and CraftPix's free section for commercial-friendly packs under its own terms.

Can I use free sprite sheets in a commercial game?

Yes, when the license allows it. CC0 has no conditions, CC BY needs credit, and CraftPix's free license allows commercial use. Some itch.io free tiers are non-commercial, and sprites ripped from commercial games aren't licensed for it at all.

Is it legal to use sprites from The Spriters Resource?

Not in commercial projects without the rights holder's consent, according to the site's own FAQ. It says it doesn't own or license the sprites. Non-monetized fan use is a matter of site policy and doesn't stop a rights holder from objecting.

How do I import a sprite sheet into Godot 4?

Add an AnimatedSprite2D, set Sprite Frames to New SpriteFrames, choose Add frames from a Sprite Sheet, enter the columns and rows, then select frames for each animation. Sprite2D with Hframes and Vframes plus an AnimationPlayer also works.

Why does my pixel art look blurry in Godot?

Godot's default texture filter is Linear, which blends pixels. Set Rendering > Textures > Canvas Textures > Default Texture Filter to Nearest in Project Settings, and use integer scaling so pixels stay the same size.

What is the difference between a sprite sheet and a texture atlas?

The terms overlap. People usually mean a sheet with equal cells when they say sprite sheet, and a packed image with a data file listing each frame's position when they say atlas. Grid sheets are simpler to import in Godot.

Previous

Game Assets: The Complete Guide to Free and Paid Sources

Next

Best AI Music Generator for Games in 2026: 10 Tools Compared

Don't pick a model. Just ask Oryn.

Art, 3D models, music and sound effects: Oryn picks the right model for each and builds a playable game around them, for desktop and mobile.

Make my game

On this page

  • What is a sprite sheet?
  • Where to get free sprite sheets legally
  • Which sprite sheets aren't free
  • How to use a sprite sheet in Godot 4
  • Making your own sprite sheets with AI
  • Frequently asked questions

Don't pick a model. Just ask Oryn.

Art, 3D models, music and sound effects: Oryn picks the right model for each and builds a playable game around them, for desktop and mobile.

Make my game
GamesGuidesBlogComparisonsTools3D game maker2D game makerMobile game makerHorror game makerPlatformer makerAI RPG makerPuzzle game makerIdle game makerGodot AIReviewsAffiliatesFAQPricingTermsPrivacyGuidelinesWithdraw from contractCancel contracts hereImprint
.dev
Made with love in Mannheim, GermanyMade within Mannheim, Germany

Cookies and analytics

With your permission, PostHog and our own MRRocket, both in the EU, measure usage and record masked interactions for session replay. Text, inputs and media are masked or blocked; cookies are used. You can decline or withdraw in Cookie settings. Oryn works the same without this. With your permission, the ad platforms Reddit, Meta, Google Ads also learn whether you came from one of our ads and signed up or paid. Privacy notice