1. A method comprising: receiving by a server coupled to a computer network activity data of a monitoring device that is configured to be worn by a user, the activity data indicating a plurality of amounts of movements of the monitoring device while being engaged in different activities during a day; receiving by the server via the computer network geo-location data for the monitoring device, wherein the geo-location data is obtained from a global positioning system; receiving by the server via the computer network times at which the activity data is gathered by the monitoring device; storing by the server the activity data, the times, and the geo-location data; and identifying by the server two or more events during the day by analyzing the activity data, the times, and the geo-location data for the day, wherein one of the two or more events includes activity levels representing a subset of the activity data and includes an identifier of a location at which the activity data of the subset is gathered, wherein another one of the two or more events includes activity levels representing another subset of the activity data and includes another identifier of one of the different activities, wherein identifying the two or more events includes identifying within the one of the two or more events during the day a time of entry at the location by the monitoring device and a time of exit from the location by the monitoring device, wherein the time of entry is one of the times received and the time of exit is another one of the times received, wherein identifying the time of entry comprises: calculating a speed of the monitoring device along a path to the location based on the geo-location data; and computing the time of entry at the location from the speed.