# Create custom options

All of your options are created and managed inside the **Infinite Options dashboard**.

This guide walks you through:

* Creating your first Option Set
* Adding fields
* Assigning options to products

If you prefer to watch first, view the short walkthrough below:

### Watch how to create custom options

This video shows how to create an Option Set, add fields, and preview how everything will appear on your product pages

{% embed url="<https://www.youtube.com/embed/wX7B9oKqBTQ>" %}

## Step 1: Create a New Option Set

1. In the left sidebar, click **Option Sets**
2. Click **Create Option Set**
3. Enter a clear, helpful name

An **Option Set** is a group of custom fields that appear together on a product page.

If this is your first time opening the app, you may briefly see a syncing message while your Shopify products load. When finished, you’ll see **Catalog Sync Complete**.

![](/files/O9YoG4XXwPoNEQTJnswy)

## Step 2: Create Your First Option Field

Inside your new Option Set:

![](/files/yTKsxxT3bdKimJlhlNta)

#### Label on Product

Enter the text shoppers will see above the field on the product page.\
This acts as the title of your option.

![](/files/9Z7zsFxKSmNdl8ppdhCw)

#### Label on Cart

Enter the text that will appear in the cart, checkout, and order details.

<figure><img src="/files/Ex0K3SJvlyy3BIRKPt7Q" alt=""><figcaption></figcaption></figure>

### **Choose an Input Type**

Select how shoppers will make their selection:

* Text
* Large Text
* Number
* Radio Buttons
* Checkboxes
* Drop-down Menu
* Swatches

### **Input type quick guide**

| Input type        | Behavior                                                                                                                                                |
| ----------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Text / Large Text | Customer types freely. Use Large Text for multi-line responses.                                                                                         |
| Number            | Customer enters a number. Supports Min/Max limits.                                                                                                      |
| Radio Buttons     | Single selection. Always pre-selects the first value. If you need customers to make an active choice, use a Drop-down with a placeholder or checkboxes. |
| Checkboxes        | Allows multiple selections. Supports Min/Max Selections to control how many can be chosen.                                                              |
| Drop-down         | Single selection. Add a placeholder to force an active choice before adding to the cart.                                                                |
| Swatches          | Requires a color or image per value. Behaves like Radio Buttons. The first value is pre-selected and supports Min/Max Selections for multi-select.      |

Each input type has its own settings, which you can adjust as needed.

![](/files/pzc0M7Vfv04TjKppg7Ne)

To add more choices under the same field, click **Add Another Option Value**.<br>

<figure><img src="/files/J1aZrLgOLGYd9IdI2j3A" alt=""><figcaption></figcaption></figure>

To add another field to this Option Set, click **Add Another Custom Field**.

<figure><img src="/files/Q2QfsNlrcAoNU0rvtJWq" alt=""><figcaption></figcaption></figure>

***

## Step 3: Adjust Settings (Optional)

Each field includes additional settings you can customize.

Common settings include:

![](/files/EDLPcM2kTGqym9VXRCYH)

Each field includes additional settings that control its behavior.

Common settings include:

* **Required** — Makes the field mandatory before adding to cart
* **Default Value** —  Pre-selects a value when the page loads. This setting is only available for Drop-down and Checkbox fields. It does not appear for Radio Buttons, Text, or other input types.
* **Character Limit** — Limits how much text can be entered
* **Placeholder Text** — Light text shown inside a field before typing
* **Min/Max** — Sets number limits for number inputs
* **Min/Max Selections** — Sets limits for checkbox selections

You can leave any setting blank if you do not need it.

More advanced features, such as [**Conditional Logic**](/infinite-options/conditional-logic/conditional-logic.md#how-conditional-logic-works), can be explored once you are comfortable with the basics.

## Step 4: Assign Your Option Set to Products

At the top of your Option Set screen, you’ll see the assignment section.

This determines where your options will appear.

You can assign options by:

* Product
* Variant
* Collection
* Vendor
* Tag

Most beginners start by assigning to a **Product**.

Select the products where you want your options to display.

![](/files/ku9aAPhfMNEew9JF6UGl)

## Step 5: Save Your Work

Click **Save** in the upper right corner.

Your options may take a few minutes to appear on your storefront.

***

## Not Seeing Your Options?

If your options do not appear:

* Make sure the Option Set is assigned correctly
* Confirm the Option Set is saved
* Check that the Infinite Options block is installed on your theme

If needed, review the installation guide here:\
[**How to Install Infinite Options**](/infinite-options/welcome/how-to-install.md)

## Adding an Additional Cost

If you want an option to increase the product price, use the built-in price add-on feature.

Learn how to add a price here:\
[**Add an extra cost to an option**](/infinite-options/welcome/native-bundling.md)

## Explore More Features

Once you're comfortable creating basic options, you can explore:

* [**Date Picker**](/infinite-options/inputs-and-field-settings/add-a-date-picker-to-your-store.md)
* [**Swatches**](/infinite-options/conditional-logic/swatches.md)
* [**Conditional Logic**](/infinite-options/conditional-logic.md)
* [**Conditional Logic with Swatches**](/infinite-options/conditional-logic/swatches.md)


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://shoppad.gitbook.io/infinite-options/welcome/create-custom-options.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
