Wayro documentation
Everything you need to send a job and read what comes back. Ten minutes, start to finish.
New to counting from video? Four short practical guides cover what a count costs, how to prepare footage, turning counts at junctions and what 96%+ accuracy means. Read the practical guides
Search reads every word on this page. Ask answers a question in your own words and points at the section it came from. Both sit at the top of the contents, and neither sends what you type anywhere.
What Wayro is
Wayro turns recorded footage from fixed cameras into structured traffic data. You send video, we return counts, lane use, turning movements and pedestrians as numbers, at 96%+ accuracy against manual counts, priced per hour of footage between $0.12 and $0.38, never per vehicle.
It is not a camera, not a live feed and not an enforcement product. Footage is processed after the fact, and it is deleted once the deliverables are released.
- Any fixed camera. Whatever it records, at whatever resolution, as long as it does not pan, tilt or zoom during the footage.
- Set up once per camera. Lines, lanes, areas and the timestamp region are saved and reused on every later job.
- Checked by an engineer first. A trained engineer checks the markings on every project before the AI runs, free.
- 33 vehicle classes, grouped into categories of your own, plus pedestrians counted alongside.
- Deliverables per camera as each one finishes: CSV, Excel, JSON, API, annotated video or a report.
The three jobs
One project can run any mix of these on the same footage, and each camera gets whichever setups it needs.
| Job | What is drawn | What comes back |
|---|---|---|
| Vehicle Counting | A line across the carriageway with a direction arrow. One per direction, plus one on any slip road you want separated. | Crossings per line, by class and direction, per interval (5 min, 15 min, hour or day), with running totals. |
| Lane Tracking | One polygon per lane, drawn once. A bus lane or a motorcycle lane counts as its own lane. | Every vehicle in its lane: counts per lane, per class and direction. |
| Entry & Exit Tracking | Entry and exit areas on each road into a junction or roundabout, any number per camera. | Every vehicle followed from the road it came in on to the road it left by: turning movements and the origin to destination matrix, by class and interval. |
| Pedestrians | The same line or area tools. | People counted across a line or through an area, by direction and interval, on every camera angle in the project. |
Vehicle Counting and Entry & Exit Tracking are priced as separate jobs, each with its own cameras and hours. Lane Tracking is an option on either. Pedestrians are an option on the whole project.
Preparing footage
- Format: MP4 (H.264). Any resolution the camera records; 1080p at 4 Mbps is typical and works well.
- One file per camera per period. Split long recordings into files of any length; Wayro stitches them by camera and time.
- Fixed cameras only. The camera must not pan, tilt or zoom during the footage, because the counting areas are drawn on a single frame.
- Storage: about 1.8 GB per hour at 1080p. Uploads run in the background while you configure the rest of the job.
Camera IDs and recognition
Wayro reads the camera ID from the filename: everything before the first full stop.
L31456.2026-07-21.mp4 camera L31456
CAM-0291.night-01.mp4 camera CAM-0291
TMC6-CAM4.part3.mp4 camera TMC6-CAM4
A camera that has appeared in an earlier job is recognised: its saved counting areas and timestamp region are placed on the new frame for you to confirm or adjust. A camera you have not sent before is new and starts blank.
Name files consistently and every later job on that camera takes a minute to set up.
Counting areas
Each camera gets any mix of these, drawn on a frame from its own footage. One project can count, detect lanes and trace entries to exits at the same time.
| Tool | What you draw | What you get |
|---|---|---|
| Crossing line Vehicle Counting | One line across the carriageway, with a direction arrow. Use one per direction, plus one on any slip road you want kept separate. | Crossings by class and direction, per interval, per line. |
| Lanes Lane Tracking | One polygon per lane, drawn once. A bus lane or a motorcycle lane counts as its own lane. | Counts per lane, per class and direction. |
| Entry area Entry & Exit Tracking | A polygon (three or more points) on each road where vehicles come in. | Combined with exits, every turning movement and the origin to destination matrix. |
| Exit area | A polygon where vehicles leave the view. | Any number of entries and exits per camera. |
- Draw areas where vehicles are fully visible and not hidden by poles, signs or other vehicles.
- Place a crossing line where traffic is moving, not where it queues.
- Entry and exit areas should not overlap.
Available on request
These come from the same tracked trajectories and are quoted per project. Contact us with the cameras and the questions you need answered.
| Output | What you get | What it needs |
|---|---|---|
| Speed and travel time | Spot speeds per class, lane and interval, and travel time between two lines or two cameras. | A one-time calibration per camera: four points on the road with known distances. |
| Gap and headway | Time between successive vehicles per lane, as distributions, for capacity and gap-acceptance work. | A crossing line per lane. |
| Queue and delay | Queue length per approach over time, and time lost per vehicle. | An approach area and the speed calibration. |
| Trajectories and network origin to destination | Every vehicle's path as a file, and origin to destination across several cameras. | Entry and exit areas on every camera in the network. |
| Heatmaps | Where vehicles and pedestrians go, on a count basis: how many passed through each part of the frame. Not speed based. | Nothing extra. |
| Violations | Over a dozen violation types, reported as events with a timestamp and a clip. | Which types you need. |
Timestamps
Most cameras burn a clock into the picture. Drag a box around it once and Wayro reads the time from every frame, so results are stamped with the camera's own clock. If there is no burnt-in clock, enter the recording date, start and end time manually. One timestamp region can be applied to every camera in the job.
Vehicle classes
Wayro separates all 33 classes. What you choose is how they come back: keep every one apart, or fold them into categories of your own, pickups in with vans, rickshaws in with cars, whatever your study treats as one thing. The calculator calls that number your unique classes, and it is what moves the price, because each category we keep apart costs processing time.
| Group | Classes |
|---|---|
| two_wheelers | bicycle, scooter, motorcycle, delivery_bicycle, delivery_scooter, delivery_motorcycle |
| cars | hatchback, sedan, suv, minivan, pickup, van, taxi |
| buses | public_bus, minibus, school_bus, coach, double_decker |
| trucks | mini_truck, box_truck, flatbed, dump_truck, tanker, container_truck, tow_truck, concrete_mixer, refuse_truck |
| emergency | ambulance, police_car, fire_engine |
| specialist | three_wheeler, tractor, excavator |
Custom groups. Combine classes into categories that match your report (for example HGV = container_truck + tanker + dump_truck + flatbed, or cars = hatchback + sedan + three_wheeler). Groups are saved to your workspace and offered on every later job. Deliverables carry both the class and the group, so you can always split a category back out.
Pedestrians are counted with the same line or area tools and reported in the same schema with class = pedestrian.
Using the dashboard
Everything happens in the Wayro dashboard. A new job is seven steps, and a draft saves itself at every one, so you can stop and come back.
| Step | What you do | What Wayro does |
|---|---|---|
| 1 Upload footage | Drag in MP4s, or pick from the sample library. Set a project title, the footage dates and a location. | Reads the camera ID from each filename, recognises cameras you have sent before, and uploads in the background while you configure the rest. |
| 2 Counting areas | Draw with three tools: Add Entry, Add Exit and Count. Add camera details if you want them on the report. | Recognised cameras arrive with their saved areas to confirm; new areas are saved to the camera for next time. |
| 3 Timestamp setup | Drag a box over the burned-in clock, apply it to every frame, or enter the date and times by hand. | Stamps every record from the camera's own clock. |
| 4 Camera dashboard | Check one row per camera: thumbnail, duration, size, location, areas, timestamp. | Flags anything missing before you reach the quote. |
| 5 Vehicle classes | Pick the classes, build your own categories, add local transport types by country. | Deliverables carry both the class and the category it sits in. |
| 6 Deliverables | Any combination of CSV, Excel, JSON, API, annotated video and a report. Preview the export template. | Adds them to the job at no extra cost. |
| 7 Review quote | Read the estimate, download it, then approve. | Issues the invoice on approval. Once it is paid, a trained engineer checks your markings within 24 to 72 hours, free, then the AI processes it. You are billed for footage that passes our checks. |
Around the wizard: a Dashboard front page with what is running and what is ready to download, Jobs with drafts and status, Job detail with the results and downloads, Cameras as a register of everything you have sent, Vehicle classes for your categories, Analytics for counts, hourly profiles and entry to exit flows, Team with roles and permissions, Billing with your usage and invoices, and Settings with API keys, single sign-on and two-factor.
Outputs and schema
Choose any combination of CSV, Excel, JSON, API access, annotated video and a summary report. All tabular outputs share one schema.
Crossing line records
| Field | Meaning |
|---|---|
| camera_id | From the filename. |
| interval_start, interval_end | ISO 8601, camera clock. Interval length is set per job: 5 min, 15 min, 1 hour or 1 day. |
| line_id | The crossing line, as you named it. |
| direction | ab or ba, relative to the arrow you drew. |
| class, group | Vehicle class and, if you defined one, its group. |
| count | Crossings in the interval. |
Entry & exit tracking records
| Field | Meaning |
|---|---|
| camera_id | From the filename. |
| interval_start, interval_end | As above. |
| entry_id, exit_id | The areas, as you named them. |
| class, group | Vehicle class and group. |
| count | Vehicles that entered at entry_id and left at exit_id. |
camera_id,interval_start,interval_end,entry_id,exit_id,class,group,count
TMC6-CAM4,2025-04-02T07:00:00+04:00,2025-04-02T07:15:00+04:00,A,1,sedan,,312
TMC6-CAM4,2025-04-02T07:00:00+04:00,2025-04-02T07:15:00+04:00,A,1,taxi,,41
TMC6-CAM4,2025-04-02T07:00:00+04:00,2025-04-02T07:15:00+04:00,A,2,container_truck,HGV,6
Annotated video is your footage with every tracked vehicle boxed and labelled, useful for spot checks. Excel adds a summary sheet per camera with hourly totals and class splits.
Each of the three examples on the home page has its real data to download as CSV, Excel and JSON, in this schema. See the examples
API
Every record above is also available as JSON through the API, filtered by job, camera, interval and class, so results flow straight into your own tools. API keys are issued per workspace from the dashboard; the endpoint reference is shared with your key.
{
"camera_id": "TMC6-CAM4",
"interval_start": "2025-04-02T07:00:00+04:00",
"interval_end": "2025-04-02T07:15:00+04:00",
"entry_id": "A",
"exit_id": "1",
"class": "taxi",
"group": null,
"count": 41
}
Pricing and turnaround
- Free samples. Every new user gets 12 hours of processing free, on their own footage. After those 12 hours, every camera angle sent with 100 hours or more gets one free sample hour to check the quality and the output; under 100 hours for that camera, the sample hour is paid. Happy with the sample? We run the rest and you pay for that. Not happy? Tell us how to do better.
- Priced per hour of footage, between $0.12 and $0.38. The rate follows the work in the run: how many unique classes you want separated, how many crossing lines and lane zones per camera, how many entries and exits, and whether pedestrians are counted. No per-vehicle fees and no licence per camera.
- Everything in the run is in that rate: the counts, your classes, lanes, routes, pedestrians, and every deliverable you pick. CSV, Excel, JSON, reports, API access and annotated video all cost nothing on top.
- No plan and no minimum. There is no subscription, no monthly commitment and no cap on hours, cameras, API calls or storage. You pay for the hours we process, and nothing when you send nothing.
- Every camera angle after the first adds a little processing time to each hour of footage, so a project across many angles carries a slightly higher rate than the same hours from one.
- The exact price is shown on the Review Quote step before the job starts. Approve it and the invoice is issued.
- An engineer check, free. Once the invoice is paid, a trained engineer checks every marking you drew on every camera (crossing lines, lane zones, entries and exits) before anything runs, and fixes or queries anything that would cost you accuracy. It is free on every project, large or small, and takes 24 hours up to 1,000 hours of footage, 48 hours up to 10,000 and 72 hours above that. Then processing starts.
- How long it takes. The engineer check, then the processing, which depends on the work in the run. At standard speed, 1,000 hours with 12 classes is processed in about 4 days and 10,000 hours in about 6, after the check. The calculator shows both for your own project as you set it up.
- Delivery speed. Need it sooner? 2× delivery halves the processing time for 10% more on the rate, 3× for 15% more, 4× for 20% more and 5× for 25% more. Standard delivery is priced inside the published band; the speed uplift is on top of it.
- Deliverables are released per camera as each one completes.
- Anything faster than 5×, and very large programmes, are quoted on request.
- Invoices. One invoice per project, issued when you approve its quote, and paid before processing starts. It covers the hours of footage that passed our checks at your rate, less any discount on your account, in US dollars. You can read and download every invoice on the Billing page in the dashboard.
- Discount codes. If you have been given one (a framework rate, a partner rate, a first-project rate), tell us before the job starts. We put it on your account and it comes off every invoice while it is valid.
- Currency. Prices are quoted in US dollars. The calculator can show any of eight other currencies at the day's exchange rate, fetched live and refreshed every twelve hours; the picker shows the rate it used and where it came from. Invoices are issued in US dollars unless we agree otherwise.
Use the calculator to price a project before you upload anything. Every control on it carries an explanation and an example.
Free samples
- Every new user gets 12 hours of processing free, on their own footage.
- After those 12 hours, every camera angle sent with 100 hours or more earns one free sample hour, so you can check the output on that angle before committing the rest.
- Under 100 hours for a camera, its sample hour is paid.
- Happy with the sample? We run the rest and you pay for that. Not happy? Tell us how to do better.
The calculator deducts the free hours from the estimate and shows them as their own line. To begin, tell us about your cameras and we set up your workspace within a working day. Start with 12 free hours
Accuracy
Wayro is 96%+ accurate. We measured it by comparing our AI's counts with manual counts of the same footage on custom client projects. Before any project runs, a trained engineer also checks every marking you drew, free, so the AI counts where you meant it to.
What makes accuracy better or worse on a given camera:
- Angle and height. An elevated view along the road beats a low view across it. Vehicles should be separable, not stacked behind one another.
- Things in the way. Poles, signs, gantries and large vehicles hiding smaller ones are the usual cause of misses; place lines and areas where the view is clear.
- Light and weather. Night, heavy rain and glare are harder than daylight. Send a sample of the worst conditions in your footage and judge it before committing.
- Resolution and frame rate. Any resolution works; more pixels on the vehicle and a steadier frame rate help at distance.
Use the free sample hours on your most difficult camera, not your easiest one. That is what they are for.
Footage handling
- Uploads and storage are encrypted while the job runs.
- Footage is deleted from our systems when your deliverables are released, unless you ask us to keep it for a revised brief.
- Footage is never sold, shared or used for anything other than your job.
- Storage can stay in your country. Faces and number plates can be anonymised at source where the law requires it.
- A data-processing agreement covers every project.
Questions
What does it cost?
Between $0.12 and $0.38 per hour of footage, never per vehicle and never per camera licence. The rate follows the work in the run: how many categories you want separated, crossing lines and lane zones per camera, entries and exits, and whether pedestrians are counted. Price a project on the calculator.
How long does it take?
First a trained engineer checks your markings, free: 24 hours up to 1,000 hours of footage, 48 up to 10,000, 72 above. Then processing: at standard speed, 1,000 hours with 12 classes takes about 4 days and 10,000 hours about 6. Choose 2× to 5× delivery to cut the processing, for 10% to 25% more. The calculator shows both for your own project.
What do I have to send?
MP4 files from fixed cameras, one file per camera per period, named with the camera ID first. Nothing else. No hardware, no installation, no integration.
Can you use my existing CCTV?
Yes, that is the point of it. Any fixed camera that records to a file, at whatever resolution, as long as it does not move during the footage.
What happens to my footage?
It is encrypted in transit and at rest, processed once, and deleted when your deliverables are released unless you ask us to keep it. It is never sold or shared, and never used for anything but your job.
Can I keep the vehicle classes I already report on?
Yes. We separate all 33, and you decide how they come back: pickups in with vans, rickshaws in with cars, or every one of them kept apart. Your categories are saved and offered on every later job.
Do you count pedestrians?
Yes, with the same line and area tools, across every camera angle in the project. They are an option on the whole project, not a separate job.
Can you give me speeds, queues or near misses?
Speed and travel time, gap and headway, queue and delay, trajectories and network origin to destination, count-based heatmaps and violations are available on request. They need a short calibration on the camera. Ask us.
What formats do I get?
CSV, Excel, JSON, the API, annotated video and a summary report, in any combination, released per camera as each one completes. All tabular outputs share one schema.
How do I start?
Tell us about your cameras and we set up your workspace within a working day, with 12 free hours on it. Send your most difficult camera first; if the result is right, the calculator shows the price of the rest before anything runs. Start with 12 free hours
Glossary
| Term | What it means |
|---|---|
| Hour of footage | The unit everything is priced in: one hour of video from one camera. |
| Camera | One fixed angle. The same junction filmed from two poles is two cameras. |
| Crossing line | A line drawn across the carriageway; a vehicle is counted when it crosses. |
| Lane zone | A zone drawn over one traffic lane, so counts come back lane by lane. |
| Entry, exit | Areas on the roads of a junction: where vehicles come in and where they leave. |
| Movement | One entry paired with one exit, for example north to west. A four-arm junction has twelve. |
| Unique class | One category in your output. All 33 classes are separated; you choose how many categories they are reported as. |
| Interval | The time bucket on every row: 5 minutes, 15 minutes, an hour or a day. |
| Free sample hour | An hour we process at no charge so you can judge the output before committing. |