1. A computer-implemented method for modifying a geofence boundary based at least in part on reference geofence data, the method comprising: receiving, by a geofence engine and from a first mobile device, an indication of an initial point of interest (POI) and an indication of an initial geofence boundary, wherein the initial geofence boundary is a circle centered on the initial POI and having a first radius, and wherein the geofence engine comprises at least one processor and associated memory; identifying, by the geofence engine, a plurality of reference geofence boundaries, wherein each reference geofence boundary of the plurality of reference geofence boundaries is a circle centered on a reference POI at the same location as the initial POI; selecting, by the geofence engine and from the plurality of reference geofence boundaries, at least one equivalent geofence boundary having a second radius equal to the first radius of the initial geofence boundary; determining, by the geofence engine, that an observed response time for the at least one equivalent geofence boundary is greater than a threshold response time, wherein the observed response time of the at least one equivalent geofence boundary is a time between when a second mobile device crossed the at least one equivalent geofence boundary and when the geofence engine determined that the second mobile device crossed the at least one equivalent geofence boundary; selecting from the reference geofence boundaries an alternate geofence boundary, wherein the alternate geofence boundary has an observed response time less than the threshold response time, wherein the observed response time of the alternate geofence boundary is a time between when a third mobile device crossed the alternate geofence boundary and when the geofence engine determined that the third mobile device crossed the alternate geofence boundary; and applying the alternate geofence boundary for the first mobile device, wherein applying the alternate geofence boundary comprises: receiving a first location of the first mobile device at a first time and a second location of the first mobile device at a second time; determining that the alternate geofence boundary is between the first and second locations; and sending to the first mobile device an indication that the first mobile device has breached the alternate geofence boundary.