AI traffic is the single most demanding thing an Assetto Corsa server does, and it's demanding in a way that surprises people. Every AI car is simulated on the server and streamed to nearby players, so your CPU load scales with traffic density multiplied by player count — not just how many people are connected. That's why a busy Shutoko cruise server needs far more grunt than a race server with the same number of drivers, and why a cheap box that runs a racing grid fine will choke on a road full of traffic.
This post explains how AI traffic actually works, what it costs in CPU and RAM, and — because it's the most common failure — why your traffic might not be showing up at all. It's the freeroam-only (AssettoServer) path throughout; the stock Kunos racing server can't do AI traffic.
How does AI traffic work on an Assetto Corsa server?
Three things have to line up. Miss any one and you get an empty road.
1. A track with an AI spline. AI cars follow a pre-recorded driving line stored in the track's ai/ folder:
content/tracks/<track>/ai/fast_lane.aip
This is recorded by physically driving the route — it is not generated from the track mesh. A map without a fast_lane.ai / fast_lane.aip has no traffic, and there's nothing a server setting can do about it. The big cruise maps ship their splines; random mod tracks often don't.
2. AI car slots in the entry list. In cfg/entry_list.ini, traffic cars are ordinary slots flagged as AI:
; ---- cfg/entry_list.ini ---- [CAR_5] MODEL=traffic_car SKIN=random AI=fixed ; always an AI traffic car (use AI=auto to hand it to a joining player)
Density comes from the number of these slots. You cannot get a convincing road from ten cars — real traffic servers define dozens to well over a hundred.
3. AI switched on and tuned in extra_cfg.yml. The AssettoServer-only file holds the master switch and the tuning:
# ---- cfg/extra_cfg.yml (AssettoServer only) ---- EnableAi: true AiParams: MaxAiTargetCount: 3 # AI cars kept near each player TwoWayTraffic: false # oncoming traffic on/off MinAiSafetyDistanceMeters: 20 # gap between AI on spawn (keep >= ~12) MaxAiSafetyDistanceMeters: 70
Note the split — the AI slots live in entry_list.ini, but the AI behaviour lives in extra_cfg.yml. Two different files. Mixing them up is the classic mistake.
Why does AI traffic cost so much CPU?
Because the server does the work. In single-player, your own PC simulates the AI. On a dedicated server, the host computes every AI car's physics and position, then sends each one to every player close enough to see it. That gives you two costs multiplied together:
- More traffic density → more cars to simulate
- More players → each car has to be networked to more people
So going from 10 to 20 players on a dense traffic map doesn't double the load — it can more than double it, because both factors climb at once. This is the fundamental difference from a race server, where the car count is fixed and small.
Two things follow from this, and they're the levers that actually matter:
Single-thread clock speed beats core count. Assetto Corsa's physics and netcode are heavily single-threaded per server instance. A 4-core CPU at 4.5 GHz will hold more traffic smoothly than an 8-core at 3.0 GHz. When you're comparing hosts, raw GHz on one core matters more than a big core count.
The despawn radius is your biggest performance dial. AssettoServer only simulates AI cars near players — cars beyond a set radius are despawned. On a huge map like Shutoko, that means the effective simulated set is "cars near players", not every car you defined. Tuning the spawn and despawn distances in AiParams is what lets a server hold 50–100 AI cars without melting. It's the difference between "I defined 120 traffic cars" and "120 traffic cars are all being simulated at once" — you want the former.
As rough field guidance (from hosting-industry testing, not an official Assetto Corsa benchmark — treat it as a starting point, not a spec):
| Target players | CPU guidance | RAM | Storage |
|---|---|---|---|
| 16 | 4 cores / ~3.5 GHz | 8 GB | 40 GB SSD |
| 32 | 6 cores / ~4.2 GHz | 16 GB | 60 GB NVMe |
| 64 | 8 cores / ~4.5 GHz | 24 GB | 80 GB NVMe |
The practical working band is 50–100 concurrent AI cars, and the standing advice is to leave 20–25% CPU headroom for traffic spikes rather than running at the limit. Raise your AI target count gradually and watch the host, rather than setting 100 and hoping.
This is exactly why we don't size freeroam plans the way most hosts size a race server. Our freeroam Assetto Corsa plans are specced for traffic density and CPU headroom, not just a slot number on a marketing page — because on a traffic server the slot count isn't what runs out first, the CPU is. If you want the full sizing breakdown for both freeroam and racing, we wrote a dedicated guide to Assetto Corsa server RAM and CPU.
Does AI traffic use a lot of RAM?
Less than you'd think — RAM is the cheap part of a freeroam server. The heavy resource is CPU (from simulating cars) and disk (from big map and traffic-car packs). RAM scales gently with player and AI count; the sizing table above is a reasonable guide. If a host is upselling you purely on RAM for an AI-traffic server, they're selling you the wrong number — ask about CPU clock and cores instead.
Why is my AI traffic not showing up?
This is the most-asked question in the freeroam scene, and it's almost always one of these, roughly in order of likelihood:
- The track has no AI spline. No
fast_lane.ai/fast_lane.aipin the track'sai/folder means no traffic, period. Check the folder first. This is the number-one cause and no server setting fixes it — you need a track that includes a spline. EnableAiis off. ConfirmEnableAi: trueinextra_cfg.yml.- Not enough AI slots. If your entry list only has a couple of
AI=fixed/AI=autocars, you'll barely see traffic. Add more slots. - A single-player traffic layout is confusing the server. Some tracks ship a single-player traffic
ailayout that stalls AssettoServer on "Initialising AI spline". The known fix is renaming that folder (e.g.ai→ai_off) so the server uses the correct fast-lane spline. - Safety distance set too low. If
MinAiSafetyDistanceMetersis below ~12, AI cars brake the instant they spawn and clump up, which reads as "broken traffic".
On Connect Hosting we take the worst of these off the table: enabling AI on a track with no spline is hard-blocked in the dashboard with a clear message, so you can't accidentally launch a "traffic" server on an empty road. You still need a spline-bearing map — but you won't waste an evening wondering why nothing spawns.
Frequently Asked Questions
Do I need a spline for AI traffic?
Yes, always. AI cars follow a fast_lane.ai or fast_lane.aip file recorded into the track's ai/ folder. It's created by driving the route, not generated automatically, so a track without one cannot have AI traffic. Big cruise maps like Shutoko include their splines; many random mod tracks don't.
Is AI traffic CPU or RAM heavy?
CPU heavy. AI cars are simulated on the server, so CPU load scales with traffic density times the number of players who can see that traffic. RAM matters far less. When sizing an AI-traffic server, prioritise single-thread CPU clock speed over RAM or core count.
How many AI cars can a server handle?
The practical band is 50–100 concurrent AI cars, depending heavily on your CPU clock and how aggressively you tune the despawn radius. Leave around 20–25% CPU headroom and raise the count gradually while watching the host rather than maxing it out from the start.
Why does more players make traffic laggier?
Because each AI car has to be simulated and then networked to every nearby player. Adding players increases both the networking cost per car and, usually, how much traffic is active near people — so load climbs faster than player count alone would suggest. It's the core reason freeroam needs more CPU than a same-size race server.
Traffic that stutters is almost always a CPU-headroom problem, not a you problem. Our freeroam Assetto Corsa servers are specced for AI density and single-thread performance, with a dashboard that generates your traffic cars and blocks spline-less tracks before they waste your time.



