Skip to main content

Customer Preferences

Stuart Chaney avatar
Written by Stuart Chaney
Updated over 2 weeks ago

Introduction

Customer Preference Questions allow you to collect valuable insights directly from your customers through customizable forms. These preferences are automatically synced to Shopify as customer metafields, enabling powerful segmentation and personalization strategies. Let's walk through how to set up and manage preference questions in your Rivo dashboard!

✨ Customer Preferences automatically sync to Shopify metafields for enhanced customer segmentation.


What are Preference Questions?

Preference Questions are customizable form fields that collect customer data and preferences. They support multiple input types including text, dropdowns, checkboxes, dates, and numbers. All responses are automatically stored as customer metafields in Shopify, making them accessible for segmentation, personalization, and marketing campaigns.

Available Input Types

  • Text Input - Single-line text field for names, favorite products, etc.

  • Textarea Input - Multi-line text field for longer responses

  • Select Dropdown - Single-choice dropdown with predefined options

  • Radio Input - Single-choice radio buttons with predefined options

  • Checkbox Input - Multiple-choice checkboxes

  • Date Input - Date picker for birthdays, anniversaries, etc.

  • Number Input - Numeric input with optional min/max validation


Accessing Preference Questions

[Screenshot: Preference Questions dashboard showing empty state with "Create your first preference question" prompt]

To access your preference questions:

  1. From your Rivo Dashboard, navigate to Accounts > Preferences

  2. If you haven't created any questions yet, you'll see an empty state encouraging you to create your first preference question

  3. Click New Preference Question or Create Your First Preference Question to create a new question

  4. Once created, you'll see a list of all existing preference questions with their status and input types

  5. Click Edit on any existing question to modify it

[Screenshot: Preference Questions list showing created questions with titles, input types, and status]


Creating Preference Questions

[Screenshot: New Preference Question modal showing Key, Title, and Input Type fields with placeholder text]

When creating a new preference question, you'll need to configure:

Basic Settings

  1. Key - A unique identifier for this preference (e.g., "shirt_size", "favorite_category"). This becomes the metafield key in Shopify.

  2. Title - The question text displayed to customers (e.g., "What's your preferred shirt size?")

  3. Input Type - Choose from the available input types based on the data you want to collect

πŸ“ Important: The Key field will be used to identify this preference across Shopify segments and cannot be changed after creation.

[Screenshot: Filled out New Preference Question form showing "shirt_size" key, "What's your preferred shirt size?" title, and "Select Dropdown" input type]


Configuring Select Dropdown Questions

[Screenshot: Edit Preference Question screen showing options configuration with Label and Value fields for Small/small, Medium/medium, Large/large]

For Select Dropdown and Radio Input questions, you'll need to configure options:

Adding Options

  1. After creating your question, you'll be taken to the edit page

  2. In the options section, add your first option:

    • Label - The text customers see (e.g., "Small", "Medium", "Large")

    • Value - The stored value (e.g., "small", "medium", "large")

  3. Click Add Option to add additional choices

  4. Use the delete icon (Γ—) to remove unwanted options

  5. Click Save to update your question

Best Practices for Options

  • Use clear, descriptive labels that customers will understand

  • Keep values consistent and URL-friendly (use underscores instead of spaces)

  • Limit dropdown options to 10-15 choices for better user experience

  • Order options logically (alphabetically, by popularity, etc.)


Advanced Configuration

Question Status

Each preference question can be set to Active or Inactive:

  • Active - Question appears in customer-facing forms and widgets

  • Inactive - Question is hidden but data is preserved

Additional Fields

  • Description - Optional help text to guide customers

  • Required - Make the question mandatory for form completion

  • Position - Control the order questions appear in forms


Shopify Integration

All preference question responses are automatically synced to Shopify as customer metafields:

  • Metafield namespace: rivo

  • Metafield key: Your question's key (e.g., shirt_size, favorite_category)

  • Value: The customer's response

Using Preferences for Segmentation

Once synced to Shopify, you can use preferences for:

  • Customer segmentation in Shopify admin

  • Personalized email campaigns

  • Targeted product recommendations

  • Custom marketing automation flows


Common Questions

Can I change the input type after creating a question?

No, you must delete and recreate the preference question to change the input type. This prevents data inconsistencies.

How many preference questions can I create?

There's no hard limit on the number of questions, but consider user experience when designing forms with multiple questions.

Can customers update their preferences?

Yes, customers can update their preferences through account widgets and forms. The latest response will overwrite previous values.

What happens to existing data if I delete a question?

Deleting a preference question will remove it from forms, but existing customer metafield data in Shopify will remain until manually cleaned up.


Troubleshooting

Preferences not syncing to Shopify

  • Verify your Shopify app permissions include customer metafields

  • Check that the preference question is set to Active

  • Allow up to 15 minutes for sync to complete

Question not appearing in forms

  • Ensure the question status is set to Active

  • Check the question position and form configuration

  • Verify the form widget is properly embedded

Did this answer your question?