← User Guide
Import many tasks at once by uploading a CSV file with a fixed set of columns. Each row becomes a task in the project you are viewing.
ℹ️ Subscription: Task import requires a Silver or Gold subscription (Level 2+). On the Basic tier the import action is visible but prompts you to upgrade.
How to Import
- Open a project's task list and tap the overflow menu (⋮) → Import tasks.
- Tap Download Template to get a ready-made
task-import-template.csv with the correct headers and example rows.
- Fill in your rows in a spreadsheet app, then export/save as CSV.
- Tap Upload CSV File and select your file.
- The import runs in the background. A status indicator shows progress, and you'll see how many tasks were created plus any warnings when it finishes.
💡 Tip: Always start from the downloaded template — it has the exact headers the importer expects.
File Requirements
- Encoding: UTF-8 (with or without BOM)
- Delimiter: comma (
,)
- Quoting: wrap fields containing commas, line breaks, or quotes in double quotes (RFC 4180)
- Maximum file size: 2 MB
- Maximum rows: 500 data rows (excluding the header)
- Required header: the file must contain a header row with at least the
Title column
Columns
Column names are matched case-insensitively, leading/trailing spaces are trimmed, and unrecognized columns are ignored. Keep the column names in English exactly as below.
| Column |
Required |
Max length |
Valid values |
Title | Yes | 500 | Plain text (no HTML, no control characters) |
Description | No | 5000 | Plain text (no HTML, no control characters) |
Assignee | No | 256 | Username: letters, digits, dots, hyphens, underscores (no spaces) |
Owner | No | 256 | Username: letters, digits, dots, hyphens, underscores (no spaces) |
Priority | No | — | Low, Medium, High |
Status | No | — | Draft, ToDo, InProgress, Done |
Location | No | 300 | Address text (no HTML) |
Latitude | No | — | Decimal from -90 to 90 |
Longitude | No | — | Decimal from -180 to 180 |
Elevation | No | — | Decimal (meters) |
DueDate | No | — | Date YYYY-MM-DD (optional time, e.g. 2026-06-15 14:30) |
Default Values
- Priority: Medium (when omitted or empty)
- Status: ToDo (when omitted or empty)
- Owner: the importing user (when omitted or unresolved)
- Elevation: 0 meters (when omitted but coordinates are provided)
Assignee & Owner
- Usernames are resolved case-insensitively against members of your company (people and AI agents).
- If an Assignee username is not found, the task is imported without an assignee and a warning is reported.
- If an Owner username is not found, the task is imported with you as the owner and a warning is reported.
- If a resolved user is not yet a member of the target project, they are added automatically and a warning is reported.
Location Columns
- Latitude + Longitude (optional Elevation): creates a place with geographic coordinates.
- Location + Latitude + Longitude: creates a place with both coordinates and the address text.
- Location only (no coordinates): creates a place with just the address.
- All location fields empty: the task has no location.
- Latitude and Longitude must be provided together — supplying only one is an error.
- Each row creates its own place (no deduplication across rows).
Validation
- All rows are validated before any task is created. If any row has an error, the whole import is rejected and nothing is saved.
- If more than 50% of rows fail validation, the file is rejected as malformed.
- Multiple errors in a single row are all reported (validation does not stop at the first error).
- HTML tags and control characters are not allowed in text fields.
⚠️ Rate limits: at most 3 imports per project per hour and 10 imports per company per hour. If exceeded, the import is rejected with the time until the next attempt is allowed.
Example CSV
Title,Description,Assignee,Owner,Priority,Status,Location,Latitude,Longitude,Elevation,DueDate
"Fix leaking pipe","Water leak in basement bathroom",john.doe,jane.smith,High,ToDo,"123 Main St, Springfield",39.7817,-89.6501,200,2026-06-15
"Install electrical outlet","Add 220V outlet in server room B",mike_wilson,jane.smith,Medium,Draft,"456 Oak Ave, Springfield",39.7900,-89.6440,195,2026-06-20
"Inspect roof","Annual roof inspection",,,Low,ToDo,"789 Elm St, Springfield",,,,
"Order supplies","Order replacement filters and seals",,jane.smith,,InProgress,,,,
This example shows tasks with full location data (rows 1–2), an address with no coordinates (row 3), a task with no location (row 4), and omitted optional fields that fall back to defaults (rows 3–4).
Attachments
CSV is text-only and cannot carry files or images. To attach files to imported tasks, open each task after import and add attachments through the normal task editor.
← Back to User Guide