diff --git a/commerce_autosku.commerce.inc b/commerce_autosku.commerce.inc
index d7749f1..8901fad 100644
--- a/commerce_autosku.commerce.inc
+++ b/commerce_autosku.commerce.inc
@@ -64,7 +64,7 @@ function commerce_autosku_commerce_product_presave($product) {
       $product->sku = _commerce_autosku_get_temporary_sku();
     }
     //@todo: Replace TRUE with a check if we should update existing SKUS.
-    elseif (empty($product->sku) || $settings['advanced']['update_existing']) {
+    elseif (empty($product->sku) || _commerce_autosku_is_temporary_sku($product->sku) || $settings['advanced']['update_existing']) {
       $data = array('commerce-product' => $product);
       $sku = token_replace($settings['pattern'], $data);
       if ($settings['advanced']['case']) {
