# Customer Segmentation Analysis -------------------------------------------------------------------------------- title: "Introduction" description: "Create and configure a powerful data and ML pipeline with a readily available dataset that can be used to analyse the customer segmentation, using the Catalyst QuickML service." last_updated: "2026-08-20T10:20:36.164Z" source: "https://docs.catalyst.zoho.com/en/tutorials/customer-segmentation-analysis/introduction/" service: "All Services" -------------------------------------------------------------------------------- # Customer Segmentation Analysis # Introduction This tutorial will guide you through building a clustering model using [Catalyst QuickML](https://docs.catalyst.zoho.com/en/quickml/getting-started/introduction/). Clustering models help segment records into clusters where each one is characteristically different from another. Using customer data such as demographics, transaction behavior, and transaction data as a training dataset, clusters can be formed out of similar customers so the business can advertise to specific customer segments. Targeting the right audience with the right strategy provides value to the customer,improving customer experience. We ' ll provide you with a sample dataset that contains data about credit card customers . With this dataset , we'll build a clustering model that can segment these customers into clusters with different behaviors. In the credit card service industry, customers can be offered a range of credit card options with rewards, benefits, and introductory and purchase offers , but targeting the right customers with relevant offers can be difficult . It involves identifying the spending behavior of customers and segmenting them into meaningful groups so that marketing teams can focus on building the right campaigns for the right segments . To learn more about clustering , check out our documentation below: * [Clustering](https://docs.catalyst.zoho.com/en/quickml/help/learning-center/clustering/) * [Algorithms](https://docs.catalyst.zoho.com/en/quickml/help/ml-algorithms/clustering/) * [Evaluation metrics](https://docs.catalyst.zoho.com/en/quickml/help/learning-center/clustering/#clustering-evaluation-metrics) Now, let's have a quick overview of what you'll learn. ## Overview **1\. Preprocess the dataset** The customers' credit card spending dataset has customer IDs, current balances, balance update frequencies, total purchases, one-off purchases, installment purchases, cash advance amounts, purchase frequencies, one-off purchase frequencies, installment purchase frequencies, cash advance frequencies, cash advance transaction counts, purchase transaction counts, credit limits, total payments, minimum payments, percentages of full payments made, and customer tenures. Together, these features describe how each customer spends, repays, and uses credit over time. All the data is numeric except customer ID, so we'll need a few preprocessing steps like dropping customer ID and filling in missing values. **2\. Build the clustering pipeline** In the clustering pipeline, we'll need to select a suitable algorithm for our dataset. For our customer segment analysis, we'll use the K-means algorithm. [K-means](https://docs.catalyst.zoho.com/en/quickml/help/ml-algorithms/clustering/#k-means) clustering uses proximity to determine the similarity between customers. This will give us our clustering model, along with downloadable information about the clusters created for the training dataset. **3\. Deploy the model via an endpoint** After training, the model can be deployed directly from the Catalyst console by generating an [endpoint URL](https://docs.catalyst.zoho.com/en/quickml/help/pipeline-endpoints/). This endpoint allows external applications to send customer information and get the cluster ID that the customer belongs to. -------------------------------------------------------------------------------- title: "Prerequisites" description: "Create and configure a powerful data and ML pipeline with a readily available dataset that can be used to analyse the customer segmentation, using the Catalyst QuickML service." last_updated: "2026-08-20T10:20:36.185Z" source: "https://docs.catalyst.zoho.com/en/tutorials/customer-segmentation-analysis/prerequisites/" service: "All Services" -------------------------------------------------------------------------------- # Pre requisites Because this tutorial is focused on [Catalyst QuickML](https://docs.catalyst.zoho.com/en/quickml/getting-started/introduction/), all tasks—including dataset preparation, pipeline creation, model training, and deployment—will be performed within the Catalyst console. Before getting started, download the following dataset: [Credit card customers](https://workdrive.zohoexternal.in/external/sheet/1eaf4a37b769af2045b08622003dbed9e775efdc357b8d526ad2d8f597606836) -------------------------------------------------------------------------------- title: "Create a project" description: "Create and configure a powerful data and ML pipeline with a readily available dataset that can be used to analyse the customer segmentation, using the Catalyst QuickML service." last_updated: "2026-08-20T10:20:36.185Z" source: "https://docs.catalyst.zoho.com/en/tutorials/customer-segmentation-analysis/create-a-project/" service: "All Services" -------------------------------------------------------------------------------- Let’s [create a Catalyst project](https://docs.catalyst.zoho.com/en/quickml/getting-started/introduction/) from the Catalyst console. 1. Log in to the [Catalyst console](https://console.catalyst.zoho.com/baas/index) and click **Create new Project** . 2. Enter the project’s name as **CreditcardCustomersClustering** in the pop-up window that appears. 3. Click the **Create** button. Your project will be created and opened. 4. Navigate to the _QuickML service_ in the left pane . Click **Start Exploring** . -------------------------------------------------------------------------------- title: "Upload the dataset" description: "Create a powerful ML pipeline that analyzed historic ZOHO CRM data and meaningfully predicts the likeliness of a successful deal using the Catalyst QuickML components." last_updated: "2026-08-20T10:20:36.185Z" source: "https://docs.catalyst.zoho.com/en/tutorials/customer-segmentation-analysis/upload-dataset/" service: "All Services" -------------------------------------------------------------------------------- # Upload the Dataset Let's begin by uploading the dataset in Catalyst QuickML using the available dataset [connectors](https://docs.catalyst.zoho.com/en/quickml/help/data-connectors/zoho-apps/) . 1. Click **Datasets** to get started . 2. Click **Import Dataset** . A pop-up will be displayed. 3. We have the dataset downloaded locally, so , in the _Import Dataset_ window , navigate to _Files_ and click **Upload File** . 4. Upload the **Credit card customers dataset** that you have downloaded already. 5. Set the Quotes Type as **Double Quotes (")** and Escape Character as **Backslash (\\)**, and click **Next** . 6. The name of the dataset will be auto\-populated based on the name of the uploaded file. Edit it if required, and click **Upload** . The dataset is now uploaded successfully. Note: The dataset contains missing values, and these gaps can affect the overall quality score . The score will improve once we address this during the pre processing configuration step in the tutorial. The dataset will be displayed in the _All Datasets_ section. You can click on a dataset name to view its details . Click on the **Credit card customers** dataset in the list . You'll be redirected to the _Dataset Details_ page. The dataset's [Statistical](https://docs.catalyst.zoho.com/en/quickml/help/data-profiler-and-viewer/#what-is-data-profiling) [ ](https://docs.catalyst.zoho.com/en/quickml/help/data-profiler-and-viewer/#what-is-data-profiling) [profile overview, sample preview](https://docs.catalyst.zoho.com/en/quickml/help/data-profiler-and-viewer/#what-is-data-profiling) [,](https://docs.catalyst.zoho.com/en/quickml/help/data-profiler-and-viewer/#what-is-data-profiling) and visualization chart are shown below. The uploaded dataset contains 8,950 records across 18 columns, with 0.19% **missing values**. 7. Click to the **Overview** drop-down button and select the **minimum_payments** column. In the **minimum_payments** column (313 missing values out of 8,637 available). These will be handled in the preprocessing stage. -------------------------------------------------------------------------------- title: "Create an Clustering Pipeline" description: "Create and configure a powerful data and ML pipeline with a readily available dataset that can be used to analyse the customer segmentation, using the Catalyst QuickML service." last_updated: "2026-08-20T10:20:36.185Z" source: "https://docs.catalyst.zoho.com/en/tutorials/customer-segmentation-analysis/create-clustering-pipeline/" service: "All Services" related: - ML Algorithms in QuickML (/en/quickml/help/ml-algorithms/classification-algorithms) - Operations in QuickML (/en/quickml/help/operations-in-quickml/encoding) -------------------------------------------------------------------------------- Now that the dataset is uploaded, we’ll create a clustering pipeline using the uploaded dataset. 1. Navigate to the **_Pipeline_** module in the left menu and click on the **Create Pipeline** button. 2. In the _Create Pipeline_ window, select the **Clustering** pipeline model. 3. Name the pipeline **Credit Card customer clustering** ,and choose the **Credit card customers dataset** from the dataset drop-down. Click **Create** to create the pipeline. You'll land on the custom model pipeline builder interface. Let's drag-drop the required stages and connect the pipeline. -------------------------------------------------------------------------------- title: "Pipeline Configuration" description: "Create and configure a powerful data and ML pipeline with a readily available dataset that can be used to analyse the customer segmentation, using the Catalyst QuickML service." last_updated: "2026-08-20T10:20:36.185Z" source: "https://docs.catalyst.zoho.com/en/tutorials/customer-segmentation-analysis/pipeline-configuration/" service: "All Services" related: - ML Algorithms in QuickML (/en/quickml/help/ml-algorithms/classification-algorithms) - Operations in QuickML (/en/quickml/help/operations-in-quickml/encoding) -------------------------------------------------------------------------------- To build any ML model, the pipeline should involve data cleaning, preprocessing stages , and choosing the right model . ## 1. Fill columns From the dataset profile generated during the upload stage, it's clear that there are missing values in the dataset , and they need to be handled . The fill columns stage is used in the pipeline to fill in cells that are empty or null. We’ll drag and drop the fill columns node by navigating to **Data Cleaning** then **Fill Columns** and connecting it to the source node. From the dataset profile page, we found the missing values in **minimum_payments** . In the fill columns configuration page, we'll substitute them with **Mean** values. This will update missing values with the column mean. Click **Save** to save the pipeline. ## 2. Select/Drop Now we have to drop the **cust_id** column, since ID columns aren't useful during the clustering model training process. We’ll drag and drop the _Select/Drop_ node by navigating to **Data Cleaning** and **Select/Drop** in the pipeline builder. Connect it to the previous node to open the node configuration panel. Choose **cust_id** in the columns dropdown as shown above, select **drop** as the operation to execute , and click **Save** to save the stage. The selected column has been dropped from the training dataset , which you can see in the preview section. ## 3. Mean normalization Now we have the full training dataset ready with the required columns and without any missing values. Check the value ranges from all the columns : each column has values across various ranges. We'll use the normalization technique to bring all the data to a common scale. Learn more about normalization in [our documentation](https://docs.catalyst.zoho.com/en/quickml/help/operations-in-quickml/normalization/) . This keeps the model's training process from getting dominated by data with a higher magnitude. For our case, we'll use mean normalization. Let's drag and drop the _Mean Normalisation_ node by navigating to **ML Operations**, **Normalisation**, and **Mean Normalisation** in the pipeline builder. Connect the node to the previous stage to open the configuration panel. Select all the available columns using the **Select all** button and click **Save** . With this, the preprocessing of the dataset is completed, and the dataset is ready. ## 4. K\-means algorithm The final step in the pipeline building process is to select the appropriate algorithm, configure it with the required number of clusters, and execute it. Let's use the K-means algorithm. We'll provide the number of clusters in the algorithm configuration panel, so the model must create only **K** clusters using our training dataset. Let's drag and drop the algorithm node by navigating to **ML Operations** , **Algorithms**, and **KMeans** in the pipeline builder. Connect it to the previous stage to open the configuration panel, and the other end will be automatically connected to destination. This finishes the pipeline building. Note: We're using 3 clusters as a starting point for this tutorial. In practice, you can determine the optimal number of clusters by running the model with different K values and comparing the evaluation metrics to indicate better-defined clusters. Update the **Number of clusters** parameter to **3** and click **Save** . Now that the entire clustering pipeline is built and saved, click the **Execute** button at the top-right corner of the pipeline builder page to start executing the pipeline. This will redirect you to the pipeline details page shown below, which provides details about the executed pipeline with execution status. You can see that the pipeline execution is successful. Click **Execution Stats** to view compute usage details about each stage of the model execution. Now the model **Credit Card customer clustering model** is generated after training , and it's ready for evaluation. Click the model hyperlink **Credit Card customer clustering model** to open the model details page and see necessary information about model details, evaluation metrics, clustering visualizations , and versioning details. -------------------------------------------------------------------------------- title: "Model Evaluation" description: "Create and configure a powerful data and ML pipeline with a readily available dataset that can be used to analyse the customer segmentation, using the Catalyst QuickML service." last_updated: "2026-08-20T10:20:36.186Z" source: "https://docs.catalyst.zoho.com/en/tutorials/customer-segmentation-analysis/model-evaluation/" service: "All Services" related: - ML Algorithms in QuickML (/en/quickml/help/ml-algorithms/classification-algorithms) - Operations in QuickML (/en/quickml/help/operations-in-quickml/encoding) -------------------------------------------------------------------------------- The Model Details page contains evaluation metrics that help y ou understand model performance during the training and validation process, clustering visualizations to view the customer dispersion between clusters , and model versioning details. Model versions are typically used to track the improvement or degradation of the performance with selected metrics as evaluation criteria for frequent model trainings. **Evaluation metrics** Clustering metrics are derived by the performance of the model during the training and validation process , similar to any machine learning model . Learn more about model evaluation metrics in[ our documentation](https://docs.catalyst.zoho.com/en/quickml/help/learning-center/clustering/#clustering-evaluation-metrics) . **Visualizations** To evaluate the dispersion of records into clusters, QuickML can generate a couple of visualizations to assist in analysis . 1. Cluster distribution_ shows how many data points fall into each cluster . 2. Cluster _plot_ highlights how clusters are separated in a lower-dimensional space. Learn more about the cluster visualizations [in our documentation](https://docs.catalyst.zoho.com/en/quickml/help/learning-center/clustering/#visual-evaluation-of-clusters) . **View model predictions** On top of the model evaluation metrics and model visualizations, QuickML also provides a model predictions dataset. The original training dataset is equipped with a column called **Cluster** . This column contains the cluster information of each customer , which you can find using cust_id. It specifies a customer can belong to only one of the clusters . The model predictions dataset generated by the model can be downloaded locally and used for further analysis of each customer segment . -------------------------------------------------------------------------------- title: "Create an Endpoint" description: "Create and configure a powerful data and ML pipeline with a readily available dataset that can be used to analyse the customer segmentation, using the Catalyst QuickML service." last_updated: "2026-08-20T10:20:36.186Z" source: "https://docs.catalyst.zoho.com/en/tutorials/customer-segmentation-analysis/create-endpoint/" service: "All Services" -------------------------------------------------------------------------------- Now , let's create an endpoint to allow [external applications](https://docs.catalyst.zoho.com/en/quickml/help/pipeline-endpoints/#model-tester) to interact with the model and get responses. 1. Navigate to the Endpoints component in the left menu and click **Create Endpoint** . 2. Provide a name for the endpoint in the Endpoint Name field (we'll name it **Credit card customer clustering model** ) and select the model pipeline name from the drop-down values of the Choose Model field. Click **Create Endpoint** . 3. Once the endpoint is created, you can view its details and test the deployed model directly from the Test the model section. In this view , the Request panel displays the input format expected by the model. It indicates the sample record information with all the required input features. When you click **Get Result** , the model processes this customer information as JSON input and generates the cluster number in a JSON response which this customer falls in. This helps users validate that the model is returning predictions in the expected structure before integrating the endpoint into business applications. 4. Click **Publish** to publish the endpoint. 5. Upon publishing the endpoint, it will generate **API details** —which include the endpoint API URL, scope, headers and a sample request and response data which is used to access the model from external applications. Note: You can also check out our endpoints authentication document to implement pipeline authentication. This ensures secured access to endpoints, the ML models, and datasets. That's it! You've successfully built and deployed a customer segmentation model using Catalyst QuickML. You can now use the cluster assignments from the model predictions dataset to tailor campaigns to each customer segment, and understand new customer behavior in real time based on the cluster they belong to using the model's endpoint response.