A computer program product comprising program code means for causing a data processing system to perform method for detecting and monitoring movement of a patient's teeth between a first and a second point in time, wherein the method comprises: - obtaining a first digital 3D representation of the teeth recorded at the first point in time and segmenting the first digital 3D representation such that a first 3D tooth model is formed for at least one tooth; - obtaining a second digital 3D representation of the teeth recorded at the second point in time and segmenting the second digital 3D representation such that a second 3D tooth model is formed for the at least one tooth; - locally aligning the first and second 3D tooth models comprising anatomically corresponding regions on tooth surfaces, wherein locally aligning comprises determining a transformation matrix which provides the local alignment between the first and second 3D tooth models (452, 451); - selecting one or more anatomically corresponding regions on tooth surfaces of the locally aligned segmented first and second 3D tooth models (4551, 4552, 4561, 4562, 4571, 4572); - arranging the first and second digital 3D representations or the first and second 3D tooth models according to a global alignment of the patient's set of teeth; - identifying the selected one or more anatomically corresponding regions on the globally aligned first and second digital 3D representations; - deriving, from the transformation matrix, the distances between the selected anatomically corresponding regions on the globally aligned first and second digital 3D representations or on the first and second 3D tooth models; and - determining the tooth movement for the at least one tooth between the first and second point in time based on the derived distances. - obtaining a first digital 3D representation of the teeth recorded at the first point in time and segmenting the first digital 3D representation such that a first 3D tooth model is formed for at least one tooth; - obtaining a second digital 3D representation of the teeth recorded at the second point in time and segmenting the second digital 3D representation such that a second 3D tooth model is formed for the at least one tooth; - locally aligning the first and second 3D tooth models comprising anatomically corresponding regions on tooth surfaces, wherein locally aligning comprises determining a transformation matrix which provides the local alignment between the first and second 3D tooth models (452, 451); - selecting one or more anatomically corresponding regions on tooth surfaces of the locally aligned segmented first and second 3D tooth models (4551, 4552, 4561, 4562, 4571, 4572); - arranging the first and second digital 3D representations or the first and second 3D tooth models according to a global alignment of the patient's set of teeth; - identifying the selected one or more anatomically corresponding regions on the globally aligned first and second digital 3D representations; - deriving, from the transformation matrix, the distances between the selected anatomically corresponding regions on the globally aligned first and second digital 3D representations or on the first and second 3D tooth models; and - determining the tooth movement for the at least one tooth between the first and second point in time based on the derived distances.