How to Add Cars and Tracks to an Assetto Corsa Server

Add mod cars and tracks to an Assetto Corsa server: pack them in Content Manager, upload cfg and content, and match CARS, TRACK and entry_list.ini.

Updated Oct 3, 2026 · 5 min read

On this page

To add cars and tracks to an Assetto Corsa server, build a server preset in Content Manager with the track and cars you want and click Pack. Upload the packed cfg folder (server_cfg.ini, entry_list.ini) and content folder (each car's data.acd, the track's surfaces.ini) next to the server program, replacing the old ones. CARS= in server_cfg.ini and every MODEL= in entry_list.ini must use the cars' folder names. Every driver needs the same versions installed.

What you are working with

File or folder What it holds Where it goes on the server
cfg/server_cfg.ini Track, layout, allowed cars, sessions, passwords cfg/
cfg/entry_list.ini One [CAR_n] block per grid slot, with model and skin cfg/
cfg/extra_cfg.yml AssettoServer settings: traffic, weather, server details cfg/
content/cars/<car>/data.acd The car's physics data, used for anti cheat checksums content/cars/<car>/
content/tracks/<track>/ The track's surfaces.ini and layout data content/tracks/<track>/
cfg/cm_content/content.json Optional download links for mod content cfg/cm_content/

The server does not need the 3D models, textures or sounds. It only needs the data files it uses to check that every driver has the same car and track.

Where the content is on your PC

Assetto Corsa keeps all cars and tracks in its install folder:

Content Windows path
Cars C:\Program Files (x86)\Steam\steamapps\common\assettocorsa\content\cars\<car>\
Tracks C:\Program Files (x86)\Steam\steamapps\common\assettocorsa\content\tracks\<track>\
Track layouts Subfolders inside the track folder, such as layout_gp

The folder name is the car's real ID, for example ks_mazda_mx5_cup or bmw_m3_e30. It is often nothing like the name shown in the game, and it is the only name the server understands.

Assetto Corsa cars on a freeroam server running mod content

The gotcha: checksums and folder names

Two things break almost every first attempt.

Folder names, not display names. CARS= and MODEL= take the folder name exactly. "BMW M3 E30" will not work; bmw_m3_e30 will. A car that is in entry_list.ini but missing from CARS=, or the other way round, leaves drivers with no slot to pick.

Checksums. The server checksums each car's data.acd and the track's surfaces.ini, and kicks any driver whose files differ. That is the anti cheat, and it is why one driver with an older version of a mod car cannot join while everyone else can. Whenever a mod gets an update, update it on the server and on every driver's PC together. The AssettoServer configuration errors page explains the missing checksum error you get when a car folder has no data.acd.

Method 1: Pack with Content Manager (easiest)

Step 1: Install the content on your PC

Install the cars and track in your own game first, and drive them once offline to check they work. Content Manager can install mod archives by dragging them onto its window.

Step 2: Build the preset

In Content Manager, open Server and create a preset. Pick the track and layout, add every car you want, and set the slots on the Entry List tab. Keep the slot count at or below the track's pit boxes, which Content Manager shows when you pick the track.

Step 3: Pack it

Click Pack. Content Manager writes a folder containing cfg with the two ini files and content with exactly the data files the server needs for those cars and that track. It skips everything the server does not use, so the pack stays small.

Step 4: Upload and restart

  1. Stop the server.
  2. Back it up, especially cfg/extra_cfg.yml if you use AI traffic.
  3. Upload cfg/server_cfg.ini, cfg/entry_list.ini and the whole content folder, replacing the old ones. Leave extra_cfg.yml in place.
  4. Start the server and watch the console for missing content errors.

Method 2: Add content by hand

Step 1: Copy the data files

For each car, create content/cars/<car>/ on the server and upload the car's data.acd. Some mod cars ship an unpacked data folder instead; upload that folder in the same place. For the track, upload content/tracks/<track>/ with its data/surfaces.ini and any layout subfolders.

Step 2: Edit server_cfg.ini

[SERVER]
CARS=ks_mazda_mx5_cup;bmw_m3_e30
TRACK=shuto_revival_project_beta
CONFIG_TRACK=
MAX_CLIENTS=18

CONFIG_TRACK is the layout folder name, empty for single layout tracks. Separate cars with semicolons.

Step 3: Edit entry_list.ini

[CAR_0]
MODEL=ks_mazda_mx5_cup
SKIN=00_official
[CAR_1]
MODEL=bmw_m3_e30
SKIN=

Number the blocks from 0 with no gaps or duplicates. SKIN is a folder in the car's skins folder, or empty for any. Restart.

Tracks that need Custom Shaders Patch

Many freeroam tracks only work with Custom Shaders Patch. AssettoServer's FAQ shows the trick: write the track as TRACK=csp/<version>/../<track>, for example TRACK=csp/2053/../shuto_revival_project_beta, and change the first SURFACE_0 in the track's surfaces.ini to CSPFACE_0. Drivers without that CSP version are told to update. Content Manager does this for you with Require CSP to Join on the preset's main tab.

Help drivers get the content

Content Manager shows drivers what they are missing before they join. You can add download links for mod cars and tracks in cfg/cm_content/content.json:

{
  "cars": { "bmw_m3_e30": { "url": "https://example.com/m3.zip", "version": "1.0" } },
  "track": { "url": "https://example.com/track.zip", "version": "1.0" }
}

Set EnableServerDetails: true in extra_cfg.yml so Content Manager can read it.

Common problems

  • "No free slots" for one car: that model has no free [CAR_n] blocks. Add slots for it in entry_list.ini, within the pit box count.
  • One driver kicked for checksum: their copy of the car or track is a different version from the server's. Match versions on both sides.
  • Server will not start, missing checksums: a car in CARS= has no data.acd under content/cars/. Upload it or remove the car.
  • Car not offered in the join list: it is in entry_list.ini but not in CARS=, or the folder name is misspelled.
  • Track loads for you but drivers get errors: they lack the CSP version or the exact track version. Post download links.

Cars and tracks on GamezServers

Our Assetto Corsa servers run AssettoServer, and the Content Manager pack goes up over the SFTP login in Settings or through the file manager, which also extracts zips and can download a file from a link straight to the server. Click Backup before replacing cfg or content, and the server stays online for the group without anyone's PC. For ports, presets and AI traffic, see how to host an Assetto Corsa server.

FAQ

Do I upload the whole car folder to the server?

No. The server only needs each car's data.acd (or data folder) and the track's data files. Content Manager's Pack collects exactly those.

Why does it say checksum mismatch?

The driver's car or track files differ from the server's. Everyone, server included, needs the same version of every mod.

What name goes in CARS= in server_cfg.ini?

The car's folder name from content/cars, such as ks_mazda_mx5_cup, separated by semicolons for several cars.

Can drivers download missing cars automatically?

Content Manager shows what is missing, and with download links in cm_content/content.json drivers can fetch the mods from your links.

Skip the setup. Your own Assetto Corsa server.

$2.49USD first month

Then $4.99/mo. Just trying it? $1.25 for 3 days

Keep reading