User Guide
This guide covers the following features:
-
Personalized, dynamic AI-powered discounts that optimize for various objectives
-
Static variable discounts (aka discounts with different values across different items)
-
UI components that trigger when customers apply a discount to show sales prices
Before creating any discounts, please ensure Promi is properly set up on your site. Follow the guide here or reach out to have us set up Promi for you.
AI-powered Discounts
Overview of available AI models
When you create an AI-powered discount in Promi, you have the option of selecting one of two different models:
-
Optimize for selling inventory: you input the items, quantity you want to sell, and the date by which you want to sell them and Promi will optimize around these parameters.
-
Optimize for conversions: you input an average discount value, Promi will adjust discounts across users and products to optimize the number of conversions it can generate under this constraint.
How much data do I need to power the AI models?
Our models will be better if you have more data, but we have specifically designed them to work with smaller stores as well. Since we pool together store-wide data vs. training models for each item, we are able to work with much less data overall and extrapolate to set discounts for items with less data. As a rule of thumb, you will see more of the benefits if your sales are >$1M annually store-wide.
If a very small store uses Promi, we won't actually leverage a machine learning model to generate discounts since there is not enough data. We instead use fall-back logic (regressions and cluster averages) to generate recommended discount values. This should still provide benefits, but they won't be as great as they would be with a machine learning model.
Optimizing for conversions: How it works
When you create a conversion optimization discount, Promi performs the following:
-
Calculate the starting discount values: Depending on if you selected to optimize across users and products, Promi will pull conversion rate, order history, prices, profit margin, and various characteristics for one or both of these groups. We use calculated price elasticities to generate expected performance of the discount at various levels. We then pick the optimal value that also achieves the overall average discount input when creating the discount
-
Updating the discount value: Promi will monitor discount performance and make adjustments to values to ensure the average discount value matches the input you provide. We first calculate confidence intervals on the average discount value, and if we have sufficient data, will then change the discount if we are below or above the target discount average.
Optimizing for conversions: Creating the discount
Navigate to the Promi app and select the 'Create AI & Variable Discounts' option in the top right corner
Make sure you select "AI Dynamic Discount" at the top. You'll then have the option of selecting 'optimize for conversion' or 'optimize for selling inventory'. You'll then need to fill out the following fields:
-
Average discount value: Promi optimizes such that the average redeemed discount value across all orders will equal this value. However, discounts for any given user or product may be different.
-
Optimizations:
-
Personalization: If this is checked, Promi will vary the discount value across users. See more information in the 'Personalization' section of this guide
-
-
Guardrails: This defines the minimum and maximum discount values that Promi will offer on any product or user
-
Marketing: We recommend communicating the discount as "up to X% off" in emails and ads. Use this field to ensure the discount has adequate products at this X% off value in order to reasonably support this marketing. Promi will take the top % of products as defined by this field and set them all equal to the same highest discount value.
Optimizing for selling inventory: How it works
When you create and run a dynamic discount, Promi will perform the following calculations:
-
Calculate the starting discount value: Promi pulls your store's recent transaction data to understand the baseline sales rate of each of your items. We adjust this expected daily average sales rate based on factors like day of the week, seasonality, etc. We then calculate the required sales rate to sell through your desired quantity of items by the specified date. Then we compare the two, and use historic discount data with our machine learning models to estimate the appropriate discount value that will accelerate the sales rate by the required amount. If your items do not have enough historic sales data, we approximate the sales rate using other items in your store, leveraging characteristics like price, product views, etc. in our model to set the appropriate discount.
-
Updating the discount value: Once the initial discount value is set, Promi constantly monitors your items to see if we need to accelerate or decelerate the sales rate. We first calculate confidence intervals for the conversion rates of your items to determine if our price changes are making an impact. If we are confident in the measurement of our impact, we then confirm whether the magnitude of the impact is appropriate for reaching our unit sales goal. If we need to make adjustments, we use our machine learning model to make the appropriate discount changes, using more recent data to make more informed decisions.
-
Ending the discount: if Promi finds that the sales rate does not need to be accelerated to sell through your desired quantity of items, it will temporarily end the discount. Promi will continue monitoring your items to determine if it needs to restart the discount. Once you sell through your desired quantity of items, Promi will permanently end the discount.
When you download Promi and create an AI discount, we pull your store's transaction history to train our model. This allows us to immediately start creating discounts. However, Promi also learns over time, and as we collect more data from your store on how different discount levels perform, our model's performance will get better and better.
Please note that Promi is more efficient and effective over longer sales durations. It will be more difficult for Promi to sell through your desired inventory quantity over the course of a couple days vs. a couple weeks.
Optimizing for selling inventory: Creating the discount
Navigate to the Promi app and select the 'Create AI & Variable Discounts' option in the top right corner
Make sure you select "AI Dynamic Discount" at the top. Most of this section should look similar to Shopify's native discount creation tool. The one exception is the field to add a CSV:
The column titles in your CSV should be the following:
-
Product Variant ID: The ID of the variant that you want to apply the discount on. This is a required field.
-
Unit Sales Target: The number of units you would like to sell. You can also input "All" if you would like to sell all units. Promi will default to all units if no number is specified
-
Maximum Discount Percentage: Set this if you would like to cap the maximum discount that Promi offers. If this is not specified, Promi will not have a maximum discount. You can also specify a global maximum discount in the separate text field below the CSV upload field. Any max discount provided in the CSV will take precedent over the global maximum discount set.
-
End Date: The date by which Promi will try to sell your specified quantity of items. This is a required field.
-
Starting discount: You can optionally specify the starting discount for an item. This might be useful if you are trying to liquidate items in a short period of time or if certain items don't have much transaction history. Promi will generate a starting discount if this is not set.
See below a sample CSV to upload. The simplest way to get your product variant IDs is via Shopify reports. From your merchant dashboard, navigate to 'Analytics' -> 'Reports' -> search 'Inventory' -> select 'Month-end inventory snapshot' (other reports will work as well). Update the columns to include 'Variant ID' via the button in the top right. Then export your report using the 'export' button also in the top right.
One you upload the columns, you will need to map the CSV columns. Afterwards, fill out the remaining fields and click "Save Discount" at the bottom to create the dynamic AI discount.
AI-discounts typically take 10-20 minutes to process before they are live.
Optimizing for selling inventory: Monitoring and editing the discount
At any point you can review and edit the discounts that Promi offers on your items. From the Promi app homescreen, select the discount from the list. Click "Discount" in the top right of the subsequent UI configuration screen. From this screen, you are able to download a CSV with the current discounts, upload a new CSV to change the discounts, and review the current discounts from the table.
Personalization
Promi allows you to layer on personalization to the discounts that you create. We look at dozens of user characteristics, including device type, referral URL, the number of times the user has visited your site, and many more. We are able to use these to predict whether or not the user will place an order, and how profitable that order is likely to be. We then leverage these predictions to determine how much to increase or decrease the discount for the customer.
Variable discounts
Variable discounts allow you to create static discounts with different values across products. Upload a CSV to define the discount values for each product.
Creating a variable discount
Navigate to the Promi app and select the 'Create discount' option in the top right corner
Most of the UI looks and behaves the same as Shopify's default promotion creation tool. The exception is the 'Product level discount logic' field. To use this, you will need to upload a CSV with the following columns:
-
Product variant ID: the variant ID that the discount should apply on
-
Discount percentage: the % off discount that should be applied (leave this blank if you are using a $ off discount)
-
Discount amount: the $ off discount that should be applied (leave this blank if you are using a % off discount)
A single discount can use both % off and $ off values across different products. If both a 'Discount Percentage' and 'Discount Amount' are provided, the 'Discount Percentage' will be used.
See below a sample CSV to upload. The simplest way to get your product variant IDs is via Shopify reports. From your merchant dashboard, navigate to 'Analytics' -> 'Reports' -> search 'Inventory' -> select 'Month-end inventory snapshot' (other reports will work as well). Update the columns to include 'Variant ID' via the button in the top right. Then export your report using the 'export' button also in the top right.
Once you upload the CSV, map the fields correctly, and click 'Save discount', Promi will create your variable discount. The discount may take a while to appear in Promi's home screen (try refreshing if you don't see it). The discount will also be available in Shopify's native discount table.
Deleting variable discounts
To delete variable discounts, you can navigate to Shopify's native discount page and select the discount that you created with Promi. On the subsequent page there will be an option to 'Delete' the discount.
UI components: price strikethroughs, descriptions, etc.
UI templates to display discounted prices
At the top of the Promi app home page you'll see a section labeled with "Set the default template". This defines the UI components that will be enabled by default any time you create a new promotion. Click into this template and you'll see the below screen:
In the top section you can define if this template applies to all discounts or only applies to discounts with a certain prefix. This can be helpful if you are using another app to automatically create discounts - e.g. for email sign up discounts.
The next section defines the UI that will show on product pages (see our setup guide to confirm this is configured correctly). You can check price strikethroughs and discount descriptions separately to determine which will show. If you check discount descriptions, make sure to also type in the text field the message you would like to display. You can use variables to populate various information about the discount in your message.
The following section defines the UI that will show on collections pages. This UI follows the same structure as the product page UI.
UI for individual discounts
From the Promi app home screen you can also configure specific UI for each discount. To do this, search and select the discount from the table below the template section.
At the top of the subsequent page, you will see a message informing you that the UI is following the default template or (if the discount UI is configured separately) you will see an option to revert this discount to follow the default template.
The remaining options are the same as the template file, and behave the same way.