Custom Game Upload
This page covers deployment to Roll20. Guides for other VTTs will be added as export support expands.
The fastest way to use your sheet is to paste it directly into a Roll20 game's custom sheet settings. This approach works for any Roll20 game where you are the creator or have GM permissions.
Step-by-Step
1. Export Your Sheet
In Sheet Architect, click the Export button in the editor toolbar. Fix any validation errors, then download the exported files. You will have sheet.html, sheet.css, and possibly sheet.json.
2. Open Your Roll20 Game Settings
- Go to Roll20 and open your game (or create a new one)
- On the game's landing page, click Settings (the gear icon)
- Click Game Settings
3. Select Custom Sheet
Scroll down to the Character Sheet Template section. From the dropdown, select Custom.
This reveals three text areas: HTML Layout, CSS Styling, and optionally Translation.
4. Paste Your HTML
Open your exported sheet.html file in any text editor (Notepad, TextEdit, VS Code -- anything that can open a text file). Select all the contents (Ctrl+A) and copy them (Ctrl+C).
Go back to Roll20 and click inside the HTML Layout text area. Clear any existing content, then paste (Ctrl+V).
5. Paste Your CSS
Open your exported sheet.css file in a text editor. Select all, copy, and paste into the CSS Styling text area on Roll20.
6. Paste Translation (If Applicable)
If your sheet uses translation keys and you have a sheet.json file with translations, paste its contents into the Translation text area.
7. Save
Click Save Changes at the bottom of the page.
Saving replaces whatever sheet was previously configured for this game. There is no undo on Roll20's settings page, so make sure you have your exported files saved locally.
Testing Your Sheet
After saving your game settings, test your sheet thoroughly:
- Launch the game by clicking Launch Game on the game's landing page
- Open a character -- click the journal tab (the notebook icon), create a new character or open an existing one, and click its name to open the character sheet
- Check the layout -- verify all sections, tabs, inputs, and labels appear correctly
- Enter values -- type into input fields, change dropdowns, check checkboxes. Close and reopen the character to confirm values persist
- Test calculations -- if your sheet has logic (like computing ability modifiers from scores), change input values and verify that computed fields update correctly
- Click roll buttons -- verify that rolls produce output in chat, and that roll templates format correctly if you have them
- Test repeating sections -- add a few rows to any repeating section (inventory, spells, features), fill in values, and confirm they save. Try reordering and deleting rows
- Check at different zoom levels -- use your browser's zoom to verify the layout does not break at common zoom levels
Open the browser console (press F12 and click the Console tab) while testing. Sheet worker errors will appear here and can help you diagnose calculation issues.
Updating Your Sheet
When you make changes in Sheet Architect and re-export:
- Export again from Sheet Architect
- Go back to your Roll20 game settings
- Replace the HTML and CSS with the new export contents
- Save changes
Existing character data is preserved when you update the sheet template -- players will not lose their entered values. However, if you renamed attributes or removed components, data tied to the old names may become orphaned.
For faster iteration during active development, consider using the Sheet Sandbox instead of repeatedly pasting into game settings.
For Roll20's official documentation on custom sheet upload, see Building Character Sheets -- Uploading Your Sheet.