Guide sections

Roll20 import

Import Roll20 Character Vault JSON or CSV and understand which character fields become Campaign Familiar NPCs.

What you need

Roll20 import reads a character export file in one of two formats:

  • Character Vault JSON - Roll20’s own character export
  • CSV - a character-sheet export with columns for name, stats, bio, and so on

Export your characters from Roll20 first, then point Campaign Familiar at the file.


What imports

Roll20 ContentCampaign Familiar CreationNotes
CharactersNPC creationsName, bio (as description), class/race (as role), and combat stats when present

That’s the whole list. Roll20 exports are characters only - there’s no location, encounter, item, or map data in them - so the import creates NPCs and nothing else.

  • Stats (AC, HP, speed, challenge rating) come across when the export includes them.
  • GM notes are brought in as secrets on the NPC.
  • Class and race become the NPC’s role (for example, “Dwarf Fighter”).

Re-importing the same Roll20 export doesn’t pile up duplicates - the Master Library recognizes the source and only adds what’s new. And Assign to Campaign is idempotent, so assigning the same character to a campaign twice returns the existing copy instead of a second one.

What doesn’t import

  • Handouts and journal content (not part of a Roll20 character export)
  • Maps, tokens, and images
  • Locations, encounters, and standalone items

Import steps

Step 1: export from Roll20

Export your characters as a Character Vault JSON file, or use a character-sheet export that produces a CSV.

Step 2: open the import wizard

  1. Launch Campaign Familiar
  2. Open the Library from the sidebar and click Import to Library
  3. Choose Roll20 as the source

Step 3: select your export file

Browse to your .json or .csv file. Campaign Familiar detects the format automatically and shows how many characters it found.

Step 4: review and import

Run the import. Every character lands in your campaign-neutral Master Library as an NPC, each tagged with its Roll20 source for provenance.

Step 5: assign to a campaign

Imported characters live in the Master Library, not in a campaign directly. To bring one to your table, open it in the Library and click Assign to Campaign - that places an editable copy in the campaign you pick while the Library master stays the original. Assigning the same character to a campaign twice returns the existing copy rather than duplicating it.


Missing-field warnings

Roll20 exports are often incomplete - a character might have a name and bio but no HP or AC. Campaign Familiar still imports those characters using sensible defaults, and it shows a warning for each one listing what was missing (for example, “imported with missing fields: hp, ac”).

Warnings don’t stop the import. They’re a heads-up so you know which NPCs to flesh out before your next session.


After import

  • Add the missing pieces. Fill in stats, personality, and goals for characters that came in thin.
  • Build connections. Roll20 exports carry no relationships - link your NPCs to locations and factions by hand, or let the engine suggest connections.
  • Tag imports. A tag like imported-roll20 makes cleanup easy.

Troubleshooting

”could not detect a valid Roll20 export”

  • The file must be a Character Vault JSON or a character-sheet CSV
  • A plain text file or an unrelated JSON won’t be recognized

Characters imported with no stats

  • The export didn’t include combat fields. Check the warnings list to see exactly which NPCs and fields were affected, then add them manually.

A character was skipped

  • Characters with no name are skipped (they can’t be created as a creation). Give them a name in Roll20 and re-export.