A computer-implemented method of updating content on a client device, the method comprising: receiving analytics data describing how a user uses the client device to consume digital content; generating a prediction model based on the analytics data, wherein generating the prediction model based on the analytics data comprises defining a feature space describing features for which predictions can be made, and wherein the feature space comprises time intervals; predicting, using the prediction model, when the user will consume digital content on the client device by at least: predicting whether the user will use the client device to consume digital content in the time intervals and predicting whether the client device will have network connectivity during the time intervals; and providing updated digital content to the client device in response to predicting when the user will consume digital content on the client device, wherein providing updated digital content comprises: providing prediction data to the client device, the prediction data indicating when the user will consume digital content on the client device; in response to providing the prediction data, receiving, from the client device, in one of the time intervals when the client device is predicted to have network connectivity and prior to one of the time intervals when the user is predicted to consume digital content on the client device, a request for the updated digital content; and in response to receiving the request, providing, to the client device, the updated digital content. receiving analytics data describing how a user uses the client device to consume digital content; generating a prediction model based on the analytics data, wherein generating the prediction model based on the analytics data comprises defining a feature space describing features for which predictions can be made, and wherein the feature space comprises time intervals; predicting, using the prediction model, when the user will consume digital content on the client device by at least: predicting whether the user will use the client device to consume digital content in the time intervals and predicting whether the client device will have network connectivity during the time intervals; and providing updated digital content to the client device in response to predicting when the user will consume digital content on the client device, wherein providing updated digital content comprises: providing prediction data to the client device, the prediction data indicating when the user will consume digital content on the client device; in response to providing the prediction data, receiving, from the client device, in one of the time intervals when the client device is predicted to have network connectivity and prior to one of the time intervals when the user is predicted to consume digital content on the client device, a request for the updated digital content; and in response to receiving the request, providing, to the client device, the updated digital content. providing prediction data to the client device, the prediction data indicating when the user will consume digital content on the client device; in response to providing the prediction data, receiving, from the client device, in one of the time intervals when the client device is predicted to have network connectivity and prior to one of the time intervals when the user is predicted to consume digital content on the client device, a request for the updated digital content; and in response to receiving the request, providing, to the client device, the updated digital content.