AI License Plate Recognizer (OCR) avatar

AI License Plate Recognizer (OCR)

Pricing

from $350.00 / 1,000 license plate recognizeds

Go to Apify Store
AI License Plate Recognizer (OCR)

AI License Plate Recognizer (OCR)

Read vehicle license plates from image URLs using AI vision. Returns plate, confidence, vehicle make/model/color, day/night and image metadata as JSON. Batch or real-time API.

Pricing

from $350.00 / 1,000 license plate recognizeds

Rating

0.0

(0)

Developer

Acme AI

Acme AI

Maintained by Community

Actor stats

0

Bookmarked

1

Total users

0

Monthly active users

3 days ago

Last modified

Categories

Share

🚗 AI License Plate Recognizer (OCR)

Read vehicle license plates from image URLs using AI vision. Send one or more public image links (JPG, PNG, WebP and more) and get a clean JSON record per image: the plate number, a confidence score, the vehicle make/model/color, whether it's day or night, image metadata, and a reason when a plate can't be read (dirty plate, glare, rain, blur...).

🎯 Built for plates. Instead of a generic OCR that dumps raw text, this Actor is prompted specifically to find and normalize the license plate and describe the vehicle and scene around it.


What you get

FieldDescription
🔑licensePlateThe recognized plate, uppercased and normalized (main field)
🎯plateConfidenceConfidence of the read (0-1)
🌍plateRegionPlate country/standard when identifiable (e.g. "Brazil (Mercosul)")
🌗timeOfDayday, night or unknown
🌦️weatherScene weather: clear, rain, fog, snow, cloudy, unknown
🔍imageQualityPerceived quality: good, fair, poor
📐viewAngleCamera view: front, rear, side, unknown
🚙vehicleMake / Model / Color / TypeVehicle attributes (type: car, motorcycle, truck...)
🖼️imageWidth / imageHeight / imageFormat / imageSizeBytesImage pixel size, format and byte size (flat, one column each)
⚠️failureReasonWhy the plate couldn't be read, when applicable

How to use

1. Provide image URLs

{
"imageUrls": [
"https://upload.wikimedia.org/wikipedia/commons/6/66/Car_vehicle_israel_license_plate_%284893367447%29.jpg",
"https://upload.wikimedia.org/wikipedia/commons/1/19/Michigan_Dealer_License_Plate.jpg"
]
}

Supports JPG/JPEG, PNG, WebP and other common image formats. Up to 50 images per run (send larger volumes via sequential calls).

2. Run it - each image is downloaded and analyzed in parallel.

3. Read the JSON - one record per image in the dataset (export as JSON, CSV or Excel), or get it synchronously via the Standby API.


Pricing

Charged per image where a plate is read (event plate-recognized).

  • Images that fail to download: not charged
  • Images where no plate is readable: not charged

Example output

[
{
"imageUrl": "https://.../car.jpg",
"success": true,
"licensePlate": "ABC1D23",
"plateConfidence": 0.97,
"plateRegion": "Brazil (Mercosul)",
"timeOfDay": "day",
"weather": "clear",
"imageQuality": "good",
"viewAngle": "front",
"vehicleMake": "Volkswagen",
"vehicleModel": "Gol",
"vehicleColor": "silver",
"vehicleType": "car",
"imageWidth": 1280,
"imageHeight": 720,
"imageFormat": "jpg",
"imageSizeBytes": 184320,
"failureReason": null,
"processedAt": "2026-01-01T12:00:00.000Z",
"error": null
},
{
"imageUrl": "https://.../blurry.jpg",
"success": false,
"licensePlate": null,
"plateConfidence": null,
"plateRegion": null,
"timeOfDay": "night",
"weather": "rain",
"imageQuality": "poor",
"viewAngle": "rear",
"vehicleMake": null,
"vehicleModel": null,
"vehicleColor": "black",
"vehicleType": "car",
"imageWidth": 800,
"imageHeight": 600,
"imageFormat": "jpg",
"imageSizeBytes": 95000,
"failureReason": "glare",
"processedAt": "2026-01-01T12:00:01.000Z",
"error": null
}
]

FAQ

Which images work best? Clear photos where the plate is visible. Heavy glare, motion blur, dirt, rain or very low resolution may prevent a read - the reason is reported in failureReason.

What plate formats are supported? The model reads plates from most regions and reports the standard in plateRegion when it can identify it.

Can I call it in real time? Yes. The Standby endpoint POST /recognize responds synchronously. See below.

Do failed images cost anything? No. You are only charged for images where a plate is actually read.


🔌 API integration

Batch run:

curl -X POST "https://api.apify.com/v2/acts/acme-ai~plate-recognizer-ai/run-sync-get-dataset-items?token=YOUR_TOKEN" \
-H "Content-Type: application/json" \
-d '{"imageUrls":["https://upload.wikimedia.org/wikipedia/commons/6/66/Car_vehicle_israel_license_plate_%284893367447%29.jpg","https://upload.wikimedia.org/wikipedia/commons/1/19/Michigan_Dealer_License_Plate.jpg"]}'

Standby (POST /recognize):

curl -X POST "https://acme-ai--plate-recognizer-ai.apify.actor/recognize" \
-H "Authorization: Bearer YOUR_APIFY_TOKEN" \
-H "Content-Type: application/json" \
--compressed \
-d '{"imageUrls":["https://upload.wikimedia.org/wikipedia/commons/6/66/Car_vehicle_israel_license_plate_%284893367447%29.jpg","https://upload.wikimedia.org/wikipedia/commons/1/19/Michigan_Dealer_License_Plate.jpg"]}'

The token goes in the Authorization: Bearer header, never in the URL.


Notes

This Actor analyzes images you provide. You are responsible for having the right to process the images and any personal data they may contain (such as plates or people).