A method comprising: storing, by a client device, a plurality of synchronized items including placeholder items and content items; storing, by the client device, a local file journal comprising a plurality of local entries, each local entry representing one of the plurality of synchronized items, wherein each local entry includes a local journal ID of the synchronized item, a local blocklist for the synchronized item, a plurality of local attributes of the synchronized item, and a local sync type, the local sync type indicating whether the synchronized item is a placeholder item or a content item; receiving, by a client device, an updated entry from a content management system, the updated entry representing a new version of a synchronized item of the plurality of synchronized items and including an updated journal ID for the synchronized item, an updated blocklist for the synchronized item, a plurality of updated attributes for the synchronized item, and an updated sync type; comparing the received updated entry to the plurality of local entries to identify a corresponding local entry from the plurality of local entries; determining that the synchronized item represented by the corresponding local entry is a placeholder item based on a local sync type of the corresponding local entry; and responsive to the updated sync type indicating that the new version of the synchronized item is a content item: downloading, from the content management system to the client device, blocks for the new version of the synchronized item indicated by the updated blocklist; replacing in the client device the placeholder item with a new content item including the downloaded blocks; and replacing in the local file journal the corresponding local entry for the synchronized item with the updated entry for the synchronized item. storing, by a client device, a plurality of synchronized items including placeholder items and content items; storing, by the client device, a local file journal comprising a plurality of local entries, each local entry representing one of the plurality of synchronized items, wherein each local entry includes a local journal ID of the synchronized item, a local blocklist for the synchronized item, a plurality of local attributes of the synchronized item, and a local sync type, the local sync type indicating whether the synchronized item is a placeholder item or a content item; receiving, by a client device, an updated entry from a content management system, the updated entry representing a new version of a synchronized item of the plurality of synchronized items and including an updated journal ID for the synchronized item, an updated blocklist for the synchronized item, a plurality of updated attributes for the synchronized item, and an updated sync type; comparing the received updated entry to the plurality of local entries to identify a corresponding local entry from the plurality of local entries; determining that the synchronized item represented by the corresponding local entry is a placeholder item based on a local sync type of the corresponding local entry; and responsive to the updated sync type indicating that the new version of the synchronized item is a content item: downloading, from the content management system to the client device, blocks for the new version of the synchronized item indicated by the updated blocklist; replacing in the client device the placeholder item with a new content item including the downloaded blocks; and replacing in the local file journal the corresponding local entry for the synchronized item with the updated entry for the synchronized item. downloading, from the content management system to the client device, blocks for the new version of the synchronized item indicated by the updated blocklist; replacing in the client device the placeholder item with a new content item including the downloaded blocks; and replacing in the local file journal the corresponding local entry for the synchronized item with the updated entry for the synchronized item.