Extract data from resumes and CVs
Unstract parses resumes and CVs in any layout and language, from PDFs and Word files to scans and phone photos, and returns structured candidate profiles to your ATS or HRIS.
strong on SAP IBP, call Tue re: relocation
Page 1 of 2
{ "name": "Daniela Voss", "email": "dvoss@example.com", "phone": "(614) 555-0187", "location": "Columbus, OH", "current_title": "Senior Supply Chain Analyst", "current_employer": "Halverson Foods Co.", "degree": "B.S. Supply Chain Management", "certifications": "APICS CPIM", "languages": "English, German", "total_years_experience": 8.4}
Trusted by HR and payroll teams around the globe
Every candidate formats a resume their own way
A plain one-column PDF reads easily. The applications behind one open role usually look more like this.
Printed at a job fair, photographed, uploaded crooked
Two columns, tables or a design template, all for one role
Reference check forms filled in by hand, dates corrected
CV, cover letter, references and certificates in one file
Job board exports and CVs in German, Spanish or Polish
Recruiters retype each one into the ATS or skim it in a hurry, and good candidates sit unread while the role stays open.
Unstract reads every resume and CV, pulls the fields your team searches on, and posts a clean candidate profile to your ATS or HRIS.
Read the resume, structure the profile, run the screening
LLMWhisperer reads the page, Document Studio turns it into fields, and Flow runs the screening around them. Each product works alone, so start with the resume parser and add the rest when your recruiters want it.
Parse any resume or CV into text that keeps its columns in order
A two-column resume puts skills on the left and work history on the right. Read naively, the two run together and a skill lands inside a job title. LLMWhisperer keeps each column, table and section intact, on PDFs, Word files, scans and phone photos, so every date stays next to the role it belongs to.
Send the text to your own LLM, or make parsing the first step of a larger hiring process.
Learn more about LLMWhispererTurn every resume into one candidate profile your ATS can search
Describe the profile you want, contact details, each role with employer, title and dates, degrees, certifications, skills and languages, and every resume comes back as the same JSON record, whatever template the candidate picked. Resume parsing works the same on a CV in German as on one in English. A reference check form that disagrees with the resume comes back flagged, with both values side by side.
Deploy it as an API behind your careers page, run it as an ETL pipeline over a shared folder, or make it one step in an orchestrated screening process.
Learn more about Document StudioRun resume screening from application to shortlist
Resumes and cover letters are picked up from your ATS, job boards and the recruiting inbox, parsed into profiles, and checked against the must-haves your recruiters set for the role: required certifications, years of experience, location. Each check carries the line of the resume that answers it, and structured profiles go back to your ATS, such as Greenhouse or Workday Recruiting, so recruiters filter candidates instead of opening every file.
Borderline matches, resumes with missing information and every potential rejection stop for a recruiter. Unstract never turns a candidate down on its own; a person makes every hiring decision.
Learn more about FlowParse your own resumes today. Bring the screening to a consultation.
Start for free to run parsing and extraction on a folder of resumes. Screening built around your requisitions starts with a conversation.
Resumes, CVs and the paperwork candidates send with them
Documents
- Resumes in any layout or template
- Academic CVs with publications
- Reference check forms
- Cover letters
- Job application forms
- Professional certificates and licences
- Degree certificates and transcripts
- Job board and careers page exports
- Portfolios and work samples
- Any other candidate paperwork
Fields captured
For everyone who reads resumes for a living
Every applicant for a requisition as a searchable profile, so the search starts with skills and dates, not with opening PDFs.
Candidate CVs from every client and job board in one consistent format, ready to submit or reformat without retyping.
Thousands of applications across client roles parsed the same way, with reference check forms read alongside them.
Profiles for hired candidates arrive in the HRIS already structured, and reference checks are filed against the right person.
Less time keying candidates, more time talking to them
Candidate data stays protected
A resume holds a candidate's home city, phone number, email and full work history, shared for one application. Under GDPR that personal data can only be kept as long as the hiring purpose needs it.




- Resumes and reference forms are encrypted in transit and at rest.
- Candidate documents never train any model.
- Access by role, requisition and client, with every corrected field logged against the candidate's record.
- Retention you set: resumes are deleted when your hiring or talent pool retention period ends.
- Public sector employers and agencies that must keep candidate data on their own servers can run Unstract self-hosted.
What recruiting teams ask before they start
Resume parsing turns a resume or CV into structured data: name, contact details, each job with employer, title and dates, education, certifications, skills and languages, each in its own field. A resume parser does this so a recruiter can search and filter candidates in the ATS instead of reading every file by hand.
Test any option on your own applications, not a vendor's samples. Look for one that keeps two-column layouts and tables in order, reads scanned and photographed CVs, handles every language your candidates write in, returns the same fields for every resume, and lets you choose what to extract and how long the files are kept.
Yes, at the output. You define which fields Document Studio returns, so an anonymised profile carries work history, skills, education and certifications and leaves out the name, contact details, photo and date of birth. Unstract builds that profile from the extracted fields; it does not black out text on the original file.
Yes. LLMWhisperer reads more than 300 printed languages, and the extracted fields keep the same names whatever language the CV is in. Documents are encrypted, never used to train models, and deleted on the retention schedule you set.
Yes. Resume OCR in LLMWhisperer straightens skewed phone photos, cleans up scans and repairs broken PDFs before it reads them, and it keeps the layout, so a job title is still read beside its dates.
Yes. Each column and table is kept as it sits on the page, so skills in a sidebar stay separate from work history, and Document Studio finds each field by what it is, not where the template put it.
Yes. Document Studio deploys a resume parsing API: POST a resume from your careers page or ATS and get the candidate profile back as JSON. Teams that prefer files run the same extraction as an ETL pipeline from a shared folder.
No. Unstract extracts what the resume says and shows where it says it. Shortlists and hiring decisions stay with your recruiters and hiring managers.
Yes, typed or filled in by hand. The referee's name, relationship, confirmed dates and title and the rehire answer come back as fields, and a title or date that differs from the resume is flagged.
The field comes back empty and flagged rather than guessed, with the part of the page it came from, so a recruiter can check it in seconds before the profile reaches the ATS.
Unstract is SOC 2, ISO 27001, GDPR and HIPAA compliant. Resumes are encrypted, never used for training, and kept only as long as you choose; self-hosting is available. Your security team can review each control in the Trust Center.
Not to try it: start for free and upload a handful of resumes. To run the screening around your ATS, we build it with you in a consultation, and most teams screen their first live requisition within days.
Bring the resumes from one open role
Two-column templates, scanned CVs, CVs in other languages and the reference check forms. We parse them in the session and you see each profile as your ATS would receive it.









