DicomScrub

Anonymize DICOM files without uploading them anywhere.

DicomScrub de-identifies CT, MRI, X-ray and other DICOM studies to the DICOM PS3.15 Basic Profile, entirely inside your browser. No server, no account, no upload. Unplug the network and it still works.

Checking network isolation… CSP: connect-src 'none' Open-source engine Consistent UID remapping Audit log for IRB

1. Add files

Drop DICOM files or folders here
Any extension (.dcm, .ima, no extension). DICOMDIR is skipped.

2. De-identification options PS3.15 Annex E

Leave blank for a random offset (±30…3650 days). The offset is written to the mapping file.
Patients become ANON001, ANON002… consistently across the batch.
Actions: keep remove empty replace VALUE. Tags as 8 hex digits.

Preview & burned-in text Pro

Select a file to preview. Uncompressed images only; compressed studies (JPEG/J2K/RLE) are anonymized but not previewed.
Boxes are applied to every frame of the selected file. Pixel data is blacked out irreversibly in the output.

3. Anonymize

Waiting for files
The mapping file re-identifies patients. Store it separately from the anonymized data, under your institution's key-management policy.

Change log for selected file

How it works

Runs in a Web Worker

Your files are read by JavaScript in your own browser tab. The page's Content-Security-Policy forbids every outgoing connection, so even a bug could not upload anything.

Standard-based rules

Every attribute in DICOM PS3.15 Table E.1-1 is removed, emptied, replaced or re-mapped exactly as the Basic Profile requires. Options map to the standard's named options.

Consistent identifiers

Study, series and instance UIDs are replaced with fresh 2.25 UIDs, consistently across the batch, so viewers still group your studies correctly.

Proof, not promises

Open DevTools → Network. After the page loads you will see zero requests while processing. Or just turn off Wi-Fi. Read the full trust page.

FAQ

Is this HIPAA / GDPR compliant?

DicomScrub implements the de-identification profile defined by the DICOM standard (PS3.15 Annex E), which is the accepted technical basis for both HIPAA Safe Harbor de-identification and GDPR anonymisation of imaging data. Because no data leaves your computer, no Business Associate Agreement or data processing agreement is needed with us. Compliance of your overall workflow remains your responsibility.

What about text burned into the image pixels?

Header anonymization cannot remove text rendered into pixels (common on ultrasound, secondary captures and some CR). Select a file, draw boxes over the text, and DicomScrub blacks them out on every frame. Compressed images must be decompressed first (e.g. dcmtk dcmdjpeg).

Does it work with multi-frame, RT, SR, or enhanced objects?

Yes. The engine walks every sequence recursively. Structured Reports have their Content Sequence removed as the standard requires; RT Structure Sets keep referenced-frame-of-reference linkage through consistent UID remapping.

How large a batch can I run?

The free tier processes 20 files per batch; Pro removes the limit. Practical limits are your machine's memory: a 2 GB CT study works fine on a laptop with 8 GB RAM.

Can I verify what changed?

Every run produces an audit CSV listing each tag, its action and its before/after value, plus a methods statement you can paste into an IRB application or a paper.