Back to Reactive Resume

Importing applications from CSV

docs/guides/importing-applications-from-csv.mdx

5.3.04.1 KB
Original Source

Use CSV import when you already track applications in a spreadsheet and want to move them into Reactive Resume.

Open CSV import

<Steps> <Step title="Go to Applications"> In the dashboard sidebar, click **Applications**. </Step> <Step title="Click Import CSV"> If you have no applications yet, click **Import from CSV** in the empty state. Otherwise, click **Import CSV** in the page header. </Step> </Steps> <Frame caption="CSV import sheet with a recognized preview"> </Frame>

Prepare your CSV

The importer uses the first row as headers. Each imported row must include a company and role.

Supported headers include:

FieldRecognized headers
CompanyCompany, Employer, Organization
RoleRole, Title, Position, Job Title
StageStage, Status
LocationLocation
SalarySalary, Salary Range, Compensation
SourceSource
NotesNotes, Note
Job posting URLURL, Link, Job URL, Job Posting
TagsTags
Contact nameContact Name
Contact roleContact Role
Contact labelContact Type
Contact emailContact Email
Contact phoneContact Phone

Tags can be separated with commas, semicolons, or vertical bars.

Each row can carry one contact. A contact needs a Contact Name, and Contact Email must be a valid email address — if either is wrong, the contact is dropped and the application still imports.

csv
Company,Role,Stage,Location,Salary,Source,Tags,Contact Name,Contact Email,Contact Phone
Stripe,Frontend Engineer,applied,Remote,$180k,LinkedIn,remote;react,Jane Doe,[email protected],+1 555 0100

Import applications

<Steps> <Step title="Upload or paste rows"> Upload a `.csv` file, or paste CSV rows directly into the **CSV data** field. </Step> <Step title="Review the preview"> Reactive Resume shows how many rows are ready to import, which columns it recognized, and how many rows were skipped. </Step> <Step title="Fix skipped rows"> Rows without a company or role are skipped. Add the missing values before importing if you want those rows included. The preview also counts skipped contacts — those rows still import, just without the contact. </Step> <Step title="Import"> Click **Import**. Imported applications are added to your Application Tracker. </Step> </Steps>

Use valid stages

The Stage column is optional. If you include it, use one of these values:

  • saved
  • applied
  • screening
  • interview
  • offer
  • rejected

If a row has an unrecognized stage, the importer ignores that stage value and uses the default application stage.

Import large files

Reactive Resume imports up to 500 applications at a time. If your CSV has more than 500 valid rows, split it into smaller files and import each file separately.

<Tip> Import first, then use the table view to select multiple applications and apply tags, move stages, archive rows, or delete rows in bulk. </Tip> <Tip> MCP clients can also import application rows directly with `import_applications`. See [Managing applications with MCP](/guides/managing-applications-with-mcp) for agent prompt examples. </Tip>

Troubleshooting

Some rows were skipped

Make sure every row has both a company and a role. These fields are required.

A contact did not import

The contact needs a Contact Name, and Contact Email must be a valid address. The application imports either way — fix the contact columns and import that row again if you want the contact.

A column was not recognized

Rename the header to one of the recognized names in the table above, then import again.

Tags did not split correctly

Separate tags with commas, semicolons, or vertical bars, such as remote;react or frontend|senior.

A stage did not import

Use lowercase stage values such as applied or interview. Custom stages are not supported.