Free online OCR · 17 languages
Free Image to Text Converter
Convert images to text instantly. Upload a photo, screenshot or scan, extract the text with OCR running inside your browser, then edit, copy or download it as a .txt file.
Your images stay on your device.
Image
Drop images here or browse files
JPG, PNG, WebP, BMP, GIF or TIFF · up to 10 MB and 50 megapixels each · up to 10 images. You can also paste with Ctrl+V.
Images
Preparing image
0%
Extracted text
0 characters · 0 words
Your text will appear here
Add an image and choose Extract text. You can edit the result before copying or downloading it.
OCR is not 100% accurate. Results depend on image quality, fonts, language and handwriting — please review the text before using it.
How to convert an image to text
-
Add your image
Drop an image on the upload area, choose browse files, or paste a screenshot with Ctrl+V. You can add up to 10 images.
-
Pick the language
Select the language of the text from the OCR language menu. Rotate the image if the text is sideways, and try Enhance image for faint text.
-
Extract the text
Choose Extract text. Progress is shown while the engine and language data load and the text is recognized.
-
Copy or download
Fix any mistakes in the editor, then Copy text or Download TXT. Line breaks and paragraph gaps are kept where possible.
Supported OCR languages
Choose any of these 17 languages in the converter. Each language’s data is downloaded only when you first use it — for example about 2.9 MB for English, 1.4 MB for Hindi, 1.2 MB for Gujarati and 1.0 MB for Urdu.
- English
- Hindi
- Gujarati
- Urdu
- Marathi
- Bengali
- Tamil
- Telugu
- Arabic
- Spanish
- French
- German
- Italian
- Portuguese
- Russian
- Chinese (Simplified)
- Japanese
Dedicated guides with language-specific tips: Hindi, Gujarati and Urdu image to text.
Supported formats
- JPG / JPEG photos and scans
- PNG screenshots
- WebP
- BMP
- GIF first frame
- TIFF first page, converted in your browser
Limits: 10 MB and 50 megapixels per image, 10 images at a time. Images larger than 4,000 px on the longest side are scaled down before OCR to keep your browser responsive. SVG, HEIC and PDF files are not supported.
What affects OCR accuracy
- Clear, printed text with good contrast works best; letters should be at least about 20 px tall in the image.
- Blur, shadows, glare, low-resolution screenshots and decorative fonts all reduce accuracy.
- Handwriting is usually recognized poorly.
- The selected language must match the text. Mixed-language images may need one pass per language.
- Tables and multi-column layouts may not keep their original structure.
Tips for better results
- Crop to the text. Remove backgrounds, photos and unrelated text before uploading.
- Keep it level. Photograph pages straight on and use the rotate buttons so lines run horizontally.
- Use enough resolution. Zoom in before taking a screenshot of small text instead of enlarging it afterwards.
- Avoid glare and shadows. Even lighting matters more than camera quality.
- Try “Enhance image” for faint, coloured or low-contrast text, and compare the results.
What people use it for
- Copying text from screenshots of apps, websites, slides and error messages.
- Turning scanned pages, letters and printed forms into editable text.
- Extracting text from photos of book pages, notices, menus and signs.
- Getting Hindi, Gujarati, Urdu and other non-Latin text as Unicode that you can paste anywhere.
Private by design
Most online OCR tools upload your image to a server. This one does not: text recognition runs on your own device using Tesseract.js, an open-source OCR engine compiled to WebAssembly. Your images and the text you extract are never sent to this website.
To work, your browser downloads the OCR engine and language files from the public jsDelivr CDN, which receives standard request information such as your IP address. There are no accounts. The site uses Google Analytics to count visits and shows ads from Google AdSense; both may use cookies, and neither ever gets your images or extracted text. Read the Privacy Policy for details.
Frequently asked questions
Are my images uploaded to a server?
No. Images and the extracted text are processed by JavaScript inside your browser and are never sent to this website’s server or to any OCR service. The only downloads are the open-source OCR engine and language files, fetched from the jsDelivr CDN.
How do I copy or download the extracted text?
After extraction, edit the text in the box on the right if needed, then choose Copy text to put it on your clipboard or Download TXT to save a UTF-8 .txt file. For a single image the file is named after the image.
Why is the first extraction slower?
The first time you use a language, your browser downloads the OCR engine (about 4 MB) and that language’s trained data (about 1–3 MB for most languages). Your browser caches these files, so later runs start faster.
Can it read handwriting?
Only neat, clearly separated handwriting has a chance of being read, and results are often poor. The engine is designed for printed text.
Can I extract text from several images at once?
Yes. Add up to 10 images and they are processed one after another. The text from each image is combined into one result, with the file name above each section.
Can I convert a PDF?
Not directly. Export or screenshot the PDF page as a PNG or JPG first, then add the image here.
Does it work on mobile phones?
Yes, in current versions of Chrome, Safari, Firefox and Edge. Large photos take longer on phones; if processing fails, try a smaller image or fewer images at once.
Does it work offline?
Not reliably. The page and OCR files must be downloaded first, and offline use has not been tested, so please stay online while using the converter.
Is it free?
Yes. There is no sign-up, no API key and no usage limit beyond what your device can handle.
About ImageToText OCR
ImageToText OCR is a small, free tool for turning pictures of text into editable text. It is a static website built with plain HTML, CSS and JavaScript, and its source code is published on GitHub. Learn more about the project or get in touch.