Put your PICO-8 game online as a playable link
You can export a PICO-8 game to HTML and put it online as a playable browser link for free with no signup on ship.page. Run EXPORT -F MYGAME.HTML in the PICO-8 console to generate a folder with an index.html file inside, then drag that folder or a .zip up to 25 MB onto the page for a live HTTPS link that stays online for 30 days.
A file. A folder. A fresh start.
Your static site, one link away.
Uploading publishes your file. The link is public but unlisted, not password-protected, so leave out secrets and confidential content.
- PICO-8 command that writes a folder with index.html
- EXPORT -F
- Maximum carts bundled into a single PICO-8 export
- 32 carts
- Free upload limit (100 MB unpacked, up to 100 files)
- 25 MB ZIP
- Online with no account; 90 days with a free account
- 30 days
From the PICO-8 console to a playable link
Save and load your cart in PICO-8
Open your game in PICO-8, make sure the latest changes are saved, and go to the PICO-8 console.
Run EXPORT -F MYGAME.HTML
Type EXPORT -F MYGAME.HTML and press Enter. PICO-8 writes a folder named mygame_html with an index.html file inside.
Drag the folder into ship.page
Find the new mygame_html folder and drop the whole folder onto this page, or compress it and upload a ZIP file.
Share your live link or QR code
Your game is live in seconds on its own HTTPS subdomain. Copy the URL or download the PNG QR code on the success screen so friends can play on a phone or desktop browser.
PICO-8 HTML export commands compared
| Command | What you get | How to upload it |
|---|---|---|
| EXPORT MYGAME.HTML | Two loose files: mygame.html and mygame.js | Rename mygame.html to index.html, put both in a folder or ZIP, upload |
| EXPORT -F MYGAME.HTML | A folder named mygame_html with index.html inside | Drag the mygame_html folder or a ZIP of it straight into ship.page |
| EXPORT -W MYGAME.HTML | WebAssembly (.wasm) and .js files with your HTML file | Put index.html, the .wasm and .js files in one folder or ZIP, upload |
Why is EXPORT -F the easiest command for web hosting?
When you run a plain EXPORT MYGAME.HTML, PICO-8 writes two loose files: mygame.html and mygame.js. The two must stay together, and since ship.page opens index.html as the homepage, you would also have to rename mygame.html to index.html before uploading both in one folder or ZIP.
Adding the -F flag solves both problems at once. Running EXPORT -F MYGAME.HTML creates a folder called mygame_html with the HTML file already named index.html. You can drop that folder straight into ship.page for free HTML5 game hosting without renaming a single file. If your folder is larger than roughly 7 MB of files, zip it first: ship.page unwraps a ZIP with a single top folder automatically.
Tip: Never upload the .html file alone. A plain EXPORT writes mygame.html and mygame.js, and both files must be in the same upload.
What about WebAssembly exports, multiple carts and custom plates?
If you export with EXPORT -W MYGAME.HTML, PICO-8 writes .wasm and .js files that must be served by a web server, so the game won't run if you open the HTML file from your computer through a file:// path. Uploading the folder to ship.page serves the .wasm and .js files over HTTPS.
You can also customize how your game looks and loads in the browser before you share an HTML game with players.
- Bundle up to 32 carts in a single export.
- Apply a custom HTML template (called a plate) from your plates folder using the -P flag, such as EXPORT MYGAME.HTML -P ONE_BUTTON.
- Keep file paths matching the exact letter case in your HTML, because paths on ship.page are case-sensitive.
- Turn off pre-compression if you build a custom wrapper, as files are served as they are without Content-Encoding.
When should you use itch.io vs. ship.page?
The PICO-8 manual recommends EXPORT -F MYGAME.HTML specifically for itch.io, and itch.io is the better fit when you want a public game page. It hosts HTML5 games for free, accepts a ZIP with index.html at the root up to 500 MB extracted (200 MB per file and 1,000 files total), and lets you adjust the default 10% revenue share anywhere from 0% to 100%.
Use ship.page when you just want a playable link in seconds without creating an account or filling out a store listing. Every page on ship.page is sent with a noindex header so search engines stay out, making it ideal for playtesting a rough build in Discord. Free links last 30 days without an account or 90 days when you claim them with Google or an email link. If you want to push updates to the exact same URL as you tweak your cart, Pro and Team plans start at $4 a month and include permanent links and password protection.
Questions
How do I export a PICO-8 game to HTML?
Open the PICO-8 console and run EXPORT -F MYGAME.HTML. This creates a folder named mygame_html with an index.html file inside, ready to upload as a folder or a ZIP.
Why won't my PICO-8 game load after I upload it?
Check that the .js file went up with the .html file. A plain EXPORT writes mygame.html and mygame.js, and both must be in the same folder or ZIP; an EXPORT -W build also needs its .wasm file. Re-exporting with EXPORT -F gives you a folder that is ready to upload.
Can I upload mygame.html without the -F flag?
Not as a single file, because the HTML wrapper needs the separate mygame.js file to run. Either re-export with EXPORT -F MYGAME.HTML, or put both mygame.html (renamed to index.html) and mygame.js into a folder or ZIP and upload that.
How long will my PICO-8 game link stay online?
A free upload without an account stays online for 30 days. If you sign in with Google or an email link to claim it, the free link stays active for 90 days, and the $4/month Pro plan keeps links online forever.
Can I update my PICO-8 game without changing the link?
On the free plan, each new upload creates a new link. With the $4/month Pro plan, you can re-upload your mygame_html folder or ZIP as many times as you want and keep the exact same URL.
Can I bundle multiple PICO-8 carts into one web export?
Yes, one PICO-8 web export can bundle up to 32 carts at once. All bundled carts are packed into the exported output, which you can upload as a single folder or a ZIP up to 25 MB on the free plan.
Keep reading
- Free HTML5 game hosting
- Share an HTML game
- Host a Bitsy game
- Publish a Twine game
- Turn a ZIP into a website
Drop your mygame_html folder to play online
Drag the folder from EXPORT -F or a ZIP of your PICO-8 export into the box above to get a shareable link in seconds.