diff --git a/payload_generator/generate_delta_main.cc b/payload_generator/generate_delta_main.cc
index 7288eca..b04fec0 100644
--- a/payload_generator/generate_delta_main.cc
+++ b/payload_generator/generate_delta_main.cc
@@ -599,7 +599,6 @@
   if (FLAGS_is_partial_update) {
     payload_config.is_partial_update = true;
   }
-  payload_config.disable_vabc = FLAGS_disable_vabc;
 
   if (!FLAGS_in_file.empty()) {
     return ApplyPayload(FLAGS_in_file, payload_config) ? 0 : 1;
@@ -627,6 +626,12 @@
     CHECK(store.Load(base::FilePath(FLAGS_dynamic_partition_info_file)));
     CHECK(payload_config.target.LoadDynamicPartitionMetadata(store));
     CHECK(payload_config.target.ValidateDynamicPartitionMetadata());
+    if (FLAGS_disable_vabc) {
+      LOG(INFO) << "Disabling VABC";
+      payload_config.target.dynamic_partition_metadata->set_vabc_enabled(false);
+      payload_config.target.dynamic_partition_metadata
+          ->set_vabc_compression_param("");
+    }
   }
 
   CHECK(!FLAGS_out_file.empty());
diff --git a/payload_generator/payload_file.cc b/payload_generator/payload_file.cc
index d303cfb..6ec219f 100644
--- a/payload_generator/payload_file.cc
+++ b/payload_generator/payload_file.cc
@@ -72,11 +72,6 @@
     *(manifest_.mutable_dynamic_partition_metadata()) =
         *(config.target.dynamic_partition_metadata);
 
-  if (config.disable_vabc) {
-    manifest_.mutable_dynamic_partition_metadata()->set_vabc_enabled(false);
-    manifest_.mutable_dynamic_partition_metadata()->set_vabc_compression_param(
-        "");
-  }
   if (config.is_partial_update) {
     manifest_.set_partial_update(true);
   }
diff --git a/payload_generator/payload_generation_config.cc b/payload_generator/payload_generation_config.cc
index 73c9ab3..d45de6a 100644
--- a/payload_generator/payload_generation_config.cc
+++ b/payload_generator/payload_generation_config.cc
@@ -177,7 +177,9 @@
   store.GetBoolean("virtual_ab", &snapshot_enabled);
   metadata->set_snapshot_enabled(snapshot_enabled);
   bool vabc_enabled = false;
-  if (store.GetBoolean("virtual_ab_compression", &vabc_enabled)) {
+  if (store.GetBoolean("virtual_ab_compression", &vabc_enabled) &&
+      vabc_enabled) {
+    LOG(INFO) << "Target build supports VABC";
     metadata->set_vabc_enabled(vabc_enabled);
   }
   // We use "gz" compression by default for VABC.
diff --git a/payload_generator/payload_generation_config.h b/payload_generator/payload_generation_config.h
index f7d0b6b..9c8c59f 100644
--- a/payload_generator/payload_generation_config.h
+++ b/payload_generator/payload_generation_config.h
@@ -231,11 +231,6 @@
   // The maximum timestamp of the OS allowed to apply this payload.
   int64_t max_timestamp = 0;
 
-  // Permit use of VABC by default. Even if this is set to true, the device must
-  // support VABC in order to use it. If this is set to false, device must not
-  // use VABC regardless.
-  bool disable_vabc = false;
-
   // Path to apex_info.pb, extracted from target_file.zip
   std::string apex_info_file;
 };
diff --git a/scripts/brillo_update_payload b/scripts/brillo_update_payload
index c510148..d1a1781 100755
--- a/scripts/brillo_update_payload
+++ b/scripts/brillo_update_payload
@@ -706,10 +706,11 @@
       GENERATOR_ARGS+=(
         --disable_verity_computation="${FLAGS_disable_verity_computation}" )
     fi
-    if [[ -n "${FLAGS_disable_vabc}" ]]; then
-      GENERATOR_ARGS+=(
-        --disable_vabc="${FLAGS_disable_vabc}" )
-    fi
+  fi
+
+  if [[ -n "${FLAGS_disable_vabc}" ]]; then
+    GENERATOR_ARGS+=(
+      --disable_vabc="${FLAGS_disable_vabc}" )
   fi
 
   # minor version is set only for delta or partial payload.
