Skip to main content

Configuring COGS

How to configure your Cost of Goods Sold (COGS) per SKU or as a fallback percentage — and why accurate COGS is the foundation of your CM1.

Written by Frank Birzle

tl;dr

COGS is the first deduction from your revenue in Klar's margin waterfall:

Net Revenue − COGS = CM1 (product margin)

COGS should include all landed product costs: purchase price, inbound shipping to your warehouse, customs duties — excl. VAT.

There are three ways to get COGS into Klar. Klar applies them in this priority order:

  1. Per SKU via Google Sheet — most accurate; takes priority over all other methods for matching SKUs

  2. Auto-imported from your shop system — Klar automatically syncs the product cost field from Shopify, Shopware, and Centra at SKU level; no extra setup needed

  3. Fallback percentage — applied to any product not covered by Options 1 or 2; configured in Store Configurator → Costs

Think of it as a cascade: SKU sheet first, then the shop system import, then the percentage catches everything else. You don't need all three — but combining them gives you precise costs where it matters and zero gaps in coverage.

⚠️ Note: COGS is not applied to returned items.

Option 1 — Automatic import from your shop system

No setup required in Klar. Klar automatically syncs COGS at SKU level from Shopify, Shopware, and Centra — using the product cost field stored in each platform.

⚠️ Prerequisite: For the auto-import to work, make sure the product cost field is filled in and kept up to date for every SKU in your shop system.

  • ShopifyCost per item field: Shopify Admin → Products → select a product → Inventory section

  • ShopwarePurchase price field: Shopware Admin → Products → select a product → Prices tab

  • CentraUnit cost field on Purchase Orders: Centra Admin → SuppliersPurchase Orders → enter the unit cost per SKU on each purchase order line

For Shopify, you can also choose how Klar reads these values in your datasource settings:

  • Use product information at checkout (snapshot) — pulls the COGS value that was stored at the time the order was placed. Recommended for accuracy when costs change over time.

  • Use product information from catalog — applies the current "cost per item" value to all historical orders.

Important: If you also have COGS entries in the Klar COGS sheet (Option 3), those will override the shop system values for matching SKUs. Set an end date on sheet entries if you want to switch to shop-system-sourced COGS from a specific date.

Option 2 — Fallback percentage of Net Selling Price

This is the fallback — applied to any product not covered by a SKU-level entry (Option 3) or a shop system cost (Option 1). Use it to ensure every product has a COGS value, even if it's an approximation.

  1. In the left sidebar, go to Store ConfiguratorCosts

  2. Click ADD COST + and select COGS

  3. Enter a Name of Cost (e.g. COGS DE — 35%)

  4. Select the Data Source (your Shopify store)

  5. Under Configure Costs → Product Cost, enter your COGS as a percentage of the Net Selling Price (excl. VAT)

    Example: Net price €100 × 35% = €35 COGS per unit.

  6. Optionally, define multiple Date Ranges if your cost structure changes over time — this keeps historical margin data accurate

  7. Click Submit

Option 3 — COGS per SKU via Google Sheet

Use this option for your top-selling products, products with seasonal cost changes, or any SKU where precision matters. For Amazon, use the ASIN instead of the SKU.

  1. In the left sidebar, go to Store ConfiguratorData Sources

  2. Click Add Data Source and select COGS

  3. Give it a name (e.g. COGS Sheet) and save it

  4. Click the three dots on the created datasource and select Open Google Sheet

  5. Enter your SKUs and their respective costs in the sheet

How the sheet works:

  • The product name column is for your reference only — matching happens via SKU

  • Leave date columns empty for a default value that applies to all time

  • To define a date range, add a row with the same SKU and fill in the date columns. Place SKUs with a date range below the same SKU without a date range — Klar uses the lowest matching entry in the list

  • New entries sync every 10–15 minutes. To trigger an immediate sync, click the three dots on the datasource and select Sync data. Once uploaded, column G (System Use) will confirm success

Which option should I use?

Use the fallback percentage (Option 2) to make sure no product is missing a COGS value. It's the safety net — set it once and it covers everything not handled by the other two options.

Use the shop system import (Option 1) if you already maintain the product cost field in Shopify (Cost per item) or Shopware (Purchase price). Zero extra setup in Klar — it syncs automatically per SKU.

Use the SKU sheet (Option 3) for products where precision matters — top sellers, products with seasonal cost changes, or any SKU with a margin that differs significantly from the rest of your catalogue.

A practical combined approach: set a fallback percentage (Option 2) for your entire catalogue → let the shop system import (Option 1) cover products where you already maintain Cost per item (Shopify) or Purchase price (Shopware) → add SKU-level sheet entries (Option 3) for your top sellers. Klar will always use the most specific value available.

Note: We don't apply COGS if an article is returned.

Did this answer your question?