A computer implemented method of creating map data for a map, the map comprising a plurality of navigable segments representing segments of a navigable route in the area covered by the map with each navigable segment having speed data associated therewith, wherein said speed data comprises a plurality of average speeds at which devices travelled along the segment represented by the navigable segment of the map, and wherein said speed data is grouped into a plurality of predetermined time periods over a period of time, the method comprising: processing (700,702,704) the speed data to determine a measured speed profile for the plurality of navigable segments, said processing comprising averaging the average speeds within each of the plurality of time periods, such that the measured speed profile comprises an average speed for each of the predetermined time periods and is representative of the variation in traffic speed along the segment represented by the navigable segment of the map over the period of time; characterised by processing the measured speed profiles relating to the plurality of navigable segments using a clustering technique by identifying similarities between the measured speed profiles to generate a set of generated speed profiles, with each generated speed profile within the set being an approximation to the variation in traffic speed along one or more of the segments represented by the plurality of navigable segments over the period of time; associating (1210,1220) one of the generated speed profiles from the set with each of the plurality of navigable segments within the map by comparing the measured speed profile for a navigable segment to the set of generated speed profiles to determine which of the generated speed profiles is closest to the measured speed profile; and generating a map using the map data, such that the map comprises the set of generated speed profiles and, for each navigable segment, an identifier providing a reference to the associated one of the generated speed profiles. processing (700,702,704) the speed data to determine a measured speed profile for the plurality of navigable segments, said processing comprising averaging the average speeds within each of the plurality of time periods, such that the measured speed profile comprises an average speed for each of the predetermined time periods and is representative of the variation in traffic speed along the segment represented by the navigable segment of the map over the period of time; characterised by processing the measured speed profiles relating to the plurality of navigable segments using a clustering technique by identifying similarities between the measured speed profiles to generate a set of generated speed profiles, with each generated speed profile within the set being an approximation to the variation in traffic speed along one or more of the segments represented by the plurality of navigable segments over the period of time; associating (1210,1220) one of the generated speed profiles from the set with each of the plurality of navigable segments within the map by comparing the measured speed profile for a navigable segment to the set of generated speed profiles to determine which of the generated speed profiles is closest to the measured speed profile; and generating a map using the map data, such that the map comprises the set of generated speed profiles and, for each navigable segment, an identifier providing a reference to the associated one of the generated speed profiles.