Bulk CSV Import
Import multiple signs at once from a CSV spreadsheet.
When you have dozens or hundreds of signs to add, creating them one by one is slow. The bulk CSV import lets you upload a spreadsheet and create all your signs in a single step.
Preparing your CSV
Your CSV file needs a header row with at least a name column. The importer is flexible — your columns don't need to match the Signplanr field names exactly.
| Column | Required | Notes |
|---|---|---|
name | Yes | The sign name or title. |
sign_type | No | If it matches an existing type, it's linked automatically. New types can be created during import. |
width_mm | No | Width in millimetres. Must be a number or leave blank. |
height_mm | No | Height in millimetres. Must be a number or leave blank. |
mounting_height_mm | No | Mounting height in millimetres. Must be a number or leave blank. |
mounting_notes | No | Descriptive mounting instructions (e.g. "1500mm to top of braille", "above entrance door"). |
material | No | Sign material (e.g. Vinyl, ACM, Aluminium). |
facing_direction | No | Which direction the sign faces. |
copies | No | How many separate sign records to create from this row. Each copy gets its own auto-generated sign number. Max 100 per row. Defaults to 1 if omitted. |
special_instructions | No | Free text instructions for the contractor. |
description | No | Sign description. |
face_1_label | No | Label for face 1 (e.g. "Front"). Up to 4 faces supported. |
face_1_instructions | No | Instructions for face 1. |
Not sure about the exact column names? Download the CSV template from the import dialog — it includes every standard field with an example row.
Importing
- Open your event and go to the Signs tab.
- Click Import CSV.
- Select your CSV file.
- Map Columns — Signplanr auto-matches your CSV columns to sign fields. Review the matches and adjust any that look wrong using the dropdown. Columns you don't need can be set to "Skip this column".
- Review Sign Types — If your CSV references types not currently pinned to this event, you'll see a review step:
- Names that already exist in your org library but aren't pinned here are auto-pinned silently when you click Next. You'll see a confirmation toast.
- Names that don't exist anywhere yet show three options:
- Create new type — adds it to your library and pins it to this event
- Map to existing — link the CSV name to a type you already have
- Skip — import the signs without a type
- Preview — Review the validated data. Any remaining errors (e.g. non-numeric values in number fields) are shown per row.
- Click Import to create all valid signs.
All signs are created with a pending status. You can then upload artwork and place them on maps.
Tips for preparing your data
- Numeric fields: Width, height, and mounting height must be numbers only. If your spreadsheet has text like "various" or "TBC" in these fields, either clear them or leave them blank.
- Mounting notes: If your mounting heights include descriptive text (e.g. "1500mm to top of braille"), put the number in
mounting_height_mmand the description inmounting_notes. - Column names: You don't need exact column names. The importer recognises common variations like "type" for sign type, "width" for
width_mm, etc. - Extra columns: Any columns that don't map to a Signplanr field are safely ignored.
Handling errors
Common issues the validator catches:
- Unknown sign type — the sign type name doesn't match a pinned type or an event-only type on this event. Use the sign type review step to create it, map it to an existing type, or skip. Names that match a library type elsewhere in your org are auto-pinned to this event for you.
- Non-numeric value — a number field (width, height, mounting height) contains text. Clear the value or move the text to a notes field.
- Missing name — every sign needs a name.
Fix the flagged rows in your CSV and re-upload, or adjust your column mapping to resolve the issue.