How to Import a Linear Project Into Notion With Status Mapping
🔍 WiseChecker

How to Import a Linear Project Into Notion With Status Mapping

You have a project in Linear with tasks, assignees, and statuses like In Progress or Done. You need to bring that project into Notion without losing the workflow stage each task is in. Notion’s built-in import tool can read Linear’s JSON export and map Linear statuses to Notion status properties automatically. This article walks you through exporting your Linear project, preparing the data, running the import in Notion, and verifying that every status maps to the correct Notion select value.

Key Takeaways: Importing a Linear Project With Status Mapping

  • Linear > Settings > API > Export as JSON: Generates a complete project export including task titles, descriptions, assignees, and statuses.
  • Notion Settings & Members > Import > Linear: The official import tool that reads the JSON file and creates a new database with mapped statuses.
  • Status property column in Notion: Each Linear status becomes a select option; you can rename or recolor options after import without affecting task data.

ADVERTISEMENT

How Linear Statuses Map to Notion Properties

Linear stores task status as a single-select field with predefined values such as Backlog, Todo, In Progress, In Review, and Done. Notion’s import tool reads the JSON export and creates a corresponding Select property in the new database. Each unique Linear status becomes one select option. If your Linear project uses custom workflow states like “Awaiting QA” or “Blocked,” those also become select options. Notion does not create a Status property type with automated progress bars; it uses a plain Select property. You can later convert the Select to a Status property if you want the visual progress bar and the automated “Done” trigger. The import preserves task titles, descriptions, assignee names, and any labels attached to tasks. Comments and attachment links are not imported. The JSON file must be exported from Linear’s API section, not from a CSV export, because the JSON contains the necessary status identifier for each task.

Steps to Export Your Linear Project and Import Into Notion

  1. Export the Linear project as JSON
    Open Linear in your browser. Go to Settings > API. Under the Export section, click Export as JSON. Linear compresses your entire workspace data into a zip file. Download that zip file and extract it. Inside you will find a JSON file named something like linear-export-2025-01-15.json. Do not rename the file. Place it in a folder you can easily locate.
  2. Open the Notion workspace where you want the project
    Sign in to Notion. Navigate to the workspace or page where the imported project database should appear. If you want the database on a specific page, open that page first. Notion creates the new database inside the page you have open when you start the import.
  3. Start the Linear import in Notion
    Click Settings & Members in the left sidebar. Select the Import tab. Under the heading “Import your data,” find Linear and click the Import button. A file picker dialog opens.
  4. Upload the JSON file
    Navigate to the extracted JSON file and select it. Notion begins processing the file. This can take a few seconds to a minute depending on the number of tasks. Do not close the browser tab during processing.
  5. Map Linear statuses to Notion select options
    After processing, Notion shows a mapping screen. For each Linear status found in the file, you see a dropdown menu. Select the corresponding Notion select option you want to use. If the status does not have a matching option yet, type a new option name directly into the dropdown field. Notion creates that option in the new database. Repeat for every status. Common mappings: Linear “Todo” to Notion “Not started,” Linear “In Progress” to Notion “In progress,” Linear “Done” to Notion “Complete.” Click Confirm Mapping.
  6. Review the imported database
    Notion creates a new database page inside the page you had open. The database is named “Linear Import” by default. You can rename it by clicking the name at the top of the page. Each task row shows the title, description, assignee, and the status you mapped. The status column is a Select property. If you prefer the Status property with a progress bar, click the property header, select Edit property, and change the property type from Select to Status. All existing select values become status options.
  7. Verify status mapping accuracy
    Open a few tasks from each original Linear status group. Check that the Notion status matches the original Linear status. If you find a mismatch, you can edit the task’s status manually. To fix a systematic mapping error, delete the database and reimport with the correct mapping choices.

ADVERTISEMENT

If the Import Shows Missing or Incorrect Statuses

Some tasks show no status after import

This happens when a Linear task had no status assigned at export time. Linear’s API allows a task to exist without a status. Notion leaves the status property empty for those tasks. To fix, filter the database for empty status, then batch-edit the status column to your desired default value.

Status options appear with unexpected names

Linear’s JSON includes the internal status identifier, not always the display name. For example, a custom status named “QA Check” might appear as “qaCheck” in the mapping screen. Rename the option in the Notion database after import. Click the status property header, select Edit property, then click the option name and type the correct display name.

Duplicate status options created

If you map the same Linear status to different Notion option names in the mapping screen, Notion creates two separate options. Delete the duplicate option by editing the property and clicking the X next to the unwanted option. Then reassign all tasks that used the duplicate to the correct option.

Linear Status Import vs Other Notion Import Methods

Item Linear JSON Import via Notion Manual CSV Import
Status mapping Automatic mapping screen with dropdowns You must create a Select property and enter each status manually
Assignee preservation Assignee names imported as text You must create a People property and assign users manually
Label import Labels imported as Multi-Select property Not supported unless you add columns in the CSV
Attachment links Not imported Not imported
Comments Not imported Not imported

The official Linear import saves significant time because status mapping is handled in a single screen. Manual CSV import requires you to rebuild relationships and assign statuses by hand. For projects with more than 20 tasks, the JSON method is the faster choice.

You can now move your Linear project into Notion with all task statuses preserved as select options. After the import, try grouping the database by the status column to see your workflow at a glance. If you later add new statuses in Linear, remember to re-export and reimport only the changed tasks, or update the Notion status options manually to keep both tools in sync.

ADVERTISEMENT