<p>I'm not sure if the base cost is global across all products, or varies between products - but either way you could use an <a href="https://docs.craftcms.com/commerce/v2/adjusters.html#register-a-new-adjuster" rel="nofollow noreferrer">Adjuster</a> module or plugin to modify the price of line items in the cart.</p>

<p>That way you don't need to worry about creating any variants in the backend at all, and can store the price multipliers in Global fields if you want to.</p>

<p>To my knowledge there aren't any plugins that do this, but don't be put off my the thought of creating a plugin/module, I'm not much of a developer but have managed it myself : )</p>

<p><a href="https://gist.github.com/AugustMiller/7acd512fc7085c3abcce3f9b44a22576" rel="nofollow noreferrer">This proof-of-concept Adjuster gist</a> should set you in the right direction, and here's <a href="https://gist.github.com/hendrikeng/4e02199fda7c4171fb31fb53b2ff0520" rel="nofollow noreferrer">another one</a> for good measure.</p>

CC BY-SA 4.0
2019-09-08T09:22:02.360Z
2019-09-08T09:29:58.833Z
2019-09-08T09:29:58.833Z
James Greig
<p>We have a client that is selling products with fixed rate variants. In other words so that the base cost is the only price defined whilst others are based on a globally defined multiplier, eg. 1.5x or 3x the base/defined price. </p>

<p>Is there a way (either baked in or via plugin) to have extra variants created or available based on a pre-defined criteria/multiplier? If necessary happy for this to be just in the add to cart/checkout process rather than explicitly defined in the product details/record.</p>

<p>Looking through docs only way could see something like this being possible would be via a plugin automatically adding/updating variants on a product creation/save eg the <code>EVENT_BEFORE_SAVE_ELEMENT</code> event.</p>

CC BY-SA 4.0
2019-09-18T20:43:50.320Z
You can use Feed Me to generate variants. Highly recommend not using one SKU for each unique attribute combination. If it's a different variation of the product it should have its own variant/SKU.
Stephen Callender
<plugin-craftcommerce><plugin-craftcommerce2><variants>
Craft Commerce: fixed product variants/multiplier
# Craft Commerce: fixed product variants/multiplier

(Asked by: username_0 on 2019-09-08)

We have a client that is selling products with fixed rate variants. In other words so that the base cost is the only price defined whilst others are based on a globally defined multiplier, eg. 1.5x or 3x the base/defined price.

Is there a way (either baked in or via plugin) to have extra variants created or available based on a pre-defined criteria/multiplier? If necessary happy for this to be just in the add to cart/checkout process rather than explicitly defined in the product details/record.

Looking through docs only way could see something like this being possible would be via a plugin automatically adding/updating variants on a product creation/save eg the `EVENT_BEFORE_SAVE_ELEMENT` event.

**Tags:** plugin-craftcommerce, plugin-craftcommerce2, variants
> **Comments:**
> **username_1**: You can use Feed Me to generate variants. Highly recommend not using one SKU for each unique attribute combination. If it's a different variation of the product it should have its own variant/SKU.  

---

## 1 answers

### Answer by username_2 on 2019-09-08. Score: 1

I'm not sure if the base cost is global across all products, or varies between products - but either way you could use an [Adjuster](https://docs.craftcms.com/commerce/v2/adjusters.html#register-a-new-adjuster) module or plugin to modify the price of line items in the cart.

That way you don't need to worry about creating any variants in the backend at all, and can store the price multipliers in Global fields if you want to.

To my knowledge there aren't any plugins that do this, but don't be put off my the thought of creating a plugin/module, I'm not much of a developer but have managed it myself : )

[This proof-of-concept Adjuster gist](https://gist.github.com/AugustMiller/7acd512fc7085c3abcce3f9b44a22576) should set you in the right direction, and here's [another one](https://gist.github.com/hendrikeng/4e02199fda7c4171fb31fb53b2ff0520) for good measure.


---

