Turn images into text

Upload single images...

…or post to /api using code snippets.

curl -F "[email protected]" https://freeocrapi.com/api
$filename = 'test.jpg';
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => 'https://freeocrapi.com/api',
CURLOPT_POSTFIELDS => array('file'=> new CURLFILE($filename))));
$response = curl_exec($curl);
echo $response;
import requests
url = "https://freeocrapi.com/api"
filename = "test.jpg"
data = {'file': open(filename, 'rb')}
response = requests.request("POST", url, files=data)
Get data
GET https://freeocrapi.com/api/get/{uid}

About us and our services

A completely free OCR

Our OCR services are free for anyone to use. For real. Keep your credit card in your pocket.

No sign-up

We don’t want your email address or any other of your personal information. Just start scanning files!

Upload single images

Select a file and wait a few seconds for the text string to appear in a pop-up window.

Use our API

Add a few lines of our code to your existing code base and the data you want will be delivered in standard JSON format (text format). As easy as pie. No libraries need to be installed.

Supported file formats

Our OCR supports the PNG, JPG, JPEG, GIF, BMP and TIFF file formats.


All images uploaded to our servers are deleted within 24 hours. And all communication between your devices and our API is encrypted with SSL. We keep none of your personal data.

Why our OCR services are free

We believe in generosity and information sharing. Providing an OCR API free of charge is a way to say thanks to everybody who adhere to the same principles.

What OCR is

OCR stands for optical character recognition and is a technology that recognizes text within digital images. It is used for large-scale conversion of images and scanned documents into machine-readable text.

What an API is

API stands for application programming interface and is a medium through which programs (e.g. programs on your computer) communicate with other programs. APIs greatly facilitate information exchanges.

Usefulness of OCR APIs

Among many other uses, OCR APIs can be used to extract names and numbers from invoices, to find specific items on receipts, and to continuously scan online newspapers in search of a given piece of text.

FreeOCRAPI at a glance

FreeOCRAPI is a free image-to-text tool. Here you can convert images to text: e.g. convert receipts to text, convert invoices to text, and convert printouts to text. When you ask us to use the magic wand to turn images into text, or rather when you use our OCR to read text from images, FreeOCRAPI scans your images and shortly afterwards sends the result to you in the form of text in "text format". It is this easy to turn an image to text.

About API:s

How APIs work

You can look at APIs as time savers. An API helps you retrieve information or a service much faster than you would be able to access the same information or service without the API. The creator of the API (a programmer/developer) has done most of the programming work you want done for you, and essentially provided you with a shortcut. The API, in other words, is a shortcut used to access information and services on the web. You obviously need basic programming skills to be able to set up the API connection, but you don’t need not be as skillful a developer as the creator of the API himself.

Since it takes time and skills to create an API, the creator of an API often wants compensation from those who make use of his API. If programmer X creates an API, he typically wants compensation in the form of money from his users. However, if Google, for example, creates an API to make the interaction with Google products easier, the increased adoption of their products may be compensation enough. (Although Google of course often sells their users’ information in different ways, and actually does make you pay money for certain API services.)

"APIs and apps"
Lastly, let us look at a real example where an API is very useful. If creators of a messaging app want their users to be able to capture photos or video from the iPhone’s camera (and send the photos to others), they don’t have to write their own camera interface. Instead they use the camera API created by Apple to embed the iPhone’s camera in their messaging app. If the camera API didn’t exist, the app developers would have to write a lot of advanced programming code (creating their own camera software) to be able to interpret the camera hardware’s inputs. Now, using the camera API, all that the messaging app developers have to do is to copy and paste a few lines of Apple’s code and insert a little bit of their own messaging app specific data onto those lines.

APIs are Intermediaries
FreeOCRAPI works like the camera API in the example above. But instead of being the intermediary between apps and the Iphone camera, FreeOCRAPI is the intermediary between anyone in need of optically scanning images for text and a quality optical character reader.

Hope this introduction to what an API is was helpful. Feel free to check out our free ocr api software for Python, PHP and Curl, which is compatible with Windows, Mac OS, Linux, Android and iOS.

OCR and handwriting

It is difficult for machines to optically read handwriting. OCRs may recognize handwritten letters sometimes, especially if they are written similarly to computer fonts, but relying on machines to scan handwritten text is not recommended.

Remember that optical character readers consider space between letters and words, consider straightness of letters and lines and recognize letters as the same if they look identical. In all of these respects does handwritten text become problematic for OCRs, since the human hand by nature cannot produce perfect spacing, straight lines and identical letters like machines can.

Still, if you think a handwritten text is relatively clear and conform, you have nothing to lose by letting our OCR have a crack at converting it. Perhaps our free optical character reader can recognize some, or most, of the text in your image, and get you parts of the way to your desired digital text result.

Uses of OCRs

Classic examples of what you can do with optical character readers are scanning documents like invoices and receipts. Large corporations and other big organizations often have OCRs scan invoices and receipts in order to get their financial data into a searchable database. Smaller organizations can of course also benefit from extracting text from their invoices and receipts and putting it into a database, but they don’t always prioritize digitalizing their businesses or have the technical knowledge of how to do it.

Another classic example of OCR usefulness is applying the optical character reader on a bunch of screenshots. Perhaps you have a hundred, a thousand or ten thousand screenshots of computer screens, or mobile screens, and want to find a specific username or serial number. In these cases, OCRs can really help you.

If you want to find out if subtle messaging exist in movies or other videos in the form of readable signs, you can program your device to take a screenshot every tenth of a second while you are playing a video. Thereafter you run all screenshots through an OCR, and potentially apply a filter to highlight or filter out certain product names or words. You will now potentially find subtle messages that your eyes have a hard time catching. And you can, if you want, meticulously scan thousands of hours of video in this way, without having to even watch the videos yourself.

OCRs in traffic
An implementation of optical character recognition increasingly used by police forces all over the world is automatic license plate reading. Police cars are equipped with cameras that take images of the surrounding vehicles, including the vehicles’ license plates. The license plate images are instantly fed to an OCR for optical reading, and if the scanned license plates match those of wanted, or flagged, car owners, the system alerts the police officers in the car.

Going a step further, and not just reading license plates, vehicles can have cameras photographing all critical road signs while driving. The photographs can be fed to an OCR, and the OCR can be hooked up to a speaker voice that read the road signs aloud in real time as the driver approaches them. Furthermore, it is possible to have a computer translate the road sign words into a foreign language before they are read aloud, and it is possible to have the increasingly autonomous vehicles take different actions depending on what the signs say.

As you can see, only your imagination limits what you can use optical character readers for, whether it is in traffic or anywhere else.

Which service has the best OCR API for you?

When deciding on which OCR API to use, you may want to consider a few different parameters.

Pay money or not
First off, most reliable OCR APIs cost money. They may offer free tiers or free trials, but after a certain number of days or a certain number of uploaded documents, you typically need to pay. Even Google, who often offers services for free, requires you to pay a considerable price for using their OCR API. Out of the reliable OCR API services that exist, to our knowledge, only FreeOCRAPI, lets you use an OCR API indefinitely without cost, no matter how many documents you upload to the API endpoint.
Jump through hopes or be hassle-free Secondly, most people want to avoid hassle when using services online. This is difficult when dealing with optical character readers. You can often upload a document or two manually without a problem with most OCR services, but when it comes to connecting to the API, the major players generally require you to go through a lengthy sign-up process in order to access their APIs. In the sign-up process, they generally want all sorts of private information about you, often including your email address, your physical address and your credit card number, in order to let you proceed. Once you have divulged all that, you have to take further action to verify your contact information and receive an API key, and if no glitch is found, eventually you get your free trial. Soon the free trial is over though, and you will need to take action again and tap into your bank account to keep using the service.

As far as we know, FreeOCRAPI is the only “no sign up needed”-service in the OCR API space. In fact, FreeOCRAPI does not even have a sign-up function on its platform. Don’t worry about free trials and API keys, all services with FreeOCRAPI is free and no API keys are used to track who you are and what you upload.

How easy the API is to implement
Not all APIs offering the same service are created equal. Just like there can be messy and clean source code in a large IT project, there can be messy and clean APIs. And just like code can be written in an elongated and drawn-out way, code can be written succinctly. We challenge you to find APIs that are as clean and as succinctly written as our Curl, Python and PHP APIs.

How accurately the OCR works
Most or all optical character readers can reliably recognize and convert to text format all standard digital characters, if the characters are clearly displayed against a bright background. That is to say, the Latin alphabet, the numbers 0–9 and punctuation marks are easily recognized. This makes most or all OCRs suitable for scanning text written in English.

Special characters, like the French “ç”, the German “ß” and the Spanish “ñ”, are not always recognized and correctly converted by OCRs. Check with the OCR in question whether it picks up this type of special characters. Still though, even if an OCR does not correctly convert all special characters in images to text, optical character reading may still be of great help in conversion, albeit in need of some manual work to finish the job. FreeOCRAPI offers an OCR service that works great for languages like English and Italian, but it fails in recognizing special characters in languages like French, German and Spanish.

Advantages and disadvantages to OCR

Optical character recognition is certainly a technology you should avail yourself of if you have big tasks suitable for scanning ahead of you. An experienced programmer will set up a simple OCR API in a matter of minutes, so we are looking at multiple hours, or even days, of work saved by OCRs in large projects.

In making OCRs generate text from images, you will want to make sure that the optical character reader can actually recognize all or most of the characters you want to have scanned. Try an OCR service’s manual upload function to figure this out. If the scanned result is positive in this trial, go ahead; if not, don’t.

If your projected manual scanning work is very limited in time, connecting to an API to turn your images into text may not be the best option, unless you also value getting experience setting up an OCR API. Optical character readers may not be your preferred choice either if you are unwilling to pay significant money. That is to say, unless you use a free image scanner like FreeOCRAPI.

Let OCRs scan articles online in real time

Stock market traders often want to stay on top of what is happening to the publically traded companies they have invested in. They do this by reading newspaper articles, trade publications, annual reports, trends reports and other available information. The first traders to spot certain developments in stock market businesses can buy or sell stocks in anticipation of an increase or a fall in the stock price before other traders make the same move, and will thereby have a good chance to profit.

OCRs and stock market trading
Learning about developments in publically traded companies before other traders do is a challenge. If you are not constantly scanning newspapers and financial reports, you risk missing important information. Not getting crucial information in time can cost you dearly, and it is therefore advantageous to have machine scanners help you stay up to date. Instructing an OCR API to scan digital articles the second they get published, with the purpose of finding predetermined key words like company names matched with action verbs, for example, can help you spot trends or events before other traders and the general public spot the same developments. If you also have the OCR API set to alert you anytime it comes across the valuable information, you can act instantly on the information, and get the first-movers’advantage.

Continuous scanning of the web
What you are really asking the OCR API to do when you want it to instantly scan an article or other publication, is to continuously scan everything on a set website or webpage. Then any updated information will be scanned as soon as it is published. As mentioned above, this application of optical character reading may be valuable for stock market traders and others in similar need of early information. However, people with financial interests are not the only ones to benefit from finding out rather quickly what gets published on the web.

Find out in real time what gets published about yourself
Similarly to finding business information, if you have a somewhat unusual name, you could ask the OCR API to look for your name in predetermined places online, and have it notify you as soon as anything about you gets published. In the same way, if you have a job title, like “Professor Eckhard”, is a member of a club or association, like “XYZ Athletics”, or have a cabin in a village with a name like “Faraway Village”, you could ask the OCR API to look for those specific names and phrases, and have it alert you whenever they are mentioned on set websites online. Doing this, you are likely to be one of the first to know when something important happens to yourself, to people you know or to things that you value.

Why using a REST API?

Application programming interfaces come in a few different types. There are REST, RPC and SOAP APIs. The protocol used to create an API determines which type it is. A protocol is a set of rules and standards used for communication. The different types of APIs, in other words, communicate in different ways.

The term REST, or RESTful, APIs describes web services that conform to (RE)presentational (S)tate (T)ransfer. Representational state transfer is a protocol where, among other things, standard http requests like get, put, post, patch and delete are used. In REST APIs, furthermore, the frontend and the backend of the API are kept separated, and REST APIs are “stateless”, meaning that they store no data between requests. There are more parameters to the REST API protocol than those just mentioned, but let’s not dig deeper in this forum.

Offering flexibility
Compared to the SOAP protocol, the REST protocol provides a lot of flexibility to its users. This has made REST APIs very popular, and REST is probably the most popular type of API today. FreeOCRAPI acknowledges the virtues of representational state transfer, and is therefore offering you a free OCR REST API.