Search

Search

Loading…

Out of Stock

Select Size

Add to cart

Buy now

Quick add

$150

Add to cart

Buy now

Quick add

$150

Add to cart

Buy now

Quick add

$150

Purchase Button

Handles Add to Cart and Buy Now functionality with state management for product availability and variant selection. Updates dynamically based on product status and variant selection.

Controls

ProductID

Connect to CMS variable (required)

ProductID

Connect to CMS variable (required)

ProductID

Connect to CMS variable (required)

VariantID

Populate with specific variant ID (optional)

VariantID

Populate with specific variant ID (optional)

VariantID

Populate with specific variant ID (optional)

Instance

Connect button states: Available, Out of Stock, Loading, Select Variant

Instance

Connect button states: Available, Out of Stock, Loading, Select Variant

Instance

Connect button states: Available, Out of Stock, Loading, Select Variant

Type

Select Add to Cart or Buy Now functionality

Type

Select Add to Cart or Buy Now functionality

Type

Select Add to Cart or Buy Now functionality

Trigger Cart

Enable or disable the tap event that is connected to your cart overlay trigger component. If in your cart overlay, disable to prevent the cart from closing.

Trigger Cart

Enable or disable the tap event that is connected to your cart overlay trigger component. If in your cart overlay, disable to prevent the cart from closing.

Trigger Cart

Enable or disable the tap event that is connected to your cart overlay trigger component. If in your cart overlay, disable to prevent the cart from closing.

Tips

Debugging

If your button isn't working, make sure your shopifyProductID is set. If your product has variants, the variant selector is required on the page unless you have manually set the variantID.

Debugging

If your button isn't working, make sure your shopifyProductID is set. If your product has variants, the variant selector is required on the page unless you have manually set the variantID.

Debugging

If your button isn't working, make sure your shopifyProductID is set. If your product has variants, the variant selector is required on the page unless you have manually set the variantID.

$200

Price

Handles standard and sale price displays. Updates dynamically with variant selections.

Controls

Product ID

Connect to CMS variable (required)

Product ID

Connect to CMS variable (required)

Product ID

Connect to CMS variable (required)

Price

Connect to CMS variable (for preview)

Price

Connect to CMS variable (for preview)

Price

Connect to CMS variable (for preview)

Varying Prices

Toggle between displaying Minimum Price (i.e. "from $50") or Range (i.e. "$50-$100") when the product has multiple prices and a full variant selection hasn't been made yet.

Varying Prices

Toggle between displaying Minimum Price (i.e. "from $50") or Range (i.e. "$50-$100") when the product has multiple prices and a full variant selection hasn't been made yet.

Varying Prices

Toggle between displaying Minimum Price (i.e. "from $50") or Range (i.e. "$50-$100") when the product has multiple prices and a full variant selection hasn't been made yet.

Prefix

If showing a minimum price, set the text to prefix (i.e. "from")

Prefix

If showing a minimum price, set the text to prefix (i.e. "from")

Prefix

If showing a minimum price, set the text to prefix (i.e. "from")

Format

Set your currency configurations

Format

Set your currency configurations

Format

Set your currency configurations

Fonts

Set fonts and colors for Regular and Sale price

Fonts

Set fonts and colors for Regular and Sale price

Fonts

Set fonts and colors for Regular and Sale price

$200

$120

Price Compare

Displays Shopify Compare-at Price values. Auto-hides when no compare-at price exists.

Controls

Product ID

Connect to CMS variable (required)

Product ID

Connect to CMS variable (required)

Product ID

Connect to CMS variable (required)

Compare Price

Connect to CMS variable (for preview)

Compare Price

Connect to CMS variable (for preview)

Compare Price

Connect to CMS variable (for preview)

Prefix

Text to display before the compare-at-price (i.e. "was")

Prefix

Text to display before the compare-at-price (i.e. "was")

Prefix

Text to display before the compare-at-price (i.e. "was")

Format

Set your currency configurations

Format

Set your currency configurations

Format

Set your currency configurations

Fonts

Set fonts and colors for Regular and Sale price

Fonts

Set fonts and colors for Regular and Sale price

Fonts

Set fonts and colors for Regular and Sale price

Strike

Configure strikethrough styling (optional)

Strike

Configure strikethrough styling (optional)

Strike

Configure strikethrough styling (optional)

20% off

Save $10

Price Discount

Calculates and displays percentage-based or amount-based discounts. Auto-hides when no discount applies.

Controls

Product ID

Connect to CMS variable (required).

Product ID

Connect to CMS variable (required).

Product ID

Connect to CMS variable (required).

Price

Connect to CMS variable (for preview).

Price

Connect to CMS variable (for preview).

Price

Connect to CMS variable (for preview).

Compare Price

Connect to CMS variable (for preview).

Compare Price

Connect to CMS variable (for preview).

Compare Price

Connect to CMS variable (for preview).

Type

Toggle between showing a Percent (%) or Amount ($) discount.

Type

Toggle between showing a Percent (%) or Amount ($) discount.

Type

Toggle between showing a Percent (%) or Amount ($) discount.

Style

Configure background and sizing

Style

Configure background and sizing

Style

Configure background and sizing

Text Format

Set your text format using {{discount}} to display the value.

Text Format

Set your text format using {{discount}} to display the value.

Text Format

Set your text format using {{discount}} to display the value.

Varying Prefix

Text to prefix when a product has multiple discounts and a full variant has not been selected yet.

Varying Prefix

Text to prefix when a product has multiple discounts and a full variant has not been selected yet.

Varying Prefix

Text to prefix when a product has multiple discounts and a full variant has not been selected yet.

Format

Set your currency configurations

Format

Set your currency configurations

Format

Set your currency configurations

Variant Selector

Renders and manages available product variants with selection states. Auto-hides when product has no variants.

Controls

Product ID

Connect to CMS variable (required).

Product ID

Connect to CMS variable (required).

Product ID

Connect to CMS variable (required).

Variants

Connect to CMS variable (required).

Variants

Connect to CMS variable (required).

Variants

Connect to CMS variable (required).

Image IDs

Connect to "Image Variant IDs" CMS variable (optional, if you want to trigger image changes or display Variant Images)

Image IDs

Connect to "Image Variant IDs" CMS variable (optional, if you want to trigger image changes or display Variant Images)

Image IDs

Connect to "Image Variant IDs" CMS variable (optional, if you want to trigger image changes or display Variant Images)

Style

Choose between Buttons or a Dropdown

Style

Choose between Buttons or a Dropdown

Style

Choose between Buttons or a Dropdown

Buttons

Style your buttons layout and states

Buttons

Style your buttons layout and states

Buttons

Style your buttons layout and states

Dropdown

Style your dropdown states

Dropdown

Style your dropdown states

Dropdown

Style your dropdown states

Behavior

Choose to auto-select first available variants or load without any selection Choose to show or hide variant groups that only have one option

Behavior

Choose to auto-select first available variants or load without any selection Choose to show or hide variant groups that only have one option

Behavior

Choose to auto-select first available variants or load without any selection Choose to show or hide variant groups that only have one option

Images / Type

Choose between None, Gallery, or Scroll Sections to control image triggers

Images / Type

Choose between None, Gallery, or Scroll Sections to control image triggers

Images / Type

Choose between None, Gallery, or Scroll Sections to control image triggers

Images / Two-Way

Enable if you want to enable clicking on an image to change the active variant in the selector

Images / Two-Way

Enable if you want to enable clicking on an image to change the active variant in the selector

Images / Two-Way

Enable if you want to enable clicking on an image to change the active variant in the selector

Behavior / Filter

Toggle between showing all variant groups in the selector (default), or filter by Equals or Doesn't Equal. If filtering, set the list of Variant titles to filter by (i.e. "Color", "Size", etc.)

Behavior / Filter

Toggle between showing all variant groups in the selector (default), or filter by Equals or Doesn't Equal. If filtering, set the list of Variant titles to filter by (i.e. "Color", "Size", etc.)

Behavior / Filter

Toggle between showing all variant groups in the selector (default), or filter by Equals or Doesn't Equal. If filtering, set the list of Variant titles to filter by (i.e. "Color", "Size", etc.)

Behavior / Action

Choose what happens when you click on the variant in this component. It can update the selected variant (default, recommended), or on a product card, can Add to Cart or Buy Now. If setting it to Add to Cart or Buy Now, be sure that the variant selector only displays a single variant group (i.e. "Size").

Behavior / Action

Choose what happens when you click on the variant in this component. It can update the selected variant (default, recommended), or on a product card, can Add to Cart or Buy Now. If setting it to Add to Cart or Buy Now, be sure that the variant selector only displays a single variant group (i.e. "Size").

Behavior / Action

Choose what happens when you click on the variant in this component. It can update the selected variant (default, recommended), or on a product card, can Add to Cart or Buy Now. If setting it to Add to Cart or Buy Now, be sure that the variant selector only displays a single variant group (i.e. "Size").

Behavior / Select 1st

Enable or disable auto-selecting the 1st variant that's in stock.

Behavior / Select 1st

Enable or disable auto-selecting the 1st variant that's in stock.

Behavior / Select 1st

Enable or disable auto-selecting the 1st variant that's in stock.

Behavior / PDP

Set to Yes if the component is on a Product Display Page (PDP). Otherwise, set to No – even if it exists in a product card that also appears on the PDP under related items.

Behavior / PDP

Set to Yes if the component is on a Product Display Page (PDP). Otherwise, set to No – even if it exists in a product card that also appears on the PDP under related items.

Behavior / PDP

Set to Yes if the component is on a Product Display Page (PDP). Otherwise, set to No – even if it exists in a product card that also appears on the PDP under related items.

Behavior / Singles

Show or hide the variant selector if the variant group has only one item.

Behavior / Singles

Show or hide the variant selector if the variant group has only one item.

Behavior / Singles

Show or hide the variant selector if the variant group has only one item.

Behavior / Out of Stock

Allow or disable selecting a variant option that's Out of Stock.

Behavior / Out of Stock

Allow or disable selecting a variant option that's Out of Stock.

Behavior / Out of Stock

Allow or disable selecting a variant option that's Out of Stock.

Title

Show or hide variant group titles and customize the styles

Title

Show or hide variant group titles and customize the styles

Title

Show or hide variant group titles and customize the styles

Selected Value

Show or hide a text display of the selected value beside the variant group title, and then style it.

Selected Value

Show or hide a text display of the selected value beside the variant group title, and then style it.

Selected Value

Show or hide a text display of the selected value beside the variant group title, and then style it.

Color Swatches

Turn on or off Color Swatch UI, and customize styles. In the plugin under Store Settings, configure the values below and one-click save to update all components: Set a list of Titles that will show the Color Swatch UI (i.e. "Color") Set a list of Values and Hex Codes (i.e. "Red" "#FF0000")

Color Swatches

Turn on or off Color Swatch UI, and customize styles. In the plugin under Store Settings, configure the values below and one-click save to update all components: Set a list of Titles that will show the Color Swatch UI (i.e. "Color") Set a list of Values and Hex Codes (i.e. "Red" "#FF0000")

Color Swatches

Turn on or off Color Swatch UI, and customize styles. In the plugin under Store Settings, configure the values below and one-click save to update all components: Set a list of Titles that will show the Color Swatch UI (i.e. "Color") Set a list of Values and Hex Codes (i.e. "Red" "#FF0000")

Image Swatches

Turn on or off Image Swatch UI, and customize styles or choose to inherit from the Color Swatch UI. In the plugin under Store Settings, configure the values below and one-click save to update all components: Set a list of Titles that will show the Image Swatch UI (i.e. "Pattern") Upload your images and matching Variant values (i.e. "Leather")

Image Swatches

Turn on or off Image Swatch UI, and customize styles or choose to inherit from the Color Swatch UI. In the plugin under Store Settings, configure the values below and one-click save to update all components: Set a list of Titles that will show the Image Swatch UI (i.e. "Pattern") Upload your images and matching Variant values (i.e. "Leather")

Image Swatches

Turn on or off Image Swatch UI, and customize styles or choose to inherit from the Color Swatch UI. In the plugin under Store Settings, configure the values below and one-click save to update all components: Set a list of Titles that will show the Image Swatch UI (i.e. "Pattern") Upload your images and matching Variant values (i.e. "Leather")

Variant Images

Turn on or off Variant Images to display your CMS Images that are mapped to each variant and customize styles or choose to inherit from the Color Swatch UI. In the plugin under Store Settings, configure your list of Titles that will show the Variant Image UI (i.e. "Style") and one-click save to update all components. Once turned on, connect the "Image 1" "Image 2" "Image 3" etc. variables to your CMS. Make sure Image IDs field is also connected to the CMS.

Variant Images

Turn on or off Variant Images to display your CMS Images that are mapped to each variant and customize styles or choose to inherit from the Color Swatch UI. In the plugin under Store Settings, configure your list of Titles that will show the Variant Image UI (i.e. "Style") and one-click save to update all components. Once turned on, connect the "Image 1" "Image 2" "Image 3" etc. variables to your CMS. Make sure Image IDs field is also connected to the CMS.

Variant Images

Turn on or off Variant Images to display your CMS Images that are mapped to each variant and customize styles or choose to inherit from the Color Swatch UI. In the plugin under Store Settings, configure your list of Titles that will show the Variant Image UI (i.e. "Style") and one-click save to update all components. Once turned on, connect the "Image 1" "Image 2" "Image 3" etc. variables to your CMS. Make sure Image IDs field is also connected to the CMS.

Select Size

Variant Status

Displays variant selection requirements and validation states. Can be standalone or nested within Purchase Button.

Controls

Product ID

Connect to CMS variable (required)

Product ID

Connect to CMS variable (required)

Product ID

Connect to CMS variable (required)

Text

Configure message and appearance

Text

Configure message and appearance

Text

Configure message and appearance

1

1

Quantity Selector

Input component for product quantity selection with built-in inventory limit validation. Provides increment/decrement controls with dynamic maximum values.

Controls

Product ID

Connect to CMS variable (required)

Product ID

Connect to CMS variable (required)

Product ID

Connect to CMS variable (required)

Instance

Connect button states: Plus/Minus, Active/Disabled

Instance

Connect button states: Plus/Minus, Active/Disabled

Instance

Connect button states: Plus/Minus, Active/Disabled

Style

Configure quantity text appearance

Style

Configure quantity text appearance

Style

Configure quantity text appearance

In stock

4 left in stock

Stock Status

Displays inventory levels and availability messages with configurable thresholds.

Controls

Product ID

Connect to CMS variable (required)

Product ID

Connect to CMS variable (required)

Product ID

Connect to CMS variable (required)

Threshold

Set inventory level for state change

Threshold

Set inventory level for state change

Threshold

Set inventory level for state change

Instance

Connect states for above and below threshold

Instance

Connect states for above and below threshold

Instance

Connect states for above and below threshold

4 left in stock

Inventory Counter

Display the available inventory count of a selected product or variant.

Controls

Style

Configure quantity text appearance

Style

Configure quantity text appearance

Style

Configure quantity text appearance

One-time Purchase

$39.99

Subscribe & Save

$29.99

One-time Purchase

$39.99

Subscribe & Save

$29.99

One-time Purchase

$39.99

Subscribe & Save

$29.99

Selling Plans

Manages one-time purchase and subscription options. Integrates with Shopify Sell Plan apps such as Seal Subscriptions.

Controls

Product ID

Connect to CMS variable (required)

Product ID

Connect to CMS variable (required)

Product ID

Connect to CMS variable (required)

Instance

Connect subscription interface design

Instance

Connect subscription interface design

Instance

Connect subscription interface design

Name for customization

Order Attribute Input

Allow users to input a text string to add to their order as an attribute. Appears in their cart on Framer and on Shopify.

Controls

Styles

Customize form text and styles

Styles

Customize form text and styles

Styles

Customize form text and styles

Required

Set the field as optional or required

Required

Set the field as optional or required

Required

Set the field as optional or required

Validate email

Set email validation if required

Validate email

Set email validation if required

Validate email

Set email validation if required

Attribute title

Set the attribute title sent to Shopify

Attribute title

Set the attribute title sent to Shopify

Attribute title

Set the attribute title sent to Shopify

Active Variant Image

A component that displays the currently selected variant from the Variant Selector component.

Controls

Product ID

Connect to CMS variable (required).

Product ID

Connect to CMS variable (required).

Product ID

Connect to CMS variable (required).

Type

Choose your image to Fit or Fill the component

Type

Choose your image to Fit or Fill the component

Type

Choose your image to Fit or Fill the component

Image(s)

Choose between auto-setting the amount of images (each time you add one, another variable will appear) or manually set the number. Then connect each Image variable to the CMS.

Image(s)

Choose between auto-setting the amount of images (each time you add one, another variable will appear) or manually set the number. Then connect each Image variable to the CMS.

Image(s)

Choose between auto-setting the amount of images (each time you add one, another variable will appear) or manually set the number. Then connect each Image variable to the CMS.

Slideshow

A component that mimics Framer's native slideshow, but with CMS images and that jumps to the active variant if the Variant Selector prop on Images / Type is set to "Gallery".

Configure dots on the component itself, and/or use the Arrows and connect your local components.

For demos and remix links, visit fc-image-variants.framer.website

Controls

Style

Configure image fill or fit, number of items, overflow, padding, gap, and radius

Style

Configure image fill or fit, number of items, overflow, padding, gap, and radius

Style

Configure image fill or fit, number of items, overflow, padding, gap, and radius

Dots

Configure the styling of the dots as pagination

Dots

Configure the styling of the dots as pagination

Dots

Configure the styling of the dots as pagination

Arrows

Connect your local arrow design components for prev/next and disabled/active (separate component from Slideshow)

Arrows

Connect your local arrow design components for prev/next and disabled/active (separate component from Slideshow)

Arrows

Connect your local arrow design components for prev/next and disabled/active (separate component from Slideshow)

Shop Pay

A one-click Buy Now button that brings your customer directly to the Shopify checkout with their Shop Pay info pre-populated and ready to go.

Note that checkout language is not supported with the Shop Pay button.

Controls

Product ID

Connect to CMS variable (required)

Product ID

Connect to CMS variable (required)

Product ID

Connect to CMS variable (required)

Text

Set "Buy with" or custom text if needed

Text

Set "Buy with" or custom text if needed

Text

Set "Buy with" or custom text if needed

Color

Choose from Shopify-approved color combinations

Color

Choose from Shopify-approved color combinations

Color

Choose from Shopify-approved color combinations

Quick add

Quick Add Button

Let customers add products directly to their cart from any page with a single click. This button instantly adds the first available variant to the cart –– no selection necessary.

Controls

Product ID

Connect to CMS variable (required)

Product ID

Connect to CMS variable (required)

Product ID

Connect to CMS variable (required)

Instance

Connect button states: Available, Out of Stock

Instance

Connect button states: Available, Out of Stock

Instance

Connect button states: Available, Out of Stock

Type

Select Add to Cart or Buy Now functionality

Type

Select Add to Cart or Buy Now functionality

Type

Select Add to Cart or Buy Now functionality

Trigger Cart

Enable or disable the tap event that is connected to your cart overlay trigger component. If in your cart overlay, disable to prevent the cart from closing.

Trigger Cart

Enable or disable the tap event that is connected to your cart overlay trigger component. If in your cart overlay, disable to prevent the cart from closing.

Trigger Cart

Enable or disable the tap event that is connected to your cart overlay trigger component. If in your cart overlay, disable to prevent the cart from closing.

Static Variant Image

Display a fixed image from the product gallery, respective to the image number.

Can be configured to be a thumbnail to connect to the Variant Selector and/or the Selected Variant Image component.

Can also be configured to only be visible when a specific variant is included in the Alt Text of the image, set on Shopify.

Controls

Product ID

Connect to CMS variable (required).

Product ID

Connect to CMS variable (required).

Product ID

Connect to CMS variable (required).

Image

Connect to CMS Image variable incrementally (required).

Image

Connect to CMS Image variable incrementally (required).

Image

Connect to CMS Image variable incrementally (required).

Image Number

Set to match the image number connected above.

Image Number

Set to match the image number connected above.

Image Number

Set to match the image number connected above.

Filter Variants

If set to Yes, this component will hide if the Image Alt Text (set on Shopify) does not contain the value of the variant.

Filter Variants

If set to Yes, this component will hide if the Image Alt Text (set on Shopify) does not contain the value of the variant.

Filter Variants

If set to Yes, this component will hide if the Image Alt Text (set on Shopify) does not contain the value of the variant.

Filter Match

Toggle between "Any" or "All" filter matching. For example, your product has "Blue" and "Red" Color variants, along with "Small" and "Large" Size variants – and the user selects "Red" and "Small". If "Any" filter match is selected, the image would require the alt text to contain the word "Red" OR "Small" to be visible, so the alt text of "T Shirt (Red)" would have the image appear. If "All" filter match is selected, the image would require the alt text to contain the word "Red" AND "Small" to be visible. So "T Shirt (Red)" would not be visible, but "T Shirt (Red, Small)" would.

Filter Match

Toggle between "Any" or "All" filter matching. For example, your product has "Blue" and "Red" Color variants, along with "Small" and "Large" Size variants – and the user selects "Red" and "Small". If "Any" filter match is selected, the image would require the alt text to contain the word "Red" OR "Small" to be visible, so the alt text of "T Shirt (Red)" would have the image appear. If "All" filter match is selected, the image would require the alt text to contain the word "Red" AND "Small" to be visible. So "T Shirt (Red)" would not be visible, but "T Shirt (Red, Small)" would.

Filter Match

Toggle between "Any" or "All" filter matching. For example, your product has "Blue" and "Red" Color variants, along with "Small" and "Large" Size variants – and the user selects "Red" and "Small". If "Any" filter match is selected, the image would require the alt text to contain the word "Red" OR "Small" to be visible, so the alt text of "T Shirt (Red)" would have the image appear. If "All" filter match is selected, the image would require the alt text to contain the word "Red" AND "Small" to be visible. So "T Shirt (Red)" would not be visible, but "T Shirt (Red, Small)" would.

Thumbnail

Enable or disable thumbnail functionality.

Thumbnail

Enable or disable thumbnail functionality.

Thumbnail

Enable or disable thumbnail functionality.

Thumbnail / On click

Choose between triggering its Tap Event you can connect to anything (along with updating Active Image Variant component), triggering a Scroll Section (to #image-X), or doing nothing (None).

Thumbnail / On click

Choose between triggering its Tap Event you can connect to anything (along with updating Active Image Variant component), triggering a Scroll Section (to #image-X), or doing nothing (None).

Thumbnail / On click

Choose between triggering its Tap Event you can connect to anything (along with updating Active Image Variant component), triggering a Scroll Section (to #image-X), or doing nothing (None).

Thumbnail / Styles

Style your Hover and Active states along with the Transition.

Thumbnail / Styles

Style your Hover and Active states along with the Transition.

Thumbnail / Styles

Style your Hover and Active states along with the Transition.

Remix OFFSIDE template for free

Just log into Framer to explore how Framer Commerce works, no extra signup.

Proudly made by Butter Supply Inc. © 2025

Stay up to date

Be the first to hear about new templates, features, and offers.

Framer Commerce

Remix OFFSIDE template for free

Just log into Framer to explore how Framer Commerce works, no extra signup.

Proudly made by Butter Supply Inc. © 2025

Stay up to date

Be the first to hear about new templates, features, and offers.

Framer Commerce

Remix OFFSIDE template for free

Just log into Framer to explore how Framer Commerce works, no extra signup.

Proudly made by Butter Supply Inc. © 2025

Stay up to date

Be the first to hear about new templates, features, and offers.

Framer Commerce