Shopify Product Import Behavior Explained: Take Full Control of Your Product Data

- Shopify

illustrative image for the Shopify product import behavior explained guide with emojis, shopify logo, and text on green background

When managing a Shopify store at scale, data import isn’t just about uploading a CSV — it’s about control. How should new products be created? Should existing listings be updated or left untouched? And what happens when supplier data overlaps with what’s already in your catalog?

To address these questions, we’ve introduced a flexible new feature called Import Behavior, giving you precise control over how products and variants are handled during import operations in Shopify. Whether you’re syncing your ERP data daily or onboarding a new supplier feed, this feature ensures every import behaves exactly as you intend — no surprises, no overwrites, and no missing data. Let’s explore this feature of the Improved Import & Export app.

What Is Import Behavior in Shopify?

Import Behavior determines how Shopify processes product and variant data during imports. With the latest version of the Improved Import & Export app, you can configure the system to:

  • Create new products and variants.
  • Update existing items with new information.
  • Or apply both actions simultaneously.

In short, it defines whether Shopify should create, update, or do both when reading your import file.

Why Shopify Product Import Behavior Matters

Every Shopify store handles product data differently. Some merchants manage everything directly in Shopify, while others rely on automated imports from ERP, warehouse, or PIM systems. Without clear import rules, your store data can easily become inconsistent — overwritten prices, duplicate SKUs, or missing variants.

The Import Behavior feature eliminates these risks by letting you define exactly how your import behaves before it even runs. For example:

  • You can add new products from suppliers while keeping your manually customized listings safe.
  • You can stop unwanted product creation during synchronization jobs.

With this control, every import becomes safer, faster, and more predictable.

The Three Import Behaviors Explained

Below, we explain the three import behavior options available in the Improved Import & Export app for Shopify.

screenshot showing how to switch between different import behaviors in shopify: create new products, update the existing products, or do both actions simultaneously

1. Create and Update (Default)

Value: create_and_update

This is the most balanced mode — ideal for most import operations.

What It Does

  • Creates new products that don’t exist in Shopify.
  • Adds new variants to existing products.
  • Updates existing products and variants with data from your import file.

When to Use It

  • Standard imports and daily sync jobs.
  • First-time catalog uploads.
  • Whenever you want Shopify to stay fully synchronized with your external database or supplier feed.

Let’s suppose your import file has 100 products — 50 already exist in Shopify, 50 are new. The app updates the 50 existing products and automatically creates the 50 new ones.

Use this mode for your regular synchronization workflow to keep your catalog complete and consistent.

2. Only Create

Value: only_create

This mode focuses entirely on adding new data — nothing else.

What It Does

  • Creates new products and variants that aren’t in Shopify yet.
  • Skips all existing products — they remain untouched.

When to Use It

  • When importing new supplier feeds.
  • When your team manually edits product details in Shopify and you don’t want imports to overwrite them.
  • When bulk-creating products from multiple external sources.

Let’s explore the same import of the CSV with 100 products but a different behavior option. If 50 products from this file already exist in Shopify, the system will create only the other 50 and leave your existing data intact.

Combine this behavior with attribute mapping to safely merge supplier data without risking SEO-optimized content or images.

3. Only Update

Value: only_update

This behavior is all about maintenance — updating existing products without adding anything new.

What It Does

  • Updates existing products and variants only.
  • Skips all new items (nothing new gets created).

When to Use It

  • For regular updates from ERP or inventory management systems.
  • When refreshing prices, quantities, or descriptions of existing SKUs.
  • When you need to guarantee that no accidental product creation occurs.

Here we go again: Your CSV file contains 100 products. However, only 50 exist in Shopify. The app updates those 50 and ignores the rest. This behavior is best for scheduled synchronization tasks, such as nightly stock updates or automated pricing adjustments.

Variant-Level Precision in Shopify Product Import Behavior

The Import Behavior logic applies at the variant level, not just the product level. This ensures granular control for stores with complex catalog structures.

For instance, your CSV contains Product A with:

  • Variant “Small” (already exists)
  • Variant “Medium” (new)

If you select “Only Update”:

  • Product A → Updated
  • Variant Small → Updated
  • Variant Medium → Skipped

If you select “Only Create”:

  • Product A → Skipped (already exists)
  • Variant Small → Skipped (already exists)
  • Variant Medium → Created

This precision helps you maintain variant consistency even across large, multi-option catalogs.

How to Configure Import Behavior in Shopify

You can set the desired import behavior either through the UI or by editing the profile configuration JSON directly.

Option 1: Set via User Interface

  1. Go to Import → Profiles.
  2. Create a new profile or edit an existing one.
  3. Find the Import Behavior dropdown.
  4. Choose one of the three options:
    • Create and Update (default)
    • Only Create
    • Only Update
  5. Save your profile and run the import.

Option 2: Set via Profile Configuration JSON

If you prefer manual configuration, add the import_behavior field to your profile JSON:

{
“delimiter”: “,”,
“enclosure”: “\””,
“import_behavior”: “only_update”
}

Valid Values:

  • “create_and_update” — default behavior (used when not specified).
  • “only_create”
  • “only_update”

Shopify Product Import Behavior Use Cases: Practical Scenarios and Recommendations

Below are common real-world use cases illustrating how each behavior can be applied effectively:

Use Case 1: Price Updates from ERP

Scenario: Your ERP exports updated prices daily.

Solution: Use Only Update.

  • Updates all existing product prices.
  • Prevents accidental creation of test or invalid SKUs.

Use Case 2: Supplier Product Feeds

Scenario: You import supplier data but maintain your own product descriptions.

Solution: Use Only Create.

  • Adds new products from suppliers.
  • Keeps your existing SEO content intact.

Use Case 3: Inventory Synchronization

Scenario: Your warehouse system exports stock levels for active SKUs only.

Solution: Use Only Update.

  • Syncs inventory quantities for existing products.
  • Prevents errors if the file includes discontinued SKUs.

Use Case 4: Initial Catalog Import

Scenario: You’re importing your full catalog for the first time.

Solution: Use Create and Update.

  • Creates all products on the first import.
  • Updates them automatically on future imports.

Important Notes and Best Practices

  • Default Mode: If no behavior is selected, the system defaults to create_and_update.
  • Matching Logic:
    • Products are matched by handle.
    • Variants are matched by option values (e.g., Size, Color).
  • Data Validation: Invalid or missing records are automatically skipped and logged.
  • Performance Tip: “Only Create” and “Only Update” modes can process large catalogs faster because they skip unnecessary checks.

Shopify Product Import Behavior Troubleshooting

Below, you can find several common issues that may occur during Shopify product import due to incorrect import behavior configuration:

Problem: My import shows “0 processed” when using “Only Update.”
Cause: None of the products in your import file exist in Shopify.
Fix: Check that the product handles in your file exactly match those in Shopify.

Problem: New variants aren’t being created with “Create and Update.”
Cause: The variant option values already exist. Variants are matched by option values, not SKU.
Fix: Verify that your import file defines unique variant combinations.

Problem: New products are being created even though “Only Update” is selected.
Cause: The behavior setting may not be saved properly.
Fix: Check your profile configuration and ensure “import_behavior”: “only_update” is correctly set.

Final Thoughts: Extra Flexibility with Shopify Import Behavior

The Shopify Import Behavior feature gives you unmatched control over your product data management. It’s not just a technical setting — it’s a safeguard against data chaos.

By choosing the right mode for your workflow, you can:

  • Prevent unwanted overwrites and duplicates.
  • Streamline ERP or supplier integrations.
  • Maintain consistent, accurate product data across all your sales channels.

Whether you’re running a small boutique or managing a multi-store operation, the right import behavior introduces extra flexibility necessary to keep your catalog clean, your SEO intact, and your workflow automated.

Try adjusting your import behavior today — and experience smoother, safer, and more intelligent product data management in Shopify.

👉 Explore the Improved Import & Export app for Shopify

📘 Read the full user manual