Product Variants

System Information
  • Strapi Version:
  • Operating System:
  • Database:
  • Node Version:
  • NPM Version:
  • Yarn Version:

Just installed strapi on ubuntu/MySQL … so far looks great… i wonder if there is a guide or good advice for implement Product Variations (color,size for example) …seems that some people use relationship others component…as new on this im little bit lost

Any help would be great


I dont know if what i asked is so trivial that nobody botters to respond.

I mean im not asking have this done for me but some pointers would be nice…as i said im pretty new in strapi and still trying to figure out if would be a fit for my project.

Hey @Edgar_Osorio o/

Relations are an option but in your case components might work as well (components are basically just a group of fields).

One key difference however (at least in Strapi v3) you cannot filter on components, so keep that in mind. With our upcoming Strapi v4, you will be able to filter on them (just not dynamic zones).

For relations my suggestion there would be to create content-types (collection types) for things like Color, Size, ect and setup oneWay or manyWay relations depending on your need. These basically show the relationship on one side (say a products collection type) but it won’t show the products on color, size, ect.

You could also use a manyToMany but I would advise caution using such a relation as it can have a performance problem as your collections start to grow. Ideally it comes down to what works for you, and the best way to figure out what you need is to play around building collections.


I will play around with Collections

Thanks again