Skip to content

Advanced Imports

Tasks Import

This article walks you through how to import tasks into Swivel using a CSV file


Swivel’s self-service Task Import allows you to create many tasks at once from a spreadsheet. The import walks you through four steps: uploading a file, mapping your columns to Swivel task fields, mapping your category and status values, and reviewing any rows that need attention before finishing.

Any user who has permission to create an individual task can also run a task import.

  • The Task Import can be accessed from Business Management > Imports > Tasks Bulk Import
  • Import file must be in .csv file format
  • The first row of your file must be column headers. The importer uses row 1 as the field names.
  • Only Task Name is required. All other columns are optional
  • File size is not hard-capped, but very large files (50,000+ rows) will be processed in background batches and may take several minutes.
  • Tasks in Swivel are found on the Task Tab from the left side navigation and on linked contact records. See Swivel Task Experience for more information on task fields and views

Once you have uploaded your .csv file, you will be brought to a mapping screen to match your file headers to fields inside Swivel. Column headers are matched case-insensitively, so “Task Name,” “task_name,” and “TASK NAME” all map to the same field. Below shows each supported field and accepted column header variations.

FieldAccepted Column HeadersRequiredFormat / Accepted Values
Task Nametask, task_name, title, subject, nameYesAny text
Due Datedue, due_date, deadline, due_onNoMM/DD/YYYY, YYYY-MM-DD, or natural language (March 1, 2026).
PrioritypriorityNolow, normal, high, urgent. Invalid or blank defaults to normal.
Descriptiondescription, notesNoAny text
​
Tagstags, labelsNoComma-separated list
Source Keysource_key, external_id, legacy_idNoAny text. Used for deduplication. If a task with this source key already exists, the row is skipped
Categorycategory, task_category, typeNoFree text. You will map each value to a workspace status in Step 3.
Statusstatus, task_status, stateNoFree text. you will map each value to a Swivel category in Step 3.
Assigneeassignee, responsible, owner, responsible_userNoFull name of an active user in Swivel. Must be an exact match.
Completed Oncompleted_on, completed_at, completion_date, completedNo*Same formats as Due Date. Cannot be a future date. Completed On and Completed By are both required to have values imported.
Completed Bycompleted_by, completed_userNo*Full name of an active user in Swivel. Completed On and Completed By are both required to have values imported.
Created bycreated_by, creator, created_userNoFull Name of an active user in Swivel. Blank is allowed.
Contactscontacts, contact_namesNoComma-separated list of contact full names
Contact IDscontact_idsNoComma-separated list of Swivel contact IDs
Contact Source Keyscontact_source_keysNoComma-separated list of contact source keys
  1. Navigate to Business Management > Imports > Tasks Bulk Import
  2. Drag your CSV onto the file input, or click to browse and select your file
  3. Select the Workspace all imported tasks should belong to. If no workspaces exist yet, the importer will auto-create one called Default with three starter statuses: Open, In Progress, and Done.
  4. Select a Default Task Status to assign to any row that does not have its own status value. This status must belong to the workspace you selected.
  5. Click Next

You will see a table with one row per column header from your CSV. The importer pre-populates the Swivel field based on the alias matching table above. Unrecognized columns default to Do Not Import. You can adjust any mapping, but the same Swivel field cannot be mapped to more than one column. If your file includes a Category or Status column, click Next to proceed to Step 3. If neither column is present, the import is queued and you move directly to Step 4.

Step 3 - Map Values (Category and Status only)

Section titled “Step 3 - Map Values (Category and Status only)”

If your CSV includes a Category or Status column, you will need to match each distinct value in your file to an existing option in Swivel, or create a new one.

Categories : Values that match an existing category are pre-selected. Unknown values default to Create New, and Swivel will create the category the first time it is needed.

Statuses: Every status value in your CSV must map to an existing status within the workspace you selected in Step 1. There is no “Create New” option for statuses. Any row with an unmapped status value will use the default task status from Step 1.

If both Category and Status were mapped, the category screen appears first, followed by the status screen. Click Start Import on the status screen to begin.

Once the import starts, Swivel shows a live progress counter that updates every 50 rows. You can close the tab and come back later. Progress will continue in the background and the completion summary will be waiting for you when you return.

Some rows may land in the Needs Review tab during processing. This happens for two reasons:

  • Unresolved contact - the contact name, ID, or source key could not be matched, or two contacts share the same name and the importer will not guess which one to use.
  • Completion status conflict - the row has a Completed On date but the mapped status is not marked as “completes task” in the workspace.

To resolve a review row, expand it to see the specific issue, then click Skip Issues & Create Task. This will drop the unresolved contact values from that row (other matched contacts are kept) and clear the conflicting status. The row will re-process immediately and disappear from the Needs Review tab.

When the import finishes, you will see a summary showing tasks created, rows skipped as duplicates, rows that failed with errors, and any remaining unresolved review rows.

What happens if I import the same CSV twice?

If your rows include a Source Key, any task with a matching source key already in Swivel will be skipped and counted as a duplicate. Rows without a source key are not deduplicated, so they will create new tasks each time. If you plan to re-run imports, including a source_key column is strongly recommended.

What if an assignee name does not match anyone in Swivel?

The row will fail with a row-level error. The importer requires an exact full name match to an active user and will never silently assign a task to the wrong person. If two users share the same name, the row will also fail. Resolve the name in your CSV and re-run.

Can I import tasks without linking them to a contact?

Yes. Contact fields are all optional. Tasks do not need to be linked to a contact record to import successfully.

What if my status value is not mapping correctly?

The most common cause is extra whitespace or punctuation in the CSV value, for example “Done ” instead of “Done”. Open the CSV in a text editor to confirm the value, or clean it up with a spreadsheet formula before re-importing.

Can I add task fields that are not in the supported columns list?

Not at this time. Columns outside the supported list will be ignored during import. If you need an additional field supported you can submit a product feedback request from the Help button inside Swivel