Believe it or not, this is actually not well documented nor available (at the time of writing this) within ServiceM8 public support documentation.
While there are a number of factors involved, here is what we can state about this:
- Generally, it requires the device to be at a location for 5 - 10 minutes.
 - The actual distance depends on a number of factors, such as:
 - Whether there are other jobs in the area or not
 - Generally it should check them in when they are within 100 - 500 meters of a job location.