In this case study, we showcase how we partnered with a multi-location cannabis dispensary to leverage AI and machine learning to transform their rewards program through automation and gamification.
By harnessing the power of ML and AI, we helped our client create highly targeted customer segments, develop personalized messaging for each group, and efficiently run A/B tests to optimize the messaging at scale, driving greater engagement and customer loyalty.
Our client uses AlpineIQ, which comes with a powerful, out-of-the-box rewards feature. This tool allows dispensary owners to define various loyalty tiers, assign rewards to each tier, and customize how points are earned. Additionally, it enables the creation of messaging campaigns tied to point balances, the ability to boost points based on customer activity, and offers performance tracking for these campaigns.
However, the system has a few key limitations:
Limited automation
AlpineIQ has limited capabilities when it comes to automating administrative actions based on triggers or specific times.
It doesn't allow for automatic campaign creation or the ability to adjust points based on the number of sales, which can hinder the efficiency of managing a dynamic rewards program.
Basic customer segmentation
The AlpineIQ audience builder relies entirely on form-based conditions, which limits its ability to express complex criteria.
There's no option to run machine learning models within the platform, making it impossible to create fine-grained audiences or use ML to discover
deeper customer patterns. This restricts the ability to leverage data-driven insights for more sophisticated audience segmentation and targeting.
Automated A/B testing not possible
The client wanted to leverage OpenAI to generate message variations, automatically A/B test them,
select the best-performing option, and continuously create new variations in a feedback loop.
However, this level of automation and integration is not possible with AlpineIQ, limiting their ability to automatically improve campaign messaging.
One of AlpineIQ's standout features is its open REST API, which allows you to programmatically perform anything that can be done through the admin interface—the same API powers their own UI. Taking advantage of this, we decided the most effective approach was to replicate AlpineIQ's data into Snowflake. This enabled us to run advanced analytics and machine learning workloads in Snowflake, and then seamlessly push updates back to AlpineIQ using API calls. Check out Kushgroove: AlpineIQ x Snowflake to read about how we replicated the data to Snowflake.
With the data now in Snowflake, we developed a suite of SQL and Python-based tools to address each of the identified limitations, enabling us to overcome the challenges and optimize the client’s workflows.
Enabling Automation
We built a Python library to simplify interactions with the AlpineIQ REST API, making it easy to set up conditions that trigger various actions.
By continuously updating the data in Snowflake, we could easily define conditions such as,
"if fewer than 100 of the discounted pre-roll items have been sold, activate a bonus points campaign."
This streamlined approach allowed for more dynamic and responsive campaign management.
ML Powered Customer Segmentation
With the data in Snowflake, building customer segments based on powerful rules became seamless.
We utilized traditional SQL queries along with Python powered machine learning to identify unique user cohorts.
For example, we could easily find customers who had been in the top 10% of spenders but suddenly reduced their activity,
or identify clusters of users who purchased similar product groups.
This approach enabled highly targeted, data-driven insights to optimize customer engagement.
OpenAI Powered A/B Testing
With everything set up, integrating OpenAI into the workflow was seamless. The client can now start with a few original messages and let the system
continuously optimize them, using OpenAI to adjust the language in real time. This allows for dynamic message refinement, driving improved engagement and performance.
The resulting system is powerful, semi-autonomous, and capable of driving incremental revenue through AlpineIQ’s rewards program. It automatically segments users, sets up campaigns, and generates messaging tailored to specific campaign goals.
For instance, the system can identify users who are close to reaching a new loyalty tier, craft personalized messages for them, and create the campaign in AlpineIQ—all with minimal administrative involvement.
We’re continuously expanding its capabilities by adding new campaign themes, audience criteria, and messaging options to further enhance performance.
Email us at contact@setfive.com or use the form below!