Patent attributes
In some implementations, a system can intelligently restore data to a user's computing device. For example, the system can prioritize data to be restored to a user device based on the data that the user is most likely to use. The system can restore high priority data items first while delaying restoration of low priority data items. The system can control when data restoration is performed based on device conditions. For example, the device conditions can include how much of an energy budget and/or data budget remains for downloading data to the user device. The device conditions can include the thermal condition (e.g., how hot) of the user device. If device conditions do not allow for downloading data at a particular time, then the device can delay downloading data until the device conditions allow for downloading and/or restoring the data.