Extract data from resumes and CVs

Turn resume PDFs and scanned CVs into structured candidate data: contact info, work history, education, and skills — ready to import into an ATS or compare across a stack of applicants.

Drop a PDF or image here, or click to browse
Max 20 MB per file · PDF, PNG, JPG, WEBP, HEIC
Pro: drop up to 25 files at once for bulk extraction
What to extract from this full resume?
or describe it yourself
Extracting full resume

Why this matters

Resume parsing has traditionally needed brittle rule-based parsers per layout. With a multimodal LLM, ExtractFox handles wildly different CV designs — including infographic-style layouts and two-column templates — without per-template tuning.

How it works

  1. Step 1
    Upload the resume

    PDF or image. Multi-page CVs are fine.

  2. Step 2
    Get structured profile data

    Name, contact, headline, summary, skills, and full work and education history.

  3. Step 3
    Send to your ATS

    JSON for direct API ingest, or Excel for a candidate spreadsheet.

Fields extracted

full_nameemailphonelocationheadlinesummaryskills[]experience[].companyexperience[].titleexperience[].start_dateexperience[].end_dateexperience[].descriptioneducation[].institutioneducation[].degreeeducation[].fieldeducation[].start_dateeducation[].end_date

Sample output

Example output from a software engineer resume

full_nameJane Doe
emailjane@example.com
phone+1 415-555-0182
locationSan Francisco, CA
headlineSenior Software Engineer
skills
  • TypeScript
  • React
  • Node.js
  • PostgreSQL
  • AWS
experience
companytitlestart_dateend_datedescription
Acme Corp.Senior Engineer2023-06Led migration to event-driven architecture; mentored 4 junior engineers.
Beta IndustriesSoftware Engineer2020-012023-05Built customer-facing analytics dashboards in React.
education
institutiondegreefieldstart_dateend_date
UC BerkeleyB.S.Computer Science2016-092020-05

Frequently asked questions

How do I parse a resume PDF into structured data?+

Drop the PDF here, click Extract, and you'll get a JSON object with name, contact, headline, skills, full work history, and education. Download as JSON for an ATS import or as Excel for a recruiter spreadsheet.

Does it work on infographic-style or two-column resumes?+

Yes. The model reads visual layout, not just text flow, so designer CVs and two-column templates parse as well as plain ones.

Can I integrate this with my ATS?+

Yes — the JSON output is stable and easy to map into Greenhouse, Lever, Workable, or a custom ATS. The REST API is on the paid plan.

Does it extract dates and durations consistently?+

Dates come back in YYYY-MM format where the resume specifies a month, or YYYY when only the year is shown. Current roles return null for end_date so you can compute tenure.

Can I extract data from a LinkedIn profile?+

Yes — see the dedicated LinkedIn profile extractor. Save the LinkedIn profile to PDF (Profile → More → Save to PDF), drop it there, and you'll get a structured candidate object including headline, current company, and tenure that the resume schema doesn't surface.

What about non-English resumes?+

Multi-language resumes work. Names, companies, and dates extract reliably; long-form descriptions come back in the original language.

Related extractors

Used by

Compared to alternatives