Skip to main content
If you already have a resume, you don’t need to retype it. Import the file and Reactive Resume builds a new, editable resume from it, section by section. Your original file is never changed.

Supported files

Reactive Resume works out the format from the file’s contents, so you don’t pick a type. A cover letter exported from Reactive Resume as JSON imports as a letter, not a resume.
An AI provider is an AI service you connect in Settings → AI & developer. Only a provider that is turned on and has passed its connection test counts. See Connecting an AI provider.

Import a file

In New, Resume language lets you choose the imported document’s language before saving. Leave it at Default to keep a Reactive Resume JSON file’s own language. Formats without a stored language use your interface language. An explicit choice changes generated headings, date words and text direction; it does not translate imported content. PDF and Word review also lets you change this choice before Create resume. Choosing Default there uses your current interface language, even if you chose another language earlier. Your source file and existing resumes remain unchanged.
1

Open the import

On Documents, select New in the sidebar (or press N), then select Import a resume and pick your file. On web, while AI connections load, a spinner occupies the import tile icon; the choices stay in place and remain available. A connection lookup failure appears below the choices with Try again; its space is kept so the choices stay steady through retry too. On your first visit, the empty Documents page has a Choose a file button that opens your device’s file picker directly; choose Resume language and press Import to continue after picking a file.
2

Or drop the file

Drag the file from your computer anywhere onto the Documents page. The page shows Drop to import; let go, choose Resume language, and press Import to continue. Cancel leaves your documents unchanged.
Documents displaying the Drop to import overlay while a fictional JSON file is dragged over it

Drop a supported resume file onto Documents

3

Choose local or AI reading

On web, PDF offers Read on this device (free). On mobile, the AI switch is off by default and the text layer is read on your server without an AI provider. Choose AI reading only if you want the complete PDF sent to the named provider. After you choose a Word file, the dialog explains that it needs AI and offers Set up AI without leaving your task. AI reading asks you to approve the destination before sending; Word sends extracted document text. JSON and LinkedIn imports never use an AI provider.
4

Wait for the three steps

The dialog shows Reading the file, Finding sections and Filling in entries, with a note beside each as it finishes. JSON and LinkedIn files take a moment; PDF and Word files read by an AI provider can take longer. Select Cancel, or close the import, to stop reading. An AI reading disconnects from the provider; the provider may still charge for work already performed. No resume is created until you select Create resume.
5

Check what was found

For PDF and Word files, nothing is created until you’ve seen what came in. The dialog lists each section it found with its number of entries. On web and mobile, it also lists any readable lines of your file that didn’t land in a section, such as a Patents section or a reference. Keep Add them as a section called “More from your file” to sort later on to bring them in as one section you can move or delete, or turn it off to leave them out. If no name, email or phone came through, it says so: add them in Basics. Select Create resume, or Choose another file.Word files are read with their page headers and footers, where many templates keep the name and contact details. For PDFs, a profile such as LinkedIn gets its address from the link behind its name, and an empty email from a mail link. Mobile reads this source text on your server without another AI request.If only part of the file could be compared, the review names that limit even when it lists leftover lines. This can happen with a long file, a page whose text couldn’t be read, or link targets that couldn’t be read. A scan, failed comparison or older server can leave no source text to compare after an AI reading; the review says so and asks you to check the file yourself. Reading a PDF without AI requires a server that supports previews and complete readable source text and links; update an older server or split a PDF longer than 30 pages before trying again. Nothing is saved until Create resume.
Check what was found dialog for Avery-Morgan.pdf, listing two profile entries and one education entry, with Choose another file and Create resume controls

Web review of a fictional PDF, before creating the resume

6

Open the new resume

When the import finishes, the dialog tells you how many sections and entries it found. Select Open in editor to start reviewing, or Stay here to keep working on Documents. The new resume has a New badge on its card.
Completed import dialog for Fictional-Resume.json with section and entry counts, Stay here and Open in editor

Review the import summary before opening the resume

New dialog with a spinner in the Import a resume icon space, alongside Copy a resume for a job and Start blank choices

AI connection lookup uses the import tile's icon space

New dialog with its AI connection lookup failure and Try again button below the document choices

Retry a connection lookup without moving the New choices

Review what came in

After an AI PDF or Word import, History on web and mobile shows the original connection, provider, model and request attempts for the saved resume and its versions. Creating the reviewed resume, copying it or restoring a version makes no additional AI request. Renaming or removing the connection doesn’t rewrite those saved sources. An older server may return the resume without source history; the app doesn’t repeat the AI reading to recover it. These private sources stay with owned copies and Export everything, outside the resume’s portable JSON, public page and employer downloads. Importing a portable JSON file doesn’t recover request history from another account or server.
History showing an Imported resume version with one AI request attempt and the original fictional provider and import-fast model after the connection was removed

Web History for a reviewed fictional Word import

When you open an imported resume from the dialog, the Write panel starts with a note naming the file you imported and counting its sections and entries.
Editor opened after importing the fictional JSON resume, with its import status message

Review the imported resume in the editor

Dates that couldn’t be read exactly, such as “Summer 2019”, are kept as written. Those entries open with Custom date text turned on and print the original wording. If some of that text can’t be read as a date at all, the note says how many fields need a look, and each of those date fields shows a Saved as written warning because date checks and sorting don’t work for that text. Keep the text, or enter a readable month and year and turn off Custom date text. See Entering dates. Close the note with × when you’re done. The imported resume is named after the person in it. If you already have a resume with that name, the headline is added (“Morgan Chen — Engineering lead”), then a number, so two imports stay apart in Documents and in pickers. Go through every section before you send the resume. PDF and Word files don’t store which text belongs where, so parts can land in the wrong section, lose formatting or come out slightly reworded. Structured files (Reactive Resume JSON, JSON Resume, LinkedIn) come in far more reliably.

Notes on each format

Download it from another resume with Download and the JSON format, or extract an individual resume JSON file from Export everything (see Downloading your resume). Custom styles written for the older styling system come in converted to the current one. If a version 5 resume contained cover letters, each one becomes its own letter in Documents, linked to the imported resume.
In LinkedIn’s settings, request a copy of your data and download the archive when LinkedIn emails you. Import the .zip file as it is; don’t unzip it. Reactive Resume reads Profile.csv, Positions.csv, Education.csv, Skills.csv, Languages.csv and Certifications.csv and ignores everything else, such as messages. The file never leaves your browser.
Choose AI reading to send the PDF (up to 10 MB) to the named provider. Local reading reads the PDF’s text in your browser and sorts it into sections itself, even when a provider is connected. This works best for simple, one-column resumes. A scanned PDF (a picture of a page) has no text to read and can’t be imported this way. With AI reading, a heading that only names its section (“EXPERIENCE”) takes the template’s own title in your resume’s language, and other headings set in capitals come in as sentence case (“Selected projects”).
Word files are always read by your AI provider, so set one up first. Use the modern .docx format; older .doc files are rejected before parsing. Open them in Word and save as .docx. Files can be up to 10 MB.

Troubleshooting

“This file type can’t be imported.” The file isn’t one of the supported types. Export your resume as PDF, Word or JSON, or use your LinkedIn data export. Word needs AI. After choosing a Word file, use Set up AI and test the connection, or select Back and import a PDF or JSON version instead. If a dropped file reaches the error Reading Word files needs an AI provider, Choose another file lets you pick a different file without closing the dialog, and Start blank gives you an empty resume.
Fictional Word file in Choose how to read this file, with the AI requirement, Set up AI and Back

Word reading offers AI setup; PDF and JSON provide a local alternative

“Couldn’t read the whole PDF.” Check that every page has readable text. If text or link targets cannot be read, try exporting a fresh copy; splitting a file won’t repair unreadable content. Text-layer import supports up to 30 pages, so split a longer PDF into smaller files and import each separately. A partial file is never imported as a complete resume. “This PDF is a scanned image.” Try the Word version of the resume, set up an AI provider, or start blank and paste your sections in. “This ZIP isn’t a LinkedIn data export.” Make sure you’re importing the archive from LinkedIn’s Get a copy of your data page. It must include Profile.csv, Positions.csv or Education.csv. “This PDF is password protected.” Save a copy without a password and import that instead. “The file couldn’t be read as a resume” (or “The file could not be read as a valid resume”, followed by the fields it couldn’t read). The JSON file is damaged or isn’t a resume. Check that it came from Reactive Resume or follows the JSON Resume standard. “The end date for your role at … isn’t a date.” A JSON Resume date must be a year, a year and month, or a full date (2024, 2024-03 or 2024-03-15). Fix that entry in the file, or import a PDF instead. An empty date (""), which many exporters write for a current role, is fine: the role imports as current. “Couldn’t reach the AI provider.” Your provider didn’t answer. Try again in a moment, or test the connection in Settings → AI & developer.