| County | Location | Mile[2] | Intersects | Notes | 
|---|
|  begins as a secondary route | 
| Wayne | Waynesboro | 0.0 |   US 64 / SR 15 (unsigned) (Dexter L. Woods Memorial Boulevard) |  | 
| Lewis | Hohenwald | 
| 28.5 |  SR 20 (East Fourth Avenue) | SR-20 concurrent for 0.7 mi (1.1 km) | 
| 28.8 |   SR 48 / SR 20 (South Park Street) | SR-48 concurrent with SR-99 and SR-20 for 0.4 mi (0.64 km) | 
| 29.2 |    US 412 / SR 20 / SR 48 (Main Street) | concurrency with SR-48 and SR-20 end | 
|  US 412 concurrent for 41.8 mi (67.3 km) and primary route  is unsigned | 
| 37.4 |  Natchez Trace Parkway |  | 
| Maury |  | 47.0 |  SR 166 (Pisgah Ridge Road) |  | 
| Columbia | 
| 57.2 |    US 43 / US 412 / SR 6 (Columbia Bypass) | SR-99 continues into downtown Columbia concurrent with US 412 BUS | 
| 59.3 |  SR 50 west (Williamsport Pike) | SR-50 concurrent with SR-99 and US 412 BUS for 1.1 mi (1.8 km) | 
| 60.4 |  SR 50 east (James Campbell Boulevard) | concurrency with SR-50 ends (US 412 BUS still concurrent) | 
| 61.4 |  SR 243 south (Trotwood Avenue) |  | 
| 62.0 |   US 31 / SR 7 (unsigned) (North Garden Street) | US 31 concurrent for 1.9 mi (3.1 km) and SR-7 concurrent for 0.5 mi (0.80 km) | 
| 62.5 |  SR 7 north (North James Campbell Boulevard) | concurrency with SR-7 ends and concurrency with US 31 and US 412 BUS continues | 
| 63.9 |     US 31 / US 43 / US 412 / SR 6 (unsigned) (Bear Creek Pike) | US 412 BUS ends and SR-99 rejoins concurrency with main US 412 route/US 31 concurreny ends | 
| 71.0 |  I-65 |  | 
| eastern national terminus of  US 412, SR-99 signage reusmes | 
|  | 74.9 |   US 431 / SR 106 (unsigned) (Lewisburg and Franklin Pike) | US 431 and SR-106 concurrent for 0.8 mi (1.3 km) | 
|  | 75.7 |   US 431 / SR 106 (unsigned) (Lewisburg and Franklin Pike) | US 431 and SR-106 concurrency ends | 
| Marshall | 
|  | 79.5 |  SR 272 (Verona Caney Road) |  | 
| Chapel Hill | 
| 83.1 |   US 31A / SR 11 (unsigned) (Sam Davis Highway) | US 31A and SR-11 concurrent for 3.3 mi (5.3 km) | 
|  reverts to a secondary route | 
| 83.9 |  SR 270 (Old Columbia Road) |  | 
| 86.4 |  US 31A (SR 11) (Nashville Highway) | US 31A and SR-11 concurrency ends | 
| Rutherford | Eagleville | 
| 92.9 |  US 41A (SR 16) (South Main Street) | US 41A and SR-16 concurrent for 1.5 mi (2.4 km) | 
| 94.4 |   US 41A / SR 269 (SR 16) | US 41A and SR-16 concurrency ends and SR-269 concurrent for 5.5 mi (8.9 km) | 
|  | 99.9 |  SR 269 (Jackson Ridge Road) | SR-269 concurrency ends | 
| Murfreesboro | 
| 110.3 |  I-24 |  | 
| 111.6 |  SR 96 (Old Fort Parkway) | SR-96 concurrent for 0.6 mi (0.97 km) and SR-99 is unsigned | 
| 112.2 |      US 70S/US 41/US 231/SR-1(unsigned)/SR-10(unsigned) (NW Broad Street) | US 70S and SR-1 concurrent for 1.2 mi (1.9 km), US 41 concurrent for 1.3 mi (2.1 km), US 231 and SR-10 concurrent for 0.7 mi (1.1 km), SR-96 concurrency ends | 
| 112.9 |   US 231 / SR 10 (unsigned) (South Church Street) | US 231 and SR-10 concurrency ends, US 70S, US 41, and SR-1 concurrency continues | 
| 113.4 |     US 70S / US 41 / SR 1 (unsigned) / SR 2 (unsigned) (Mercury Boulevard) | US 70S and SR-1 concurrency ends, US 41 concurrency continues, and SR-2 concurrent for 0.1 mi (0.16 km) | 
| 113.5 |   US 41 / SR 2 (unsigned) (SE Broad Street) | US 41 and SR-2 concurrency ends | 
| Cannon | Bradyville | 128.4 |  SR 64 (Bradyville Road) |  | 
|  ends as a secondary route | 
|