For Godot developers
Publish a Godot game on Steam, itch.io, the web and Android
Godot charges nothing to ship a game. The work is in the exports, the store requirements and a few platform traps that only appear on release day. Here is the path for each store, with the settings that matter.
The short answer
To publish a Godot game, install the export templates that match your editor version, add an export preset for each platform and export release builds. For Steam, integrate Steamworks with GodotSteam, pay the Steam Direct fee and upload a desktop build with SteamPipe. For itch.io, push each build with butler. For the web, use Godot 4.3 or later, which exports single-threaded by default, and note that C# projects cannot export to the web. For Google Play, sign with a release keystore and export an Android App Bundle through a Gradle build. Godot is MIT licensed, so there is no publishing fee and no royalty.
A Godot game is yours. The engine is MIT licensed, and its license page says the terms do not apply to the content you create with it. There is no fee to publish and no revenue share. You do need to include Godot's copyright notice and license text, plus the notices for the third-party libraries it bundles, which Godot collects in its COPYRIGHT.txt file, in your game's credits or documentation.
That leaves the practical side. Every platform needs a matching export template, each store has its own upload tool and review, and some targets add signing or build requirements that are easy to miss until the week you ship. This guide goes store by store, from Steam and itch.io to the web and Google Play, then covers what changes if you open the project in Summer.
What it does
Export templates that match the editor
Templates are the prebuilt engine binaries each export is built from. Install them from Editor, Manage Export Templates. Godot's docs have long warned that after an upgrade you must download templates that match the new version or exported projects may not work correctly.
Steam through GodotSteam
GodotSteam brings the Steamworks SDK to Godot for Windows, macOS and Linux. The pre-compiled editor needs its own export templates, while the GDExtension plugin uses Godot's standard templates and ships extra shared libraries with the build.
itch.io through butler
butler is itch.io's command line uploader. After the first push it uploads only what changed, and channel names such as windows, mac or linux tag each build with its platform.
Web builds without special headers
Since Godot 4.3 the Web preset exports single-threaded by default, which runs on ordinary hosting and inside portal iframes. Threaded builds need cross-origin headers, and C# projects cannot export to the web at all.
Android App Bundles
Google Play has required App Bundles for new apps since August 2021. Godot exports an AAB when you enable the Gradle build, and signs release builds with your own keystore.
macOS signing and notarization
Unsigned, un-notarized builds downloaded from the internet are blocked by Gatekeeper. Notarizing needs an Apple Developer ID certificate, and Godot supports it from macOS with Xcode tools or from Windows and Linux with rcodesign.
How it works
- 1
Step 1: Install matching export templates
Open Editor, Manage Export Templates and download the templates for your exact editor version. Reinstall them after every upgrade. If you use a custom or pre-compiled editor, such as GodotSteam's, use the templates built for that editor.
- 2
Step 2: Add one preset per platform
In Project, Export, add presets for Windows, macOS, Linux, Web or Android as needed. Set the icon, version and product name, and untick Export With Debug for anything you release.
- 3
Step 3: Add Steamworks with GodotSteam
Choose the GDExtension plugin if you want to keep Godot's standard templates, or the pre-compiled editor with its matching templates. Initialize Steam with your app ID at startup, then add achievements and cloud saves. Test the build launched from the Steam client.
- 4
Step 4: Set up the Steam store page early
Pay the Steam Direct fee of 100 US dollars per game, which Valve pays back after the game earns 1,000 US dollars in adjusted gross revenue. The page must be visible as Coming Soon for at least two weeks before release, and build review typically takes 3 to 5 business days.
- 5
Step 5: Push to itch.io with butler
Log in once with
butler login, then runbutler push build/windows yourname/yourgame:windows --userversion 1.0.0for each platform. Later pushes to the same channel upload only the changed parts. - 6
Step 6: Sign mobile and macOS builds
For Android, install OpenJDK 17 and the Android SDK, create a release keystore with
keytool, enable the Gradle build and export an AAB for Google Play. For macOS, sign and notarize with a Developer ID certificate so players are not blocked by Gatekeeper.
Two ways to run it
In Studio, or from the agent you already use
In Summer Studio
Summer Studio runs in the browser and makes the release assets a Godot game needs, such as Steam capsule art at the required sizes, trailer shots, sound effects, music and voices. Every result is a file you download and use in your project or store page, so it works for a stock Godot project too.
Make Steam capsule artFrom Claude, Cursor or Codex via MCP
If you open the project in Summer, the Summer MCP lets Claude Code, Cursor or Codex work in the running editor. The agent can inspect the scene tree, read and edit project settings with summer_project_setting, run the game and read errors with summer_get_diagnostics before you export.
Example prompt for your agent
Open my project in Summer, list every plugin and GDExtension it uses, run the main scene, and report any errors from summer_get_diagnostics before I set up the Windows and macOS export presets.Set up the Summer MCP
| Target | Build | Tooling | Cost and review |
|---|---|---|---|
| Steam | Windows first, then macOS and Linux depots | GodotSteam for Steamworks, SteamPipe to upload | Steam Direct fee of 100 US dollars per game, recouped after 1,000 US dollars adjusted gross revenue, Coming Soon for two weeks, review typically 3 to 5 business days |
| itch.io | Desktop downloads and an optional web build | butler push with one channel per platform | Open revenue sharing where you choose itch.io's share |
| Web portals | Godot 4.3 or later single-threaded web export, GDScript only | The portal's SDK for ads and pause events | Each portal sets its own size budget and review |
| Google Play | Android App Bundle signed with your keystore | OpenJDK 17, Android SDK, Gradle build | A Google Play developer account |
| App Store (iOS) | An Xcode project exported from Godot on a Mac | Xcode, your App Store Team ID and a bundle identifier | An Apple developer account |
| macOS downloads | Signed and notarized app | Xcode tools or rcodesign and an Apple Developer ID certificate | An Apple Developer ID certificate |
Sources: Godot docs, Exporting projects
Examples
Prompts that work, and what comes back
Checks that catch the most common release-day problems in Godot builds.
Template version check
Prompt
Checklist. Help, About shows the editor version. Editor, Manage Export Templates shows the same version as installed.
What you get
No version mismatch, which is behind many exports that fail or crash on launch.
Release preset audit
Prompt
Checklist. Export With Debug unticked, version and product name set, icon set, only the resources you need included.
What you get
A release build without debug output, with the right name and icon in the store and on the desktop.
butler channel layout
Prompt
butler push build/win yourname/yourgame:windows, then build/mac to :mac and build/web to :html5, each with a userversion number.
What you get
One itch.io page with a tagged download per platform, updated by patch. Mark the html5 channel as playable in the browser on the Edit game page after the first push.
Android keystore
Prompt
keytool -v -genkey -keystore mygame.keystore -alias mygame -keyalg RSA -validity 10000
What you get
A release keystore to set in the Android preset. Back it up, since you need the same key for every update.
Steam launch test
Prompt
Checklist. Install the build from a Steam branch, launch from the Steam client, check the overlay with Shift+Tab, earn one achievement.
What you get
Proof that Steamworks initializes, the overlay hooks, and the build Steam launches is the one you uploaded.
Is there a Godot publishing fee
No. Godot is released under the MIT license, and its license page says the engine's terms do not apply to the content you create with it, so you can license and sell your game however you like. There is no royalty and no registration. What you owe is attribution. Include Godot's license text and the notices for the third-party libraries it bundles. Godot's guide to complying with licenses suggests shipping its COPYRIGHT.txt file renamed to GODOT_COPYRIGHT.txt, or showing the notices in a credits screen or licenses menu.
The costs of publishing come from the stores. Steam charges its Steam Direct fee per game, notarizing macOS builds needs an Apple Developer ID certificate, and Google Play needs a developer account. itch.io lets you choose its share of each sale.
GodotSteam, module or plugin
GodotSteam comes in two main forms for Godot 4. The pre-compiled version is a full editor with Steamworks built in, and it requires its own export templates. The GDExtension plugin drops into a stock project, uses Godot's standard export templates, and ships a few extra shared libraries with your exported game. Its docs say both behave the same because they share a code base, and that plugin failures can be harder to debug.
If you already use a custom editor build, the plugin is usually the simpler fit, because you keep your own templates. Whichever you choose, call Steam's init early at startup, test achievements on a real Steam branch, and launch from the Steam client when you check the overlay.
Web and C#
Godot 4 cannot export C# projects to the web, and since Godot 4.3 the web export is single-threaded by default, which suits game portals. For the full steps, see our guide to export a Godot 4 game to the web, and the HTML5 publishing guide for the portals.
Opening your Godot project in Summer
Summer is a desktop app for macOS and Windows that is compatible with Godot 4, and it opens existing Godot 4 projects. Commit a copy before bringing in an existing project, then verify editor behavior, imports, plugins, native extensions and exports for that project. GDExtensions such as GodotSteam are exactly the kind of dependency to check first.
Once it runs, Summer builds Windows and macOS versions for Steam and itch.io downloads when the export templates are installed. C# is available in the desktop editor. Web export is not available in Summer yet, so if a browser build is part of your release, Summer is not the tool for that build. iOS and Android builds need that platform's toolchain and signing (the Android SDK and a keystore, or a Mac with Xcode for iOS) and a pass on touch input.
Where to take your Godot game next
Port it to make money
Steam is the main paid store for Godot games. It needs a desktop build, GodotSteam if you want achievements and cloud saves, a Coming Soon page for at least two weeks, and a Steam Direct fee of 100 US dollars per game that is paid back after 1,000 US dollars in adjusted gross revenue. itch.io is the fastest second store.
How to publish a game on SteamRelease it on Summer Games
Summer Games is a new store for games made with Summer. It is launching soon. A Godot 4 project you continue in Summer is closest to ready. What will count is a game built in Summer, reviewed, and working as a single-player game first.
See Summer Games (launching soon)Grow it
Wishlists decide a Steam launch, and Steam emails everyone who wishlisted when you release. Open the store page early, make capsule art at every required size, cut a trailer that shows play in the first seconds, and join a Next Fest with a demo.
Make Steam capsule artRemake it in Summer
Open a copy of the project in Summer, or start from a template if the old code is holding you back, and have the agent rebuild systems with your existing scripts as the spec. Playtest in the engine after each system.
Remake your game in SummerFrequently asked questions
Does Godot charge a fee to publish a game?
No. Godot is MIT licensed, with no royalties, fees or registration. Include Godot's license text and the third-party notices from its COPYRIGHT.txt file in your credits or documentation. Store fees, such as Steam Direct, still apply.
How do I publish a Godot game on Steam?
Create a Steamworks app and pay the Steam Direct fee, integrate Steamworks with GodotSteam, export a Windows build with matching templates, and upload it as a depot with SteamPipe. Put the store page up as Coming Soon at least two weeks before release and allow about a week for build review.
How do I upload a Godot game to itch.io?
Export each platform to its own folder, then run butler push folder yourname/yourgame:channel with a channel such as windows, mac, linux or html5. For a web build, zip the export with index.html at the top and mark it as playable in the browser.
Why does my exported Godot game not run?
The most common causes are export templates that do not match the editor version, a debug-only setting left on, or a missing file excluded by the export filter. For web builds, opening index.html from disk or enabling Thread Support without the cross-origin headers also causes a black screen.
How do I publish a Godot game on iOS?
Export from a Mac with Xcode installed. Set your App Store Team ID from your Apple developer account and a unique bundle identifier in the iOS preset. Godot exports an Xcode project, and you build, sign, archive and upload the release to the App Store from Xcode.
Does Google Play accept APK files from Godot?
Not for new apps. Since August 2021 new apps must be published as Android App Bundles. Enable the Gradle build in the Android preset and choose AAB as the export format.
Can Summer publish my Godot game?
Summer opens Godot 4 projects and builds Windows and macOS versions for Steam and itch.io downloads. Commit a copy first and check plugins, native extensions and exports for your project. Web export is not available in Summer yet.
Related tools and guides
Sources
- Godot license
- Godot docs, Exporting projects
- Godot docs 3.1, Exporting (templates must match the version)
- Godot docs, Exporting for the Web
- Godot docs, Exporting for Android
- Godot docs, Exporting for macOS
- Android developers, About Android App Bundles
- GodotSteam
- GodotSteam, Introduction
- itch.io, butler
- itch.io, Pushing builds with butler
- itch.io creator FAQ, open revenue sharing
- Steamworks, Steam Direct fee
- Steamworks, Coming Soon page
- Steamworks, Review process
- Steamworks, Uploading to Steam
- Godot docs, Complying with licenses
- Godot docs, Exporting for iOS
Make your game. Grow your game.
Even if it is built in another engine.
Free to download for macOS (Apple silicon) and Windows.