Rx Label Reader

Snap or upload a prescription label — on-device OCR extracts the drug name, dosage, and schedule. Save medication cards and get timed reminders. Nothing leaves your device.

1 — Scan or upload a label

📷
Tap to take a photo or choose a file
Supports JPG, PNG, WebP, HEIC · processed locally
Label preview
My Medications

How it works

1Capture label Take a photo with your phone camera or upload an existing image of your prescription bottle, box, or leaflet.
2On-device OCR Tesseract.js reads the text directly in your browser using WebAssembly. The image never touches a server.
3Smart parsing Regex patterns extract the drug name, dosage (mg / mcg / units), frequency (twice daily, every 8 hours, etc.) and refill date from the raw text.
4Confirm & save Review the auto-filled fields, correct anything the OCR missed, set reminder times, then tap Save. Cards are stored in localStorage.

Reminders are scheduled with setTimeout (while the tab is open) or via the Notification API + Service Worker (if you install the PWA). All data stays on your device — no account, no cloud.

Frequently asked questions

Is my prescription information sent to any server?
No. The OCR engine (Tesseract.js) runs entirely in your browser using WebAssembly. The label photo and all extracted text remain on your device and are stored only in your browser's localStorage. There is no account system and no backend — you can use this tool while offline after the first load.
How accurate is the prescription label OCR?
Accuracy depends on photo quality and label font. Clear, well-lit close-up photos of standard pharmacy fonts typically yield 85–95% accuracy on key fields. The tool highlights auto-filled fields so you can easily spot and correct errors before saving. Always verify the drug name and dosage against the physical bottle.
Why do reminders only fire when the browser is open?
Standard browser notifications require the page to be open unless the site is installed as a PWA with a registered Service Worker. Tap "Install" in the banner at the top of this page (when your browser offers it) to enable background reminders. On iOS Safari, use the Share → Add to Home Screen flow to install.
What information does the parser try to extract?
The regex parser looks for: (1) Drug name — the first capitalized word(s) before a dosage marker; (2) Dosage/strength — numeric value followed by mg, mcg, ml, units, IU, or g; (3) Frequency — common pharmacy abbreviations and plain-English phrases like "twice daily," "every 8 hours," "QID," "PRN," and more; (4) Refill/expiry date — date patterns in MM/DD/YYYY or Month DD, YYYY format.
Can I add medications manually without scanning?
Yes. Tap "Add manually" below the dashboard to open the same confirmation form pre-filled with blank fields. You can type the drug name, dose, frequency, and refill date directly — no photo needed.