A method, comprising: partitioning data from a plurality of magnetic sensor measurements collected at one or more mobile devices (12a,12b,12c...) into a plurality of partitioned sets of data, each of the magnetic sensor measurements associated with a location of one of the mobile devices and having an associated calibration error, wherein the partitioning is performed based on at least one of: orientation of the one or more mobile devices, or the identifier of the mobile devices at which the magnetic sensor measurements are collected, the partitioning such that each partitioned set is associated with a respective calibration error associated with the magnetic sensor measurements used to generate the data in the partitioned set; identifying one or more pairs of data items, each pair including: a data item from a first of the partitioned sets corresponding to a magnetic sensor measurement, associated with a first location, used to generate the data in the first partitioned set, and a data item from a second of the partitioned sets corresponding to a magnetic sensor measurement, associated with a second location that is substantially the same as the first location, used to generate the data in the first partitioned set; and estimating the calibration error associated with each of the partitioned sets based in part on the one or more pairs. partitioning data from a plurality of magnetic sensor measurements collected at one or more mobile devices (12a,12b,12c...) into a plurality of partitioned sets of data, each of the magnetic sensor measurements associated with a location of one of the mobile devices and having an associated calibration error, wherein the partitioning is performed based on at least one of: orientation of the one or more mobile devices, or the identifier of the mobile devices at which the magnetic sensor measurements are collected, the partitioning such that each partitioned set is associated with a respective calibration error associated with the magnetic sensor measurements used to generate the data in the partitioned set; one or more mobile devices (12a,12b,12c...) into a plurality of partitioned sets of data, each of the magnetic sensor measurements associated with a location of one of the mobile devices and having an associated calibration error, wherein the partitioning is performed based on at least one of: orientation of the one or more mobile devices, or the identifier of the mobile devices at which the magnetic sensor measurements are collected, the partitioning such that each partitioned set is associated with a respective calibration error associated with the magnetic sensor measurements used to generate the data in the partitioned set; orientation of the one or more mobile devices, or the identifier of the mobile devices at which the magnetic sensor measurements are collected, the partitioning such that each partitioned set is associated with a respective calibration error associated with the magnetic sensor measurements used to generate the data in the partitioned set; identifying one or more pairs of data items, each pair including: a data item from a first of the partitioned sets corresponding to a magnetic sensor measurement, associated with a first location, used to generate the data in the first partitioned set, and a data item from a second of the partitioned sets corresponding to a magnetic sensor measurement, associated with a second location that is substantially the same as the first location, used to generate the data in the first partitioned set; and a data item from a first of the partitioned sets corresponding to a magnetic sensor measurement, associated with a first location, used to generate the data in the first partitioned set, and a data item from a second of the partitioned sets corresponding to a magnetic sensor measurement, associated with a second location that is substantially the same as the first location, used to generate the data in the first partitioned set; and estimating the calibration error associated with each of the partitioned sets based in part on the one or more pairs.