SKU Best practices for online shopping sites.


Virtuemart SKU Screen

It's by no means a science, but before you start adding products to a shopping system like Magento, Prestashop or Virtuemart you should decide on the best format for your SKUs.

SKU (pronounced "skew") is short for "stock keeping unit" and simply refers to a unique number for each distinct item available for sale. It is not a number for each product. Products often come in a variety of models or styles. Simply, the SKU is a number given for every diferent thing you can buy. For example, a TV in a different size with have a different SKU from a TV in the same size but with 3D functionality.

As a rule: if there are different typesm they need different SKUs.

In order to run a shopping site effectively you need to decide the best way to format you SKU's.

Here are some best practices and a few tips for merchants who are setting their product’s SKUs:

1) Don't use spaces:

The shopping system is a commuter based systems and to be frank, computers do always like spaces (more accurately the people who program them don't always allow for spaces to be correctly handled). You should not use spaces in a SKU dashes (-) and underscores (_)work best. You should also avoid slashes (/) or accents (áéíöù etc)if possible; they may be compatible in theory with your Prestashop, Magento and Virtuemart shopping system, but a third party add-on might not be so well written. Only use non standard characters if you have done due diligence and are completely sure they will NEVER cause a problem.

2) DO use text:

SKU's are alpha numeric. This means you can use a mixture of text and numbers. Considering you SKU must be unique for every different item in the Shop, why wouldn't you make it something descriptive? If it's descriptive you are unlikely to accidentally use the same SKU for more than one product.

3) Stay consistent:

Decide (to the best of your ability) on a SKU format and stick to it. It's not that you can't change later, but you should try and design the best format from the beginning.

4) Make them human readable:

This will help EVERYBODY and you will get less errors. If the SKU was H129-56OJ that tells you nothing but honda-kx-550_1457 whill help you to know what product it is (more or less) just by looking at the SKU. If somebody finds them self packing a the Karma Sutra and notices the SKU childrens-fiction-happy_smiles, one would hope a flag might be raised.

5) List words in a SKU using the natural heirachy of a product:

If you were asked to describe  a product, you wouldn't say it's a "black, 4s, iPhone" would you? You might say a "black iPhone 4s", but for our purposes "iPhone 4s-Black" would be the best order as it displayed the most import an distinguishing attributes first.


At the end of the day you can always change you SKU number down the line and most shooping cart systems like Prestashop, Magento and Virtuemart have systems to check for duplicates. You wont usually have to go back and change all the existing SKUs but it still pays to make some good decisions from day one.

Here is the SKU system I employ in my online shops:

I don't use the brackets, I put them there to show the place for a unique attribute identifier i.e. something that distinguishes this exact SKU. Another example would be:

I use the supplier number to help avoid errors when restocking an item.

Sure it may seam like a long SKU, but these days length isn't normally much of a problem. Computers are fast and there are generally very few ocasions where length is restricted (but please check you shopping cart software first!). The only inconvenience I have found with a long descriptive SKU is that sometimes it may not fit in the the available display space, for that reason I abbreviate the name of the attributes of a product, so for:


I might use:



So, what SKU format did you decide on? What Shopping cart are you using? How do you find it?