Een data race treedt op wanneer twee of meer goroutines gelijktijdig dezelfde geheugenlocatie benaderen, minstens één benadering een schrijfoperatie is, en er geen synchronisatie tussen hen plaatsvindt. Het resultaat is ongedefinieerd gedrag — beschadigde gegevens, crashes of foute resultaten die sporadisch optreden. Go biedt een ingebouwde race detector om deze te vinden.
