El arbitraje CAN se basa en la identificación del mensaje, por lo que si dos mensajes comienzan a transmitirse simultáneamente, gana el que tenga la identificación más baja (prioridad más alta) y el controlador CAN con la identificación más alta retroceda y vuelva a intentarlo una vez que el bus esté disponible. Esto se logra monitoreando el bus durante la transmisión; ya que el bit 0 es dominante en el bus CAN, si transmite un 1 en su ID pero lee un 0, la conclusión es que algún otro controlador está transmitiendo con una prioridad más alta.
No existe un mecanismo que cumpla con las normas para interrumpir un mensaje en curso en el bus, por lo que los controladores que se comportan correctamente no transmitirán hasta que se complete el mensaje actual.
En resumen, si los mensajes comienzan a transmitirse al mismo tiempo, el mensaje de mayor prioridad se recibirá primero. Si el mensaje de prioridad más baja comienza primero, se recibirá primero. En el nodo receptor, depende del programador decidir cómo manejar las prioridades si se recibe un mensaje de mayor prioridad antes de que se complete el procesamiento relacionado para el mensaje de menor prioridad.