Frequently asked questions

Short answers, with links to the longer ones. If something here contradicts what the app actually does, the app is right and this page is a bug.

Is it free? Do I need an account?

Free, and there is no account. There is no sign-up, no login, no email wall and no paid tier gating the parse, the score, the editor or the PDF export. The project is open source under the Apache 2.0 licence.

Is my resume uploaded anywhere?

No. The PDF is read by JavaScript in your browser tab; there is no upload step and no application server behind the site. Neither the PDF bytes nor the text extracted from them are carried by any request the app makes. Some other things do go over the network — job-search keywords, a GitHub star count, analytics on this hosted build — and they are itemised on the privacy page rather than glossed over.

Does this tell me what an applicant tracking system will see?

It does not, and any tool claiming otherwise is guessing. Applicant tracking systems are closed, they differ from each other, and their parsers change. What OfflineCV shows you is one generic text extractor’s reading of your file. That is genuinely useful — if a generic parser cannot find your job titles, that is a fragility worth fixing — but it is a signal, not a prediction about a named employer’s software.

Why is a field empty or wrong?

Usually the layout. Text in a two-column grid, inside a header or footer, drawn within a graphic, or set in a font with no usable character mapping can all come out reordered or missing. A resume exported as a scanned image contains no text at all, so nothing can be extracted from it. Compare the extracted text against your PDF: where they diverge is where a real parser is likely to diverge too.

What does the score actually measure?

Three things, weighted: how specific your bullets are (0.4), how well-structured the entries and bullets are (0.3), and how much of the expected content the parser recovered (0.3). That total is then multiplied down where the layout probes fired — to 0.85 for one trigger, 0.7 for two or more, and to zero for a scanned file. It is deterministic and anonymous: the same text always yields the same number. The full breakdown is here.

Is a low score bad news?

It is information about the file, not a judgement of your career. A strong candidate with a heavily designed template can score poorly because the design defeats extraction. That is exactly the case the tool is built to surface, and it is usually fixable by exporting a plainer version for applications while keeping the designed one for humans.

Can I fix the resume here, or only see the problems?

You can fix it. Every extracted field is editable in place, and your edits are stored as overrides on top of the parse rather than overwriting it, so the original reading stays visible. You can then download a plain single-column PDF built from the corrected fields. That export is tested to re-parse to the same fields it was built from.

What is the AI part, and does it send my resume to a model provider?

The AI features run a small language model inside your browser using WebGPU, and they are optional. The model weights are downloaded once from a public CDN and cached; the prompts built from your resume are evaluated locally rather than sent to a provider. If your browser or device does not support WebGPU, those features are unavailable and everything else still works.

What can it do besides parse a PDF?

Two more lanes. JD fit takes a job description — pasted, or fetched from a Greenhouse, Lever, Workable, Recruitee or Ashby posting URL, which contacts that job board — and shows which of its requirements your resume gives evidence for, then helps rewrite toward the gaps. Find jobs searches public job feeds using a query built from your resume — editable before you search — ranks results by fit, and keeps the ones you care about in a local tracker.

Are the job results every job that exists?

No, and the app labels them as a sample. They come from a few free, public, keyless feeds that skew remote and technical. They are a starting point, not a complete view of the market.

Where is my data if I close the tab?

Saved resumes and tracked jobs live in your browser’s IndexedDB storage on your own disk. Browsers can clear that — Safari does so after seven days without a visit, and any browser may evict under disk pressure — so the resume library includes a JSON export for taking your own backup. Clearing site data removes everything.

Can I run or modify it myself?

Yes. The source is public under Apache 2.0 and the app is static files, so a local build serves the whole thing from your own machine, without the analytics this hosted site carries. See the open source page.

Try it on your own resume