Extract Phone Numbers From an Image or Photo

Updated 2026-09-05

SwipeScan does this from your phone camera — swipe over the number, it lands on the clipboard.

If you want to call one number off a flyer, stop reading and use your phone. On an iPhone, open the photo and tap the number — iOS detects it, underlines it, and offers to dial or create a contact. On Android, open the image in Google Photos and tap the Lens button, or use Circle to Search. Both handle screenshots as well as camera photos, both are free, and both are faster than anything else you could do.

The reason this page exists is the other case: a page of numbers you need as data. A conference delegate list, a printed directory, a whiteboard after a meeting, a stack of business cards. Tap-to-call does nothing for that, and this is where recognition errors stop being obvious and start being expensive.

The rules that tell you a number is wrong

Phone numbers have more structure than most people realise, and that structure is a free error detector. You do not need to know whether a number is real — only whether it could be.

RegionStructural ruleWhat it rules out
International (E.164)Maximum 15 digits including country codeAny longer string is a misread
US and Canada (NANP)Format NXX-NXX-XXXX, where N is 2–9Area codes and exchange prefixes starting 0 or 1
US and Canada211, 311, 411, 511, 611, 711, 811, 911 are reserved service codesThose patterns as an area code or prefix
UK mobileStarts 07, eleven digits in national formatTen-digit mobiles — a dropped leading zero
UK landlineStarts 01 or 02Numbers that lost their leading zero

The North American rule is the most useful one to have in your head. Both the area code and the three-digit exchange prefix must begin with a digit from 2 to 9. So a number that comes back as 102-555-0147 is not a number you should try — the recogniser has misread the first digit, most likely a 7 or a 4 that lost a stroke. The eight N11 codes are reserved nationwide, which is why no local prefix ever takes that form.

The E.164 ceiling is worth applying to any list. Fifteen digits is the hard maximum for an international number including its country code. If OCR hands you seventeen digits, it has run two numbers together or picked up a stray character from the background.

For UK data the leading zero is the whole game. A UK mobile is eleven digits starting 07, and the moment that number touches a spreadsheet column formatted as a number, the zero disappears and you have a ten-digit string that will not dial. This is the same class of problem as the 15-digit precision trap in Excel, and it destroys more phone lists than bad recognition does.

Why phone numbers are hard to read from an image

They sit in the worst possible spot for OCR. There is no dictionary — every digit is equally plausible, so language models cannot rescue a bad guess the way they can inside a word. And phone numbers are usually set in the places designers make hardest to read: over a photograph, in a thin condensed face, reversed out of a colour, or handwritten.

The recurring confusions are 1 against 7, 0 against 8, 3 against 8, and 6 against 5. Handwritten numbers add another layer, because European and North American conventions for writing 1 and 7 differ enough that a model trained mostly on one will make consistent mistakes on the other. The full picture is in why OCR gets numbers wrong.

Formatting punctuation causes its own trouble. Spaces, dots, dashes, brackets and a leading + all get read inconsistently, and a ( collapsed into a 1 adds a phantom digit. Strip separators before you compare anything — two numbers written +44 20 7946 0018 and 020 7946 0018 are the same number.

Getting a clean list

Photograph square-on, with the printed page filling the frame, in ambient light rather than flash. If you are shooting a directory page, take it in two halves rather than one distant shot — pixel height per digit matters more than anything else you can control.

Then extract and check. Our number extraction tool returns only the digit runs from an image, in an editable field beside the picture, which is the difference between reading a list and trusting one. Because it filters to digits, it also drops the surrounding words that push a general recogniser off course.

Once you have the list, run the structural checks above before you use it. A quick length filter and a first-digit test on the area code will catch most of what went wrong, and it is far quicker than dialling your way through failures. Numbers that fail the check are worth re-reading against the original image rather than deleting — the surrounding digits are usually correct.

For a physical stack of cards or a wall of badges, capturing them one after another in SwipeScan beats photographing, transferring and uploading each file: each read lands on the clipboard as you go, and the app keeps a local history of the run. It has no batch mode and no file export, so the list is assembled by you, not by it. For a screenshot already on your machine, the number extraction tool is the shorter path — and if you need the words around the numbers as well, copying text from a screenshot covers that side.

The short version

  • For a single number, tap it in Photos on iPhone or use Lens on Android; both are free and instant.
  • E.164 caps any international number at 15 digits including the country code.
  • In the US and Canada, area codes and exchange prefixes never start with 0 or 1, and the eight N11 codes are reserved.
  • UK numbers live or die by the leading zero, which spreadsheets strip unless the column is formatted as Text first.
  • Strip separators, apply a length check, and re-read anything that fails against the original image.

Questions

How do I call a number from a photo without typing it?

On iPhone, open the photo and tap the number — iOS detects it and offers to call or add a contact. On Android, open the image in Google Photos and tap the Lens button. Both work on screenshots too.

What is the longest a phone number can be?

Fifteen digits, including the country code. That is the limit set by the E.164 international numbering standard, so any longer string that comes out of OCR is a misread, not a number.

Why does Excel delete the plus sign and the leading zero from my numbers?

It parses them as numbers, where a leading zero and a plus are meaningless. Format the column as Text before pasting. Doing it afterwards will not bring them back.

Try the tool this guide is about

It runs in your browser — nothing uploaded, no account. The app adds the camera, offline use, and a paid scan history.

Related guides