diff --git a/install_plan.h b/install_plan.h
index fba89fe..9fc6ead 100644
--- a/install_plan.h
+++ b/install_plan.h
@@ -16,11 +16,13 @@
 struct InstallPlan {
   InstallPlan(bool is_full,
               const std::string& url,
+              uint64_t size,
               const std::string& hash,
               const std::string& install_path,
               const std::string& kernel_install_path)
       : is_full_update(is_full),
         download_url(url),
+        size(size),
         download_hash(hash),
         install_path(install_path),
         kernel_install_path(kernel_install_path) {}
@@ -28,6 +30,7 @@
 
   bool is_full_update;
   std::string download_url;  // url to download from
+  uint64_t size;  // size of the download url's data
   std::string download_hash;  // hash of the data at the url
   std::string install_path;  // path to install device
   std::string kernel_install_path;  // path to kernel install device
@@ -35,6 +38,7 @@
   bool operator==(const InstallPlan& that) const {
     return (is_full_update == that.is_full_update) &&
            (download_url == that.download_url) &&
+           (size == that.size) &&
            (download_hash == that.download_hash) &&
            (install_path == that.install_path) &&
            (kernel_install_path == that.kernel_install_path);
@@ -45,7 +49,9 @@
   void Dump() const {
     LOG(INFO) << "InstallPlan: "
               << (is_full_update ? "full_update" : "delta_update")
-              << ", url: " << download_url << ", hash: " << download_hash
+              << ", url: " << download_url
+              << ", size: " << size
+              << ", hash: " << download_hash
               << ", install_path: " << install_path
               << ", kernel_install_path: " << kernel_install_path;
   }
