Een race condition (ook wel race hazard genoemd) is een probleem met het ontwerp van een systeem. Bij een race condition is het resultaat van een berekening of het gedrag van het systeem als geheel afhankelijk van hoe lang een bepaalde berekening duurt, of wanneer deze wordt gestart. Race conditions komen voor in logische schakelingen en computersoftware, vooral bij multi-threaded of gedistribueerde systemen.