ICD-10 Diagnosis Extractor
Most veterans have hundreds or thousands of pages of medical records: one doctor or a dozen, one file or a folder full of them, spread across years. Somewhere in there are the diagnosis codes that prove you have the condition you are claiming. This free Windows program reads those files on your own computer and lists every diagnosis code it finds, together with the file it came from and the page it is on. Nothing is uploaded. Your computer does not even need to be connected to the internet.
Download
- Version: checking…
- Size: checking…. You need about that much free disk space.
- Runs on: Windows 10 or Windows 11.
- Price: free, like everything else on this site. No account, no signup, no ads.
- SHA-256 checksum:
checking…
Windows will warn you the first time. The program is not yet signed with a paid publisher certificate, so Windows SmartScreen shows a blue "Windows protected your PC" box that says unknown publisher. That message means Windows has not seen this program before. It does not mean anything was found in it. To run it anyway, click More info, then Run anyway. If you would rather not, two honest alternatives are below: check the file against the checksum above, or read the source code and build it yourself.
How it works
Point it at your records
Pick one file or a whole folder. It reads PDF, Word, text and HTML files. Scanned pages and photos of paper records are read with text recognition built into the program, which is slower, so a folder of scans takes longer than a folder of typed reports.
Let it run
It works through every file and writes a plain text report. Every code is checked against the official CDC code list, so look-alike numbers like device models, account numbers and medicine doses are thrown out instead of being reported as diagnoses.
Click Copy ICD-10 codes
The report ends with a clean list of just the codes, and the window has a button that copies that list for you.
Paste them here
Bring the list to our ICD-10 to VA code lookup and see which VA diagnostic code each diagnosis is most commonly rated under.
Why the page numbers matter
A list of codes on its own is only half of what you need. The report gives you the code, the file name it came from, and the page or line number it sits on, plus the nearest date it could find:
That is the difference between saying "I have been diagnosed with sleep apnea" and being able to point at the exact page in the exact file. It saves you hunting through the same 900 pages twice, and it gives the VA reviewer working your claim a citation they can jump straight to instead of a stack to search. Both sides spend less time looking.
Your records never leave your computer
Medical records are about the most private paperwork a person owns, and the usual way a tool like this works is to upload your files to somebody's server. This one does not.
- No uploads: the program makes no network calls at all. Nothing is sent to us, to an AI service, or anywhere else.
- No internet required: the text recognition runs on your machine too, so you can unplug the network entirely and it still works. That is a fair way to prove the claim to yourself.
- Nothing is kept here: we never see your files, so there is nothing of yours for us to store, lose, or be asked to hand over.
- The paste is anonymous: when you bring the code list to the VA code lookup, you are pasting generic diagnosis codes. No name, no date of birth, no file number, no account, no login. A code like G47.33 says "obstructive sleep apnea" and nothing about who you are.
Do not take our word for it: read the code
A privacy promise you cannot check is just a sentence on a web page. The entire program is published, free to read, free to download, and free to compile yourself under the MIT license. If you want to confirm that it really never touches the network, or you would rather build it from source than run a program you downloaded, the source is right here.
Read the source code on GitHub →
If you have a VSO, an attorney, or a family member who is handy with computers, this is the link to send them.
Optional: check the file is the one we published
Every file has a fingerprint, a long string of letters and numbers that changes completely if even one byte of the file is different. The fingerprint of our file is printed above. If your copy produces the same fingerprint, it is exactly the file we published, and nothing altered it along the way.
Most people skip this and that is fine. It takes about two minutes and needs no special software. Here is the whole thing, step by step.
- Open your Downloads folder, the one where the file landed.
- Hold down the Shift key and right-click on any empty white space inside that folder.
- In the menu that appears, click Open in Terminal, or Open PowerShell window here, or Open command window here. Whichever one you see is fine, the command below works in all of them. A black or dark blue window opens. That is normal.
- Type this line exactly, then press Enter:
certutil -hashfile ICD10-Extractor.zip SHA256
- Wait a few seconds. It prints three lines. The middle one is a long string of letters and numbers. That is your file's fingerprint.
- Compare that string to the SHA-256 checksum printed above. Checking the first six characters and the last six is enough. If they match, your file is good.
If it does not match, do not run the file. Delete it and download it again. A mismatch usually just means the download was interrupted partway through.
If the file name is different. Use the name you actually have. You can also type certutil -hashfile ICD and press the Tab key, and Windows fills in the rest of the name for you, then type a space and SHA256 before pressing Enter.
If you see "is not recognized as an internal or external command". You typed a command the window does not know. certutil above works in every Windows terminal, so check the spelling and try again. (The similar-looking Get-FileHash only works in PowerShell, not in Command Prompt, which is why we do not use it here.)
What it misses
The program reports what it can find, and it does not find everything. It is a starting point for organizing your file, not a substitute for reading it.
- Hard to read pages: handwriting, faint print, unusual layouts, and photographs of paper records can all defeat it.
- Dates are approximate: it reports the nearest date it can see near the code, which is not always the date of the diagnosis.
- Codes can be wrong: a code can be misread, or tied to the wrong date or the wrong visit.
- Other coding systems: older records may use ICD-9 codes, and some use SNOMED CT. Those are listed too and labelled with the system they came from. Diagnoses written out in words with no code beside them show a dash instead of a code.
- Confirm each item: before you rely on anything in the report, open the file and page it points to and read it yourself.
The program will not run until you have read and accepted these terms once. It is not medical or legal advice, and it does not tell you what to claim or predict what VA will do. It reports what is written in your records.
Related Tools and Guides
This page and this program are educational and are not legal or medical advice. The program is provided as-is with no warranty. For help with a specific claim, work with a VA-accredited representative.