A variable valve timing apparatus for an internal combustion engine, characterized by comprising: an actuator that activates a variable valve timing mechanism that varies a valve characteristic of an engine valve; a detection unit that detects a driving position of the actuator; a control unit that drive-controls the actuator within a driving range thereof on the basis of the driving position detected by the detection unit, and when a predetermined execution condition is established, executes an initialization process that matches the driving position of the actuator detected by the detection unit with an actual driving position of the actuator; and an abnormality determination unit that determines whether or not an abnormality is present in the driving position detected by the detection unit and stores an abnormality history after determining that an abnormality is present, wherein in the initialization process, the driving position detected by the detection unit in a state where the actuator is driven to one end of the driving range is set at an initial value, the actuator is then driven to an opposite end of the driving range that is opposite to the one end of the driving range, and an offset amount from an appropriate value of the driving position detected by the detection unit in a state where the actuator is driven to the opposite end of the driving range is reflected in the driving position to compensate for the offset amount; and when the abnormality history is not stored, the control unit increases a driving speed of the actuator during the initialization process beyond the driving speed when the abnormality history is stored. an actuator that activates a variable valve timing mechanism that varies a valve characteristic of an engine valve; a detection unit that detects a driving position of the actuator; a control unit that drive-controls the actuator within a driving range thereof on the basis of the driving position detected by the detection unit, and when a predetermined execution condition is established, executes an initialization process that matches the driving position of the actuator detected by the detection unit with an actual driving position of the actuator; and an abnormality determination unit that determines whether or not an abnormality is present in the driving position detected by the detection unit and stores an abnormality history after determining that an abnormality is present, wherein in the initialization process, the driving position detected by the detection unit in a state where the actuator is driven to one end of the driving range is set at an initial value, the actuator is then driven to an opposite end of the driving range that is opposite to the one end of the driving range, and an offset amount from an appropriate value of the driving position detected by the detection unit in a state where the actuator is driven to the opposite end of the driving range is reflected in the driving position to compensate for the offset amount; and when the abnormality history is not stored, the control unit increases a driving speed of the actuator during the initialization process beyond the driving speed when the abnormality history is stored.