Customers looking to use Snowflake for marketing use cases initially face a significant challenge: it is difficult to import all relevant marketing data into Snowflake and structure it in a unified format that downstream applications can easily utilize to power data-driven marketing.
This starter solution tackles this challenge of creating a marketing data foundation by offering two independent solutions and a merged version, demonstrating how to integrate both solutions into a comprehensive ‘marketing app suite'.
Marketing Data Foundation Starter (Merges the two apps below into a ‘marketing app suite')
This solution was inspired by how Snowflake runs its own end-to-end Marketing workflows entirely on top of the Snowflake Marketing Data Cloud.
Slide deck with more context on the overall solution: Marketing Data Foundation Starter for Customer 360 & Campaign Intelligence.
In the fast-evolving marketing landscape, the emphasis on data-driven strategies has become more pronounced than ever. A significant trend is the increase in Martech investments, with 63% of Chief Marketing Officers (CMOs) planning to increase their spending within the next 12 months. Such investments are crucial for enhancing customer engagement, refining marketing strategies, and driving sales through advanced data analysis.
The high ROI that businesses achieve from data-driven personalization also highlights its importance. Reports indicate that enterprises see returns of 5 to 8 times on their marketing budgets, which demonstrates the value of personalized marketing in boosting conversion rates, enhancing customer loyalty, and increasing revenue.
Additionally, the industry is shifting towards first-party data ownership, a move propelled by the deprecation of third-party cookies. This shift is essential for maintaining direct customer relationships and adapting to changing privacy norms. The promise of generative AI and the understanding that an effective AI strategy requires a robust data strategy have spurred efforts to centralize marketing data within Snowflake. Organizations aim to organize data into standard schemas that Large Language Models (LLMs) can understand, employing these models in innovative ways to personalize content and predict customer behavior.
Two types of first-party data are pivotal in these efforts: Customer 360 Data and Campaign Intelligence. The former strives to provide a holistic view of the customer by integrating and managing comprehensive data. In contrast, Campaign Intelligence focuses on data related to marketing campaigns, aiming to optimize performance and strategy. These elements are fundamental to successful data-driven marketing, underscoring the need for sophisticated data management and analytics capabilities.
As described in the diagram below, the two Data Foundation use cases in this starter lay the groundwork to support the two Marketing Execution use cases: Planning & Activation, and Measurement.
More specifically, this solution covers Data Ingestion, Semantic Unification, and based Analytics use cases for Customer 360 and Campaign Intelligence data.
Below are some snippet of the app that you are going to build.
The solution consists of the following components:
This solution consists of 2 individual solutions.
Clone the git repo to your local
git clone https://github.com/Snowflake-Labs/sfguide-marketing-data-foundation-starter.git
Run the below command and provide your account details.
snow connection add
Test your connection by running the below command
snow connection test --connection="marketing_demo_conn"
Refer to the screenshot below for more info.
Navigate to the repo folder in your local machine and run the below command to create your database, schema and stage objects
First lets export the connection name to the default connection
export SNOWFLAKE_DEFAULT_CONNECTION_NAME=marketing_demo_conn
cd sfguide-marketing-data-foundation-starter
snow sql -f sql_scripts/setup.sql
Upload all the sample data files in the folder data to the stage created in step 1
snow stage copy data/worldcities.csv @MARKETING_DATA_FOUNDATION.demo.data_stg/data
snow stage copy data/sf_data/ @MARKETING_DATA_FOUNDATION.demo.data_stg/data/sf_data/ --parallel 10
snow stage copy data/ga_data/ @MARKETING_DATA_FOUNDATION.demo.data_stg/data/ga_data/ --parallel 20
snow stage copy data/sample_data.gz @MARKETING_DATA_FOUNDATION.demo.data_stg/data/
If the upload fails due to an access issue then, please follow the instructions in this document to upload the files directly to Snowflake Stage.
Run the below command to create the views that will be bundled along with the native app
snow sql -f sql_scripts/build_views.sql
snow app run
Please DO NOT run this step if you have completed individual steps above. This step is for users to quickly run all the snow cli commands in one go.
bash ./sfguide-marketing-data-foundation-starter/build_deploy_app.sh
Congratulations! You have successfully learned how to easily build an end-to-end Native Application loading sample data.
Want to learn more about the tools and technologies used by your app? Check out the following resources: