A motor control system that controls a motor by controlling a current supplied to the motor based on a position command input from a host device and controls an operation of a speed reducer including an input shaft connected to an output shaft of the motor and an output shaft connected to a load, the motor control system comprising: a detection unit that is configured to detect an event for detecting a rotation speed of the output shaft of the motor; a speed deviation generation unit that is configured to generate a speed command based on the position command and to calculate a speed deviation which is a deviation between the speed command and the rotation speed of the output shaft of the motor detected based on the event detected by the detection unit; an angular transmission error compensation unit that is configured to estimate an angular transmission error between a rotation angle of the output shaft of the motor and a rotation angle of the output shaft of the speed reducer based on the position command and a speed feedforward command, and to correct the speed command, the speed deviation, or the rotation speed of the output shaft of the motor detected based on the event detected by the detection unit, based on the estimated angular transmission error; a current command generation unit that is configured to receive the speed deviation generated by the speed deviation generation unit based on the speed command corrected by the angular transmission error compensation unit, the speed deviation generated by the speed deviation generation unit based on the rotation speed of the output shaft of the motor corrected by the angular transmission error compensation unit, or the speed deviation generated by the speed deviation generation unit and corrected by the angular transmission error compensation unit, and to generate a current command based on the received speed deviation; and a current control unit that is configured to control a current supplied to the motor based on the current command. a detection unit that is configured to detect an event for detecting a rotation speed of the output shaft of the motor; a speed deviation generation unit that is configured to generate a speed command based on the position command and to calculate a speed deviation which is a deviation between the speed command and the rotation speed of the output shaft of the motor detected based on the event detected by the detection unit; an angular transmission error compensation unit that is configured to estimate an angular transmission error between a rotation angle of the output shaft of the motor and a rotation angle of the output shaft of the speed reducer based on the position command and a speed feedforward command, and to correct the speed command, the speed deviation, or the rotation speed of the output shaft of the motor detected based on the event detected by the detection unit, based on the estimated angular transmission error; a current command generation unit that is configured to receive the speed deviation generated by the speed deviation generation unit based on the speed command corrected by the angular transmission error compensation unit, the speed deviation generated by the speed deviation generation unit based on the rotation speed of the output shaft of the motor corrected by the angular transmission error compensation unit, or the speed deviation generated by the speed deviation generation unit and corrected by the angular transmission error compensation unit, and to generate a current command based on the received speed deviation; and a current control unit that is configured to control a current supplied to the motor based on the current command.