A computer-implemented method comprising: causing an aggregation of probe data into a tunnel path based on a network geometry topology for a tunnel, the probe data associated with at least one vehicle, whilst a vehicle is travelling through the tunnel, determining an estimated tunnel speed of the vehicle through the tunnel by: - causing a designation of a starting point of the tunnel path, wherein the starting point is a probe point collected by the vehicle at a location upstream of the tunnel and a timestamp for the probe point is a collection time of the probe point by the vehicle; - causing a designation of an endpoint of the tunnel path, wherein the endpoint is a temporary probe point located downstream of the tunnel and wherein a timestamp for the temporary probe point is a current time; and - determining an estimated tunnel speed for the tunnel path by dividing the length of the tunnel path between the starting point and the endpoint by the difference between the timestamps for the endpoint and the starting point; at least once whilst the vehicle is travelling through the tunnel, repeating the determination of the estimated tunnel speed and initiating the determination of an estimated traffic congestion status of the tunnel based on the estimated tunnel speed. causing an aggregation of probe data into a tunnel path based on a network geometry topology for a tunnel, the probe data associated with at least one vehicle, whilst a vehicle is travelling through the tunnel, determining an estimated tunnel speed of the vehicle through the tunnel by: - causing a designation of a starting point of the tunnel path, wherein the starting point is a probe point collected by the vehicle at a location upstream of the tunnel and a timestamp for the probe point is a collection time of the probe point by the vehicle; - causing a designation of an endpoint of the tunnel path, wherein the endpoint is a temporary probe point located downstream of the tunnel and wherein a timestamp for the temporary probe point is a current time; and - determining an estimated tunnel speed for the tunnel path by dividing the length of the tunnel path between the starting point and the endpoint by the difference between the timestamps for the endpoint and the starting point; - causing a designation of a starting point of the tunnel path, wherein the starting point is a probe point collected by the vehicle at a location upstream of the tunnel and a timestamp for the probe point is a collection time of the probe point by the vehicle; - causing a designation of an endpoint of the tunnel path, wherein the endpoint is a temporary probe point located downstream of the tunnel and wherein a timestamp for the temporary probe point is a current time; and - determining an estimated tunnel speed for the tunnel path by dividing the length of the tunnel path between the starting point and the endpoint by the difference between the timestamps for the endpoint and the starting point; at least once whilst the vehicle is travelling through the tunnel, repeating the determination of the estimated tunnel speed and initiating the determination of an estimated traffic congestion status of the tunnel based on the estimated tunnel speed.