# Bloom Analytics

Bloom Analytics connects your Shopify store, ad platforms, and shipping data to show where profit leaks or grows, so you can make your store more profitable.

### What is Bloom Analytics?

Bloom Analytics helps you understand how profitable your store really is and how to make it more profitable. It connects your Shopify store, advertising platforms, shipping platforms, and other business data, then cleans that data, fills gaps, and organizes everything in one place. Bloom turns the result into actionable insights so you can see clearly where profit leaks or grows in your business.

Bloom does not just show you numbers. It transforms your business data into clear insights that help you understand what is happening, identify opportunities, uncover profit leaks, and make better decisions to grow your profitability.

### What you can do with Bloom

**Find profit leaks**\
Identify where your business is losing profit and what is impacting your margins.

**Get store insights**\
Discover new opportunities to improve your store's performance and profitability.

**Analyze country-level profit**\
See how revenue, costs, and profits vary across different countries.

**Understand marketing performance**\
Analyze your marketing spend and ad performance across all connected platforms.

**Track product and order profitability**\
See profit performance across products and orders, with insights that tell you what to scale, fix, or cut.

**Connect with MCP**\
Use AI tools to explore your Bloom store data, ask questions, and uncover actionable insights through MCP.

{% hint style="success" %}
:tada:Congratulations on starting your journey to accurate profit analysis.&#x20;
{% endhint %}


# Getting Onboard

How to set up your Bloom account and connect your Shopify store, ad platforms, and shipping platforms to start tracking store profit and marketing performance.

### How to set up Bloom

Work through these steps in order. Each connection you add gives Bloom more of the data it needs to report accurate profit.

1. **Create your Bloom account:** Sign up using your Google account or your email.
2. **Connect your Shopify store:** After creating your account, connect your Shopify store to Bloom. This gives Bloom access to your store's data so it can build your profit breakdown and analytics report.
3. **Connect your ad platforms:** Connect advertising platforms such as Meta, Google, TikTok, or other supported platforms. Once connected, select the ad account or campaign you want Bloom to track.
4. **Connect your shipping platforms:** Connect your shipping platforms to bring your shipping costs into Bloom.

Once your Shopify store and relevant platforms are connected, Bloom starts syncing your data. You can then see your store's profitability and marketing performance in your Bloom dashboard.

{% hint style="info" %}
For further help regarding the onboarding process or anything else about the app, contact our 24/7 live support team.
{% endhint %}


# Data Synchronization

How Bloom synchronizes your Shopify and connected platform data, how long the initial sync takes, and what to do when data is missing or out of date.

### What is Data Synchronization in Bloom?

Data synchronization is how Bloom automatically retrieves data from your Shopify store and connected platforms to keep your reports, profit calculations, and analytics up to date. It runs on its own, so your revenue, cost, and profit metrics stay current without manual importing. This page explains how the sync works, how long it can take, and what to do if your data is missing or out of date.

### How it Works

When you connect your Shopify store to Bloom, Bloom begins retrieving the data required to build your reports and analytics.

**Initial sync**

After you install and connect Bloom, the initial synchronization begins automatically. Bloom initially syncs up to 365 days of historical data from your Shopify store, so you can start analyzing your store's performance without manually importing history. The time the initial sync takes depends mainly on the amount of data in your store.

**Data fetching**

Bloom retrieves the information required to calculate your revenue, costs, profits, and other metrics. Depending on your Shopify store and connected integrations, Bloom can fetch:

* Orders
* Products
* Customers
* Transactions
* Payouts
* Refunds
* Other data required for reporting

**Real-time data sync**

Bloom keeps your data up to date through real-time synchronization. Whenever you log in to Bloom, the app checks and syncs the latest available data from your connected platforms, so you don't need to trigger a sync every time to see your latest data. Bloom continues processing data in the background, so your reports and analytics stay live and current. The time required to update data varies depending on the data source and the amount of data being processed.

**How long data sync takes**

There is no fixed synchronization time, because it depends on the amount of data Bloom processes. The main factor is data volume: stores with more orders, products, transactions, and other records may need more time to synchronize. For large stores, Bloom processes data in the background so recent data becomes available first while the remaining historical data continues to sync.

**Syncing data from connected platforms**

Bloom can also synchronize data from the platforms you connect to your account, such as advertising and shipping platforms. Each integration may have its own synchronization process and data availability. For example, when you connect an advertising platform, Bloom retrieves the available campaign, spend, and performance data required for your marketing reports. Bloom processes this alongside your Shopify data to give a consolidated view of your business performance.

**What happens when you connect a new integration**

When you connect a new platform, Bloom starts retrieving the available historical and current data supported by that integration. Once the sync is complete, Bloom continues updating the integration's data automatically.

**Data accuracy and security**

Bloom is designed to securely process and validate data received from Shopify and connected platforms. It uses secure API connections to retrieve data and applies data validation during processing to maintain consistency and accuracy across your reports.

### How to check and troubleshoot data sync

If you recently connected Shopify or another integration, give Bloom some time to complete the initial synchronization. If some data is missing, work through these steps:

1. Check whether the integration is connected.
2. Check the integration's sync status or any error messages shown in Bloom.
3. Allow time for the initial synchronization to complete.
4. Log in to Bloom to trigger the latest data synchronization.
5. Contact Bloom Support if the issue continues.

If your data does not appear as expected, first check whether the synchronization is still in progress. The scenarios below cover the most common cases.

**Data is missing**

If recent or historical data is missing, the sync may not have completed yet. Large stores and integrations with large amounts of historical data can take longer to process.

**Data is not up to date**

If your Bloom data does not match your Shopify or advertising platform, the latest data may still be processed. Log in to Bloom to allow the latest available data to sync, then give the system some time to finish processing.

**Integration is not syncing**

If an integration is not syncing:

1. Check that the integration is still connected.
2. Check for any error or permission messages.
3. Log in to Bloom to initiate the latest sync.
4. Reconnect the integration if required.
5. Contact Bloom Support if the issue persists.

When contacting support, include the name of the integration and examples of the missing or incorrect data. This helps the Bloom team investigate faster. If your data still looks incorrect after the sync is complete, contact Bloom Support so the team can investigate the synchronization and identify the issue.

### Good to know

* **Your data syncs automatically:** Bloom checks for the latest available data whenever you log in, so you don't need to start a sync manually every time.
* **Initial synchronization can take time:** Your data may not be immediately available after connecting Shopify or a new integration.
* **Recent data is prioritized for large stores:** Bloom syncs recent data first so you can start exploring while older data continues processing.
* **You don't need to keep the app open:** Synchronization continues in the background.
* **Different integrations may sync at different speeds:** Data availability depends on the platform, the amount of data, and the integration's API limitations.


# Overview - Dashboard

The **Overview** dashboard provides a high-level snapshot of your store’s financial performance, designed to help you quickly understand how revenue flows through costs and margins to arrive at profit.

This page brings together key business metrics across revenue, costs, marketing, customers, and products, allowing you to identify trends, inefficiencies, and growth opportunities at a glance. Rather than focusing on individual metric definitions, the Overview emphasizes **relationships between metrics** and how changes in one area impact overall profitability.

#### **What you’ll find on the Overview page**

* [**Revenue to Profit**](#revenue-to-profit)\
  A step-by-step view of how Net Revenue is reduced by product costs, fulfillment costs, marketing spend, and operating expenses to arrive at Net Profit. This section highlights where money is being spent and how each cost component affects profitability.
* [**Margin Overview**](#margin-overview) **(CM1, CM2, CM3)**\
  A summary of contribution margins that shows profitability at different stages—after product costs, fulfillment costs, and marketing spend—helping you assess business health beyond top-line revenue.
* [**Marketing Metrics / Marketing Performance Trend**](#marketing-performance)\
  Key indicators that evaluate marketing efficiency and effectiveness, showing how well advertising spend translates into revenue and profit.
* [**Customer and Revenue Metrics**](#customer-and-revenue-metrics)\
  Insights into customer behavior, including acquisition and retention trends, help you understand how customers contribute to revenue growth.
* [**Product Overview**](#product-metrics)\
  A high-level view of product performance, allowing you to quickly identify top-performing and underperforming products from a revenue and profitability perspective.

### Revenue to Profit

The **Revenue to Profit** section provides a high-level view of how your store’s revenue flows through various cost layers and ultimately results in **Net Profit**.\
\
This section is designed to help you quickly understand **where money is being spent**, **how costs impact profitability**, and **which areas offer the greatest opportunity for improvement**.

**Watch the video below** to learn how to analyze this section in detail and interpret each metric effectively.

{% embed url="<https://www.tella.tv/video/understanding-your-profit-conversion-apa3>" fullWidth="false" %}

#### Revenue to Profit Summary Cards

This section displays key financial totals for the selected date range, starting from **Net Revenue** and progressively subtracting costs to arrive at **Net Profit**.

<figure><img src="/files/3oxlcvODtHp5BuQoBejK" alt=""><figcaption></figcaption></figure>

The flow follows this logic:

```
Net Revenue
– Cost of Goods Sold
– Cost to Fulfill Orders
– Marketing Costs
– Operating Expenses
= Net Profit
```

Each card reflects the total value for the selected period and shows the percentage change compared to the previous period, helping you quickly identify trends and shifts in performance.

In addition to the cost breakdown, this section also includes:

* **Total Revenue**\
  Represents the total sales value and matches **Shopify’s Total Sales** metric.
* **CM2 (Contribution Margin 2)**\
  Shows the profit remaining after deducting product and fulfillment costs, providing insight into profitability before marketing and operating expenses.

Together, these metrics give a concise snapshot of your business’s financial health.

#### Revenue to Profit % Chart

Below the summary cards, the **Revenue to Profit %** chart visualizes how revenue is distributed across different cost categories as a **percentage of Net Revenue**.

<figure><img src="/files/Yii6oHxRb8i13hBdSA0n" alt=""><figcaption></figcaption></figure>

This chart allows you to:

* Understand how much of your revenue is spent on:
  * Product costs
  * Fulfillment costs
  * Customer acquisition
  * Operating expenses
* See how these percentages change over time
* Observe how cost fluctuations impact **Net Profit Margin**

By viewing costs in percentage terms rather than absolute values, it becomes easier to:

* Compare performance across time periods
* Identify cost categories that are growing disproportionately
* Spot opportunities to optimize expenses and improve profitability

### Margin Overview

The **Margin Overview** section provides a consolidated view of your store’s profitability at each critical stage of the revenue lifecycle.\
It focuses on **Contribution Margins (CM1, CM2, and CM3)** and their corresponding percentages, helping you understand how much profit remains after each major cost layer is applied.

This section is designed to answer a key question:\
**“How much profit do I have left at each stage, and where is it being consumed?”**

At the top of the section, Bloom displays summary cards for all three contribution margins along with their percentage values for the selected date range.

**Watch the video below** to learn how to analyze this section in detail and interpret each metric effectively.

{% embed url="<https://www.tella.tv/video/understanding-contribution-margins-hxzm>" %}

#### **Margin Summary Cards**

At the top of the section, Bloom displays summary cards for all three contribution margins along with their percentage values for the selected date range.

<figure><img src="/files/guHhZpDJYGymw8qzIvJA" alt=""><figcaption></figcaption></figure>

The margins follow this progression:

* **CM1 (Gross Profit)**\
  Profit remaining after deducting **product costs (COGS)** from Net Revenue.
* **CM2 (Contribution Margin 2)**\
  Profit remaining after deducting **product costs and order fulfillment costs**.
* **CM3 (Contribution Margin 3)**\
  Profit remaining after deducting **product costs, fulfillment costs, and marketing spend**.

Each margin is also shown as a **percentage of Net Revenue**, making it easy to assess margin efficiency regardless of revenue scale.

#### **Profit Margins Trend Chart**

Below the summary cards, the **Profit Margins chart** visualizes both the **absolute values** and **percentage trends** for CM1, CM2, and CM3 over time.

<figure><img src="/files/U8j8ISzAufyshDrzDlvP" alt=""><figcaption></figcaption></figure>

The chart shows:

* CM1, CM2, and CM3 values (bars)
* CM1%, CM2%, and CM3% (lines)

At any point in time, you can hover over the chart to view:

* The exact margin values
* Their corresponding percentages

Because each margin is calculated by subtracting additional cost layers, the gap between CM1, CM2, and CM3 visually represents **where profit is being consumed**.

### Marketing Performance

The Marketing Performance section provides a clear view of how efficiently your marketing spend is driving revenue and customer growth.\
It focuses on return-based metrics (MER, MPR), customer acquisition efficiency (CAC), and new customer contribution, helping you understand whether your marketing efforts are profitable and scalable.

This section is designed to answer a key question:\
**“Is my marketing spend generating profitable growth, and how efficiently am I acquiring customers?”**

Before diving into the metrics, a short walkthrough video is available to explain how Bloom calculates marketing performance metrics and how to interpret them effectively.

{% embed url="<https://www.tella.tv/video/marketing-performance-metrics-explained-6cho>" %}

#### Marketing Performance Summary Cards

At the top of the section, Bloom displays key marketing efficiency metrics for the selected date range.

<figure><img src="/files/ErDYEptE8qDQfvSZuSks" alt=""><figcaption></figcaption></figure>

These include:

* **MER (Marketing Efficiency Ratio / ROAS)**\
  Measures how much revenue is generated for every unit of marketing spend.
* **aMER (New Customer ROAS)**\
  Shows marketing efficiency considering only revenue from new customers.
* **MPR (Marketing Profit Ratio / POAS)**\
  Indicates how much profit is generated for every unit of marketing spend.
* **aMPR (New Customer POAS)**\
  Measures profit efficiency from new customer acquisition.
* **CAC (Customer Acquisition Cost)**\
  The average cost to acquire a new customer.
* **New Customers**\
  Total number of new customers acquired in the selected period.
* **New Customers %**\
  Percentage of total new customers, highlighting acquisition focus.
* **BEROAS (Breakeven ROAS)**\
  The minimum ROAS required to avoid losses on marketing spend.

Each card shows:

* The metric value for the selected period
* The percentage change compared to the previous period

This allows you to quickly identify improvements or declines in marketing efficiency and customer acquisition performance.

#### Marketing Performance Trend Chart

Below the summary cards, the Marketing Performance Trend chart visualizes how marketing efficiency and acquisition costs change over time.

<figure><img src="/files/vHLoYn2wdwKQPrm6fyHp" alt=""><figcaption></figcaption></figure>

The chart displays:

* **MER and aMER** (lines)
* **MPR and aMPR** (lines)
* **CAC** (bars)

By hovering over any point in time, you can view:

* Exact values for each marketing metric
* Corresponding CAC for that period

This combined view helps you understand how changes in spend efficiency directly impact customer acquisition costs and overall profitability.

#### How to Use this for Analysis

You can use the Marketing Performance section to answer key questions such as:

* **Is my marketing spend efficient?**\
  Track MER and aMER trends to understand overall and new-customer efficiency.
* **Am I acquiring customers profitably?**\
  Compare MER and MPR against BEROAS to quickly see if campaigns are above or below breakeven.
* **Is customer acquisition improving or getting more expensive?**\
  Monitor CAC alongside New Customers and New Customer % to assess acquisition quality and cost trends.
* **Where is performance changing over time?**\
  Use the trend chart to identify weeks where efficiency improves or declines and correlate those changes with spend, offers, or channel activity.

This section is best used alongside the **Margin Overview** and **Revenue to Profit** sections to ensure that marketing decisions are aligned with overall profitability—not just revenue growth.

### Customer & Revenue Metrics

The Customer & Revenue Metrics section provides a snapshot of how your revenue is distributed across new and repeat customers, along with key order-level and discount insights.

This section helps you understand **who is driving your revenue**, how customer behavior is changing over time, and whether growth is coming from acquisition or retention.

A short walkthrough video is available at the top of this section to explain how these metrics are calculated and how to interpret them together.

#### Revenue & Customer Summary Cards

This section provides a quick snapshot of how your revenue is distributed between new and repeat customers, along with key order and discount indicators for the selected date range.

<figure><img src="/files/5IUCrByI8gs4wKIMMV0i" alt=""><figcaption></figcaption></figure>

At a glance, you can understand:

* Overall order volume and customer acquisition
* How much revenue is coming from new vs repeat customers
* Differences in AOV between new and returning buyers
* The impact of discounts and returns on revenue quality

Each summary card displays:

* The total value for the selected period
* The percentage change compared to the previous period

This makes it easy to quickly identify shifts in customer behavior, revenue mix, and overall demand trends without diving into individual metrics.

#### Customer Type Trend Chart

Below the summary cards, the **Customer Type** chart visualizes how revenue and order contribution is split between new and repeat customers over time.

<figure><img src="/files/eyRRhsi8iOCapGKhxye2" alt=""><figcaption></figcaption></figure>

The chart displays:

* New Customers and Repeat Customers (bars)
* New Customer % and Repeat Customer % (lines)

By hovering over any data point, you can view:

* The number of new and repeat customers
* Their respective contribution percentages

This trend view helps you understand whether growth is being driven by acquisition, retention, or a mix of both.

### Product Metrics

The Product Metrics section highlights your store’s best-performing products for the selected date range.

<figure><img src="/files/ciCH3xPBdSVtWH4A15ae" alt=""><figcaption></figcaption></figure>

It displays a visual breakdown of **total units sold** along with a list of the **top 5 selling products**, showing:

* Units sold per product
* Total sales generated by each product

This section helps you quickly identify which products are driving the majority of your revenue, making it easier to:

* Focus marketing efforts on top-performing items
* Spot winning products to scale
* Identify over-reliance on a small set of products

Overall, this view provides a fast snapshot of product-level performance without overwhelming detail.


# Dashboard

Explore the Dashboard, the toolbox that gives you direct and detailed access to the many influential data points of your Shopify store.

The Dashboard benefits your Shopify data analytics with an array of key performance indicators (KPIs), brought to life through dynamic and straightforward explanations for clear data-driven business decisions. &#x20;

### :slot\_machine: Overview

The Metrics Library contains these vital metrics, categorized for easy navigation:

* **Sales Metrics**

Keep tabs on critical sales information like order volumes, average order value, and net sales across customer bases. Tracking refunds also offers insights into customer satisfaction levels.

* **Profit Metrics**

Displays profitability indicators like gross profit, gross margin, and contribution margin across customers segments and marketing channels (paid and organic). Includes overall Shopify margins and app-specific margins.

* **Marketing Metrics**

Analyze conversion rates, advertising expenditure, customer acquisition cost (CAC), and return on ad spend (ROAS) across various customer segments and channels for market campaign effectiveness. Also, gauge the marketing efficiency ratio (MER) and breakdowns of revenue and profitability by channel.

* **Customer Metrics**

Uncover patterns in customer behavior with metrics on total customer counts, ratio of new customers, and counts of new and returning customers.

### My Metrics

### :1234:Understanding KPIs

Each KPI within the Metrics Library is accompanied by these elements to facilitate easier understanding:

* **Definition**

A straightforward explanation of what the metric represents.

* **Significance**

Why the metric is crucial for your ecommerce success.

* **How to Use**

Directions on how to interpret and apply the metric for strategic decision-making.

### :sparkle:Visualizing and Interpreting the Data

The Metrics Library offers intuitive Spline Area charts for user-friendly visualizations of sales, profit, marketing, and customer metrics. It’s designed to help monitor store performance by analyzing data patterns for improved marketing strategies, inventory management, and allied operations.&#x20;

### :wrench:Customizing Your Analysis

Bloom provides merchants the choice to alter their metric viewing experience with multiple customization options.

* **Date-range Selection**

Select your metric analysis period for a focused view of your data with custom daily, weekly, monthly, or yearly.

* **Comparisons**

Benchmark metrics against values in any year or same period in the past.

* **Cumulative Analysis**

Evaluate overall performance over your selected timeframe.

### Use Cases of the Metrics Library

The Metrics Library supports Shopify store owners by facilitating:

* **Informed Decision-Making:** Lean on solid metrics for strategic decisions across marketing and inventory projects.
* **Customer Acquisition and Retention:** Gauge the impact of marketing campaigns and loyalty initiatives through relevant customer metrics.
* **Profitability Focus:** Prioritize profitable outcomes by identifying high-return channels and customer segments.
* **Marketing ROI Assessment:** Evaluate the efficiency of marketing spend across various channels for optimal budgeting.
* **Identifying Improvement Opportunities:** Uncover performance trends for optimization and address potential issues.


# Profit Table

The Bloom Profit Table breaks down your Shopify store's revenue, costs, marketing spend, contribution margins, and net profit for any date range.

### What is a Profit Table?

The Profit Table in Bloom Analytics provides a complete breakdown of profitability, from Gross Merchandise Value (GMV) to Net Profit, for any selected period. It is built for ecommerce merchants who need to see exactly where money is made or lost, with each major revenue and cost component laid out in a clear, structured format. You can filter results by date range and group them by day, week, or month, so it supports both high-level trend analysis and granular performance review.

### How it Works

**Reading the Table**

Each column represents a time period based on the selected grouping, ending with a Total column that sums the entire date range. Each row represents a key metric, and some rows are expandable to reveal relevant sub-metrics. Negative values (such as markdowns, refunds, and discounts) appear with a minus sign, and all values display in the currency of your Bloom account.

**Metric Tiers (The Profit Waterfall)**

The Profit Table is organized as a top-to-bottom profit waterfall. It starts from top-line revenue and subtracts one layer of cost at each tier until it reaches Net Profit:

1\. Revenue metrics

2\. Cost metrics

3\. Contribution margins (CM1, CM2, CM3)

4\. Marketing performance metrics

5\. Operating expenses and Net Profit

**How Refunds are Reported**

Bloom follows Shopify's refund logic and offers two reporting modes:

1. Shopify-style refund reporting (default): refunds are shown based on the date the refund was issued, matching Shopify Analytics and Shopify Finance Reports.
2. Original Order Date refund mode (optional, recommended): refunds are attributed to the month the original order was placed rather than the refund date.

<figure><img src="/files/jeciUofRfUsLsxZbeAW5" alt="Original Order Date refund mode "><figcaption></figcaption></figure>

To switch modes, see How to use it.

### Data Available

**Revenue Metrics**

<table data-header-hidden data-search="false"><thead><tr><th></th><th></th></tr></thead><tbody><tr><td>Metric</td><td>Definition</td></tr><tr><td>GMV (Gross Merchandise Value)</td><td>Total value of products based on the compare-at price (original price), usually higher than the sale price. Formula: GMV = Σ (Compare-at Price × Quantity Ordered).</td></tr><tr><td>Price Cut (Markdown)</td><td>The difference between the compare-at price and the actual sale price, the total price cut applied versus original prices. Shown as a negative value. Formula: Markdown = Σ ((Compare-at Price - Variant Price) × Quantity Ordered).</td></tr><tr><td>Price Cut %</td><td>Markdown as a percentage of GMV. Formula: Price Cut % = (Price Cut ÷ GMV) × 100.</td></tr><tr><td>Gross Revenue</td><td>Total value of product sales after markdowns but before discounts and refunds. Formula: Gross Revenue = GMV + Price Cut (Markdown), where markdowns are negative.</td></tr><tr><td>Gross Orders</td><td>Total number of orders placed within the selected date range.</td></tr><tr><td>Gross AOV</td><td>Average spend per order. Formula: Gross AOV = Gross Revenue ÷ Gross Orders.</td></tr><tr><td>Net Orders</td><td>True order volume after removing fully refunded orders. Formula: Net Orders = Gross Orders - Refunded Orders.</td></tr><tr><td>Net AOV</td><td>Average amount earned per successful order after refunds and discounts. Formula: Net AOV = Net Revenue ÷ Net Orders.</td></tr><tr><td>% of New Customer Orders</td><td>Share of orders from first-time customers. Formula: % New Customer Orders = (New Customer Orders ÷ Gross Orders) × 100.</td></tr><tr><td>Discounts</td><td>Total value of all reductions applied at checkout, including line-item and order-level discounts. Reduces Gross Revenue to Net Revenue. Shown as a negative value.</td></tr><tr><td>Discounted Orders %</td><td>Share of orders with at least one discount applied. Formula: Discounted Orders % = (Number of Orders with Discounts ÷ Gross Orders) × 100.</td></tr><tr><td>Discount Value %</td><td>Share of potential revenue lost to discounts. Formula: Discount Value % = (Discounts ÷ Gross Revenue) × 100.</td></tr><tr><td>Returns and Refunds</td><td>Total value of refunded and returned items in the period. Bloom follows Shopify refund logic and offers two reporting modes (see How refunds are reported).</td></tr><tr><td>Return Value %</td><td>Share of Gross Revenue returned or refunded. Formula: Return Value % = (Refund Value ÷ Gross Revenue) × 100.</td></tr><tr><td>% of Orders Returned</td><td>Share of orders that resulted in a return or refund. Formula: % of Orders Returned = (Number of Returned Orders ÷ Gross Orders) × 100.</td></tr><tr><td>Shipping Revenue</td><td>Total shipping or delivery charges collected from customers at checkout.</td></tr><tr><td>% of Gross Revenue from Shipping</td><td>Share of Gross Revenue from shipping charges. Formula: % of Gross Revenue from Shipping = (Shipping Revenue ÷ Gross Revenue) × 100.</td></tr><tr><td>Net Revenue</td><td>Actual earnings after discounts and refunds, plus shipping revenue. Unlike Shopify Net Sales, Bloom includes shipping revenue and excludes taxes. Formula: Net Revenue = Gross Revenue - Discounts - Refunds + Shipping Revenue.</td></tr><tr><td>Taxes</td><td>Total tax collected on orders (Sales Tax, GST, VAT, Municipal or County Tax). Not merchant revenue; remitted to the government.</td></tr><tr><td>Duties and Tips</td><td>Total import duties, customs fees, or tips collected. Not product revenue; collected on the merchant's behalf or for staff.</td></tr><tr><td>Total Revenue</td><td>Complete amount collected from customers: Net Revenue plus taxes, duties, and tips. Matches Shopify's Total Sales. Formula: Total Revenue = Net Revenue + Taxes + Duties &#x26; Tips.</td></tr></tbody></table>

<figure><img src="/files/FG6JYqgM6k5SeK6D1AIW" alt="Bloom&#x27;s Revenue Metrics"><figcaption></figcaption></figure>

<figure><img src="/files/rOUAWq8MeQOGOIBdEjO9" alt="Bloom&#x27;s Revenue Metrics"><figcaption></figcaption></figure>

**Cost Metrics**

<table data-header-hidden data-search="false"><thead><tr><th></th><th></th></tr></thead><tbody><tr><td>Metric</td><td>Definition</td></tr><tr><td>COGS (Cost of Goods Sold)</td><td>Total direct cost of producing the products sold in the period. Includes only costs directly tied to making or acquiring products; excludes indirect costs like marketing or salaries.</td></tr><tr><td>Product Cost</td><td>Pulled automatically from Shopify if entered in product settings, or uploaded in bulk in Cost Settings. Directly affects margin and profitability metrics.</td></tr><tr><td>Other COGS</td><td>Additional direct costs of selling products not included in the product cost itself. Uploaded in Cost Settings.</td></tr><tr><td>Order Fulfillment Costs</td><td>Total cost to process, package, ship, and deliver orders, covering every step from preparing the product to handling returns and processing payments.</td></tr><tr><td>Shipping Cost</td><td>Actual shipping cost retrieved automatically from Shopify Shipping or external shipping partners. </td></tr><tr><td>Handling Cost</td><td>Cost of preparing items for shipment (picking, packing, packaging materials, general handling). Estimated per product or order type in Cost Settings.</td></tr><tr><td>Return Handling Cost</td><td>Cost of processing returns (receiving, inspecting, repackaging, restocking, or disposal). Estimated in Cost Settings.</td></tr><tr><td>Tariff Cost</td><td>Import or export duties on cross-border goods, varying by country and product classification. Estimated rates set in Cost Settings.</td></tr><tr><td>Payment Processing Fees (Gateway Cost)</td><td>Transaction fees retrieved automatically for Shopify Payments. Other gateways (PayPal, Stripe, regional processors) and their estimated fees can be added manually.</td></tr></tbody></table>

<figure><img src="/files/AhXKReOHGuV0PisGzIy0" alt="Bloom&#x27;s Cost Metrics"><figcaption></figcaption></figure>

<figure><img src="/files/d5uuyNo4IJ7qXZgdL2OS" alt="Bloom&#x27;s Cost Metrics"><figcaption></figcaption></figure>

**Marketing Spend**

<table data-header-hidden data-search="false"><thead><tr><th></th><th></th></tr></thead><tbody><tr><td>Metric</td><td>Definition</td></tr><tr><td>Marketing Spend</td><td>Total spend across all paid channels to attract visitors, drive conversions, and grow revenue. A foundational input for CAC, MPR, and aMPR. Includes Meta Ads, Google Ads, Snapchat Ads, TikTok Ads, Pinterest Ads, Amazon Ads, and Non-Ad Marketing Costs.</td></tr><tr><td>Meta Ads</td><td>Ad spend attributed to Meta.</td></tr><tr><td>Google Ads</td><td>Ad spend attributed to Google.</td></tr><tr><td>TikTok Ads</td><td>Ad spend attributed to TikTok.</td></tr><tr><td>Snapchat Ads</td><td>Ad spend attributed to Snapchat.</td></tr><tr><td>Pinterest Ads</td><td>Ad spend attributed to Pinterest.</td></tr><tr><td>Reddit Ads</td><td>Ad spend attributed to Reddit</td></tr><tr><td>Partners Ads</td><td>The amount spent on affiliate advertising through Partner-ads (commission plus network fee).</td></tr><tr><td>Non-Ad Marketing Cost</td><td>Custom non-ad marketing costs added under Operating Expenses (such as influencer partnerships, promotional materials, sponsorships, and affiliate payouts).</td></tr></tbody></table>

<figure><img src="/files/kTBJLGJtdaZulst4Qre3" alt="Profit Table Bloom"><figcaption></figcaption></figure>

**Contribution Margin Metrics**

<table data-header-hidden data-search="false"><thead><tr><th></th><th></th></tr></thead><tbody><tr><td>Metric</td><td>Definition</td></tr><tr><td>CM1 (Gross Profit)</td><td>Amount earned after covering the direct cost of products sold. A higher CM1 indicates stronger product-level profitability. Formula: Gross Profit (CM1) = Total Revenue - Product Cost.</td></tr><tr><td>Gross Margin (CM1) %</td><td>Percentage of each revenue dollar retained after product cost. Around 75% or higher is generally strong. Formula: Gross Margin (CM1%) = Gross Profit ÷ Total Revenue.</td></tr><tr><td>CM2</td><td>Profit after product cost and all order fulfillment costs (shipping, handling, tariffs, returns processing, Amazon fees, payment processing fees). Formula: CM2 = Total Revenue - Product Cost - Order Fulfillment Costs.</td></tr><tr><td>CM2 %</td><td>Share of Net Revenue remaining after product and fulfillment costs. 60% or more is typically healthy. Formula: CM2% = CM2 ÷ Total Revenue.</td></tr><tr><td>CM3</td><td>Profit after product cost, fulfillment, and marketing spend. A clear indicator of operational profitability before fixed overheads. Formula: CM3 = Total Revenue - Product Cost - Order Fulfillment Costs - Marketing Spend.</td></tr><tr><td>CM3 %</td><td>CM3 as a share of Net Revenue. A healthy range is generally 30% to 45%. Formula: CM3% = CM3 ÷ Total Revenue.</td></tr></tbody></table>

<figure><img src="/files/2ymXiER3mp7ZqPnFEeCE" alt="Contribution Margin 1"><figcaption></figcaption></figure>

<figure><img src="/files/WIJAqdKj19IDYAa7mLkA" alt="Contribution Margin 2"><figcaption></figcaption></figure>

<figure><img src="/files/ASIn3mRJuzGqMhkVMgE4" alt="Contribution Margin 3"><figcaption></figcaption></figure>

**Marketing Performance Metrics**

<table data-header-hidden data-search="false"><thead><tr><th></th><th></th></tr></thead><tbody><tr><td>Metric</td><td>Definition</td></tr><tr><td>MER (Marketing Efficiency Ratio)</td><td>How efficiently marketing spend turns into revenue. Higher is better. Formula: MER = Net Revenue ÷ Total Marketing Spend.</td></tr><tr><td>aMER (Acquisition MER)</td><td>How efficiently marketing spend brings in new-customer revenue. Formula: aMER = Net Revenue from New Customers ÷ Total Marketing Spend.</td></tr><tr><td>New Customers</td><td>Total customers who made their first purchase during the period.</td></tr><tr><td>Gross profit BEROAS </td><td>Minimum return the store needs on ad spending to cover product costs and avoid a loss. A BEROAS of 1 signifies that ad expenditure precisely covers product costs. Any BEROAS value greater than 1 indicates profitability.<br>Formula: BEROAS = Total Revenue ÷ profit after fulfillment</td></tr><tr><td>Contribution Margin BEROAS </td><td>Minimum ROAS needed to cover variable costs, including product costs, fulfillment, and marketing spend. It helps measure profitability before fixed operating expenses</td></tr><tr><td>Net profit BEROAS </td><td>Minimum ROAS needed to cover all business costs and break even after accounting for product costs, fulfillment, payment fees, salaries, rent, and operating expenses.</td></tr><tr><td>15 % NP Target ROAS </td><td>ROAS required to achieve a 15% net profit margin. It represents the ad spend to revenue efficiency needed to cover all costs and retain 15% of revenue as profit.</td></tr><tr><td>CAC (Cost per New Customer)</td><td>Average cost to acquire a new customer. Lower is more cost-effective. Formula: CAC = Total Marketing Spend ÷ Number of New Customer Orders.</td></tr><tr><td>MPR (Marketing Profit Ratio)</td><td>Profit generated per dollar of marketing spend. Higher is stronger. Formula: MPR = CM2 ÷ Total Marketing Spend.</td></tr><tr><td>aMPR (Acquisition MPR)</td><td>CM2 from new-customer orders generated per dollar of marketing spend. Formula: aMPR = CM2 from New Customer Orders ÷ Total Marketing Spend.</td></tr><tr><td>First-Order Contribution Margin </td><td>Measures the profit generated from new customers. It shows whether revenue from new customers covers your advertising costs and indicates if acquiring new customers is profitable.<br>Formula: Net Revenue of New Customers - COGS + Total Ad Spend.</td></tr><tr><td>First-Order Contribution Margin per New Customer </td><td>Measures the average profit generated per new customer on their first order.This helps you understand how much profit each new customer contributes after accounting for product costs and ad spend, and evaluate the efficiency of your customer acquisition efforts.<br>Formula: First-order Contribution ÷ Number of New Customers.</td></tr><tr><td>% of Sales on Marketing</td><td>Share of Net Revenue reinvested into marketing. Formula: % of Sales on Marketing = Total Marketing Spend ÷ Net Revenue.</td></tr></tbody></table>

<figure><img src="/files/Bocxj2Fb9aEsABH5ZNVR" alt="Bloom&#x27;s Marketing Performance Metrics"><figcaption></figcaption></figure>

<figure><img src="/files/DqaxSqXnDxjBtVWe1K8w" alt="Bloom&#x27;s Marketing Performance Metrics"><figcaption></figcaption></figure>

**Operating Expenses**

| Metric                           | Definition                                                                                                                                                                                                                                                                                                   |
| -------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| Operating Expenses               | Total cost to run the business day to day, both fixed and variable. Components: Salaries, Rent, Maintenance, Amazon Charges, Professional Fees, Interest Payments, Custom Taxes, Other Expenses, Channel Fee. All except Amazon Charges (which sync automatically) can be added or updated in Cost Settings. |
| % of Sales on Operating Expenses | Share of Net Revenue used to cover operating expenses. A lower percentage indicates stronger operational efficiency. Formula: % of Sales on Operating Expenses = Total Operating Expenses ÷ Net Revenue.                                                                                                     |

<figure><img src="/files/4L8nJbdHuZCg5V0Ge5rw" alt="Operating Expenses"><figcaption></figcaption></figure>

**Net Profit Metrics**

<table data-header-hidden data-search="false"><thead><tr><th></th><th></th></tr></thead><tbody><tr><td>Metric</td><td>Definition</td></tr><tr><td>Net Profit</td><td>Final profit after subtracting Operating Expenses from CM3. The clearest indicator of true profitability. Formula: Net Profit = CM3 - Operating Expenses.</td></tr><tr><td>Net Profit Margin (%)</td><td>Share of Net Revenue remaining as profit after all costs. Most ecommerce brands aim for 10% to 20%. Formula: Net Profit Margin (%) = Net Profit ÷ Total Revenue.</td></tr><tr><td>Cost of Goods Sold % </td><td>For e-commerce brands, the ideal range for the cost of goods sold (COGS) as a percentage of Net Revenue is typically between 25% and 35%. This suggests the selling price is three to four times the product's cost.</td></tr><tr><td>Cost to Serve Orders %</td><td>Cost to fulfill orders typically accounts for an average of 10% of Net Revenue for most brands. These fulfillment expenses comprise the combined costs of handling, gateway fees, and shipping..</td></tr><tr><td>Cost to Acquire Customers %</td><td>Share of Total Revenue spent on marketing to acquire customers. Growth brands often near 25%, mature brands under 20%. Formula: Cost to Acquire Customers % = Marketing Spend ÷ Net Revenue.</td></tr><tr><td>Cost to Operate Business %</td><td>Share of Total Revenue spent on overheads (salaries, rent, professional fees, maintenance, platform fees, other). Typically around 15%. Formula: Cost to Operate Business % = Operating Expenses ÷ Net Revenue.</td></tr></tbody></table>

<figure><img src="/files/2YIiC22144tX7SSU0tK8" alt="Net Profit Metrics"><figcaption></figcaption></figure>

### How to Use it

1. Set the date range for the period you want to analyze.
2. Choose the grouping: day, week, or month.
3. Expand any row that has sub-metrics to see its breakdown.
4. Add or upload your cost inputs in Cost Settings so calculations are accurate: product cost, other COGS, handling, return handling, tariffs, payment gateway fees, and operating expenses. Set custom shipping rules in Shipping Settings.
5. Choose your refund reporting mode: keep the default Shopify-style reporting, or switch to the optional Original Order Date mode.
6. Read the Total column for the full-period summary across all metrics.


# Product Profits

Analyze sales, costs, ad spend, ROAS, and profit for each Shopify product and variant in Bloom's Product Profits report

### What is Product Profits?

Product Profits is a Bloom page that gives you a detailed view of product-level performance. It lets you analyze sales, costs, ad spend, ROAS, and profit metrics for each product and its variants, so you can uncover profitability insights, track performance trends, and make informed decisions to optimize your products and marketing.

### How it Works

**Product-Level Profitability**

Bloom provides detailed product-level profitability, helping you understand how much profit each product generates. Analyze product performance, identify your most profitable products, and make informed inventory and pricing decisions.

**Ad tracking for individual products**

Bloom tracks ad spend and ROAS at the product level in two ways:

**Automatic product-level ad spend**&#x20;

If you're running any of the following campaign types, Bloom automatically captures product-level ad spend:

* Google Ads: Performance Max campaigns
* Facebook Ads: Catalogue campaigns and Advantage+ Shopping campaigns

### Data Available

**Product Profits table**

The table shows metrics for each product (and, when enabled, each variant). Customize which columns appear using the column selector in the top-right corner.

<table data-search="false"><thead><tr><th>Column</th><th>Description</th></tr></thead><tbody><tr><td>Product Type</td><td>The product type set in Shopify.</td></tr><tr><td>SKU</td><td>The product SKU.</td></tr><tr><td>Tags</td><td>Product tags from Shopify.</td></tr><tr><td>Status</td><td>The product's status.</td></tr><tr><td>Vendor</td><td>The product’s vendor.</td></tr><tr><td>Units Sold</td><td>Number of units sold in the selected date range.</td></tr><tr><td>Units Refunded</td><td>Number of units refunded in the selected date range.</td></tr><tr><td>Inventory Quantity</td><td>Current inventory quantity.</td></tr><tr><td>Gross Sales</td><td>Gross sales for the product.</td></tr><tr><td>Discounts</td><td>Discounts applied.</td></tr><tr><td>Refunds</td><td>Refund amount.</td></tr><tr><td>Net Sales</td><td>Net sales after discounts and refunds.</td></tr><tr><td>Total Sales</td><td>Total sales for the product.</td></tr><tr><td>Product COGS</td><td>Cost of goods sold for the product.</td></tr><tr><td>Gross Profit</td><td>Profit after product costs.</td></tr><tr><td>Gross Margin %</td><td>Gross profit as a percentage.</td></tr><tr><td>Campaign Link</td><td>Campaign link attached for individual-product ad tracking.</td></tr><tr><td>Ad Spend</td><td>Ad spend attributed to the product.</td></tr><tr><td>Net Profit</td><td>Profit after all tracked costs.</td></tr><tr><td>Product ROAS</td><td>Return on ad spend at the product level.</td></tr><tr><td>Inventory Cost</td><td>Cost value of current inventory.</td></tr><tr><td>Inventory Value</td><td>Retail value of current inventory.</td></tr></tbody></table>

### How to Use it

1. Select the date range you want to analyze at the top of the page.

<figure><img src="/files/VCobo08WbfRZlTya0DtN" alt="Date Range for Product Profits"><figcaption></figcaption></figure>

2. Open the column selector in the top-right corner to choose which metrics appear in the table.

<figure><img src="/files/Dm1SBLFMlcc0SvFeNSPD" alt="Metrics for Product Profits"><figcaption></figcaption></figure>

3. Use the filter icon to filter products by Product Name, Variant Name, Product Type, SKU, Tags, Vendor, POS Name or Status.

<figure><img src="/files/kQ0BWqDm1k9E9pJ5LPA6" alt="Filter Icons in Product Profits"><figcaption></figcaption></figure>

4. Enable View by product variants to break performance down to the variant level.

<figure><img src="/files/RJX2pDcSM12C2I5cAki8" alt="View By Variant Name in Product Profits"><figcaption></figcaption></figure>

5. Enable the Ad Spend and Product ROAS columns to see spend and returns for each product.

<figure><img src="/files/5CWAPxTV7wyIijqtH75J" alt="Product Returns in Product Profits"><figcaption></figcaption></figure>

6. Export the Product Profits table in Excel, CSV, or PDF format for reporting.

<figure><img src="/files/KV0JRneUh2dqb4UdtHro" alt="Exporting Format in Product Profits"><figcaption></figcaption></figure>


# Order Profits

See profit, margins, and costs for every Shopify order in Bloom, and update shipping, handling, gateway, and COGS costs with a simple export and import.

### What is Order Profits?

**Order Profits** is a page in Bloom that breaks down financial performance at the order level. It combines sales, taxes, costs, and margins for every order in one table, so you can see how each order contributes to overall profitability and how operational expenses like shipping, gateway fees, and handling affect the business.

### Data available

**Order Profits table**\
\
The Order Profits table lists every order in the selected date range with its sales, costs, and margin metrics. Use the column selector to choose which of the following metrics appear.

| Metric                   | Description                                                                                                       |
| ------------------------ | ----------------------------------------------------------------------------------------------------------------- |
| Items                    | Displays the products included in the order.                                                                      |
| Order Source             | Shows where the order originated, such as Online Store, POS, or other sales channels.                             |
| Gross Sales              | The total value of items sold before discounts and refunds.                                                       |
| Discounts                | The total discounts applied to the order.                                                                         |
| Refunds                  | The total amount refunded for the order.                                                                          |
| Net Sales                | Revenue remaining after discounts and refunds.                                                                    |
| Tax                      | The total tax collected for the order.                                                                            |
| Tags                     | Displays any Shopify order tags assigned to the order.                                                            |
| Total Sales              | The final order value, including taxes and shipping charges where applicable.                                     |
| Shopify Gross Profit     | Shows the profit after subtracting product costs from net sales using Shopify's cost data.                        |
| Shopify Gross Margin %   | Indicates the percentage of revenue retained as gross profit based on Shopify costs.                              |
| Contribution Margin 1    | Profit remaining after deducting product costs and transaction fees.                                              |
| Contribution Margin 1 %  | The percentage of revenue retained as Contribution Margin 1.                                                      |
| Profit after fulfillment | Profit remaining after deducting product, fulfillment, and transaction costs.                                     |
| Contribution Margin 2 %  | The percentage of revenue retained after fulfillment costs.                                                       |
| Gateway Cost             | Payment processing fees charged by your payment gateway.                                                          |
| Shipping Cost            | The shipping cost incurred to fulfill the order.                                                                  |
| Product Variant COGS     | The cost of goods sold for the specific product variants in the order.                                            |
| Handling Cost            | Additional handling or packaging costs assigned to the order.                                                     |
| Channel Fee              | Fees charged by the sales channel or marketplace for the order.                                                   |
| Tariff Cost              | Import duties or tariff costs allocated to the order.                                                             |
| Customization Cost       | Tracks additional costs for customized orders based on order tags or line item properties that you've configured. |
| Disputes                 | Costs resulting from payment disputes or chargebacks associated with the order.                                   |

### How to use it&#xD;

**How to View Order Profits?**

* Select the date range you want to analyze. Bloom updates the table to show all orders within that period.
* Use the column selector to choose which metrics appear in the table.

<figure><img src="/files/ijxxVG1v35PEakhCzv6T" alt=""><figcaption></figcaption></figure>

* Use the **Order Name** dropdown to search for a specific order by its Order Name to locate and analyze individual orders
* To update order-level Shipping Cost, Gateway Cost, Handling Cost, or COGS, export the table in Excel, CSV, or PDF format.

<figure><img src="/files/1kVRmHnmd9vzAUx9WsVl" alt=""><figcaption></figcaption></figure>

* In the exported file, edit only the Shipping Cost, Gateway Cost, and Handling Cost columns.            Editing other columns can cause import errors.
* Upload the edited file back into Bloom.
* Click Recalculate. Bloom applies the updated costs and refreshes the Order Profits page.

<figure><img src="/files/HSc4pLGrHNxGIizvLmsu" alt=""><figcaption></figcaption></figure>

* To view data based on Order Tags or Order Source, use the filters in Order Profits.

<figure><img src="/files/bOAS9eriIIW1KdqTUnJE" alt="" width="536"><figcaption></figcaption></figure>

* To exclude certain orders from your reports and profit calculations, go to App Settings, then Order Settings, and configure your order exclusion rules.<br>


# Country Profits

See how every country performs before and after ad spend, with each market segmented so you know where to scale, fix, or invest.

### What is Country Profits?

Country Profits turns your global sales data into clear, actionable insights. It automatically segments every country by performance, surfaces the risks and opportunities that matter most, and shows exactly where revenue is being won or lost, both before and after marketing spend. Use it whenever you are deciding where to double down, where to fix costs, or where to test new campaigns.

The page is organized into two views: Country Gross Profit and Country Profit Margin.

### Country Gross Profit

Absolute profit figures by country before marketing costs. Use this to understand which markets are operationally efficient and where costs are hurting margin.

\[[Country Gross Profit](https://docs.bloomanalytics.io/country-profits/country-gross-profits)]

\- Identify your strongest revenue and profit contributors at a glance.

\- See which operational costs (shipping, product, handling, or transaction fees) are eating into margin the most.

\- Use the Revenue vs Profit chart to spot the gap between what a country earns and what it keeps.

\- Use the Where Is The Money Going? chart to pinpoint the biggest margin killer per country.

\- Countries are segmented into Scale, Fix Costs, Invest, Review, and Watch so you always know where to focus.

\- Compare all markets side by side in the Country Details Table and export for reporting.

### &#x20;Country Profit Margin

Builds on gross profit by layering in ad spend, revealing how each country truly performs once marketing costs are accounted for.

\[[Country Profit Margin](https://docs.bloomanalytics.io/country-profits/country-profit-after-adspend)]

\- See how profitability shifts once ad spend is factored in.

\- Identify markets where ads are working and where they are losing money.

\- Track ROAS and CPA by country to measure true marketing efficiency.

\- Use the Profit vs Ad Spend chart to distinguish between a marketing and an operational problem.

\- Spot high-margin countries with zero ad spend as your next growth opportunity.

\- Countries are segmented into Scale, Hold, Fix or Cut, and Test Ads so you always know where to act.

\- Compare CM3, ROAS, and CPA across all markets in the Country Details Table.

<br>


# Country Gross Profits

See absolute profit by country in Bloom, auto-segment markets by revenue and margin, and pinpoint exactly where each market's revenue is going.

### What is Country Gross Profit?

Country Gross Profit focuses on absolute profit figures by country, helping you identify which markets contribute the most (and least) to your bottom line in real currency terms, before any marketing costs.&#x20;

On top of the raw profit figures, Bloom automatically segments each country by revenue and margin performance, surfaces plain language insights, and breaks down where every market's revenue is going, so you can prioritize where to protect, fix, or invest.

### How it Works

Bloom automatically sorts countries into five segments based on revenue and margin performance, so you can quickly prioritize where to focus. Each segment card shows the number of countries in that category and the combined profit (CM2) generated for the selected period.

<figure><img src="/files/42l1Wwe9DYEZOAkZSTMR" alt="Shopify Country Gross Profit"><figcaption></figcaption></figure>

**Scale**

High revenue and high margin. These are your strongest markets, so the priority is protecting them and growing volume further without letting margin slip.

**Fix Costs**

High revenue but low margin. Sales are strong, but costs are cutting into profit, so the priority is trimming costs before chasing more revenue.

**Invest**

Good margin but low volume. Each order is profitable, but the market isn't scaled yet, making it a strong candidate for marketing or growth investment.

**Review**

Losing money per order. Every sale currently costs the business money, so it needs an urgent investigation into pricing, shipping, or product costs.

**Watch**

Low volume with okay margin. Not a current priority, but worth monitoring for signs of improvement or decline.

**How segments are calculated**

Set a margin percentage in the top-right corner of the page. Bloom uses this as the benchmark to classify countries into segments: any country falling below the threshold will not qualify. See How to use it to set the threshold.

<figure><img src="/files/K3y2ThjkAKfDcT5iZoHx" alt="Shopify country profit settings"><figcaption></figcaption></figure>

⚙️  Margin Threshold: Set a margin percentage in the top-right corner of the page. Bloom uses this as the benchmark to classify countries into segments - any country falling below the threshold will not qualify.

### Data available

**Insights**

Bloom automatically surfaces plain language insights so you can spot risks and opportunities at a glance, without digging through the table.

<figure><img src="/files/2d415oiaZdWFHYMi8Bsa" alt="shopify country profit insights"><figcaption></figcaption></figure>

| Insight                    | What it flags                                                                                                                                        |
| -------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------- |
| Revenue concentration risk | Flags when a few countries account for a disproportionately large share of total revenue, highlighting over-dependence on a small number of markets. |
| Margin decline             | Identifies countries where profit margin has dropped significantly vs. the previous period, prompting investigation into cost or pricing changes.    |
| Fast growth                | Highlights countries with strong revenue growth vs. the previous period, helping you recognize emerging markets early.                               |
| Best profit per order      | Identifies the country generating the highest average profit per order, showing where your most efficient sales are coming from.                     |

**Revenue vs Profit by Country**

<figure><img src="/files/RYX2scXZxJlQ55Dgy4fA" alt="shopify country profit vs revenue"><figcaption></figcaption></figure>

A side-by-side bar chart comparing Revenue and Profit (CM2) per country, ordered from highest to lowest revenue. The gap between the two bars shows how much revenue is being absorbed by costs; a wider gap signals a country where costs are significantly impacting profitability.

**Where Is The Money Going?**

<figure><img src="/files/z2m3RztUF9OKNWqWflRE" alt="cost leaks in country level profit analysis"><figcaption></figcaption></figure>

A stacked bar chart breaking each country's revenue into profit and individual cost layers. Toggle layers on and off to understand exactly where margin is being lost.

| Layer        | What it shows                                                                      |
| ------------ | ---------------------------------------------------------------------------------- |
| Profit (CM2) | Revenue retained after all variable costs (Product Cost & Order Fulfillment Costs) |
| Product Cost | Cost of goods sold for that country.                                               |
| Shipping     | Shipping costs attributed to orders from that country.                             |
| Handling     | Handling costs attributed to orders from that country.                             |
| Transaction  | Payment gateway and processing fees.                                               |
| Tariffs      | Duties or tariff costs on orders from that country.                                |

**Country Details Table**

<figure><img src="/files/5Lp9EbfkA7OnWVNCROhZ" alt="shopify country profit report"><figcaption></figcaption></figure>

A detailed, sortable table listing every country alongside its segment status and key performance metrics.

<table data-header-hidden data-search="false"><thead><tr><th></th><th></th></tr></thead><tbody><tr><td>Column</td><td>Description</td></tr><tr><td>Country</td><td>The country name.</td></tr><tr><td>Status</td><td>Segment classification: Scale, Fix Costs, Invest, Review, or Watch.</td></tr><tr><td>Suggested Action</td><td>Auto-generated recommendation based on performance (e.g, 'protect margin,' 'test paid channels').</td></tr><tr><td>Orders</td><td>Total orders placed from that country in the selected period.</td></tr><tr><td>Net Revenue</td><td>Revenue after discounts and refunds, with period-on-period change.</td></tr><tr><td>CM2</td><td>Contribution Margin 2, absolute profit after variable costs (Product Cost &#x26; Order Fulfillment Costs).</td></tr><tr><td>CM2 %</td><td>CM2 as a percentage of net revenue, with period-on-period change.</td></tr><tr><td>Revenue Share</td><td>This country's share of total revenue.</td></tr><tr><td>Shipping Impact</td><td>Percentage of revenue consumed by shipping costs.</td></tr><tr><td>Profit/Order</td><td>Average CM2 profit generated per order for that country.</td></tr><tr><td>Top Cost Driver</td><td>The single largest cost category eating the margin, with its percentage share of revenue.</td></tr></tbody></table>

### How to use it

<figure><img src="/files/P7zhzvVNvxqTKKQaWWhQ" alt="shopify country profit report export"><figcaption></figcaption></figure>

1. Set the margin threshold using the percentage control in the top-right corner of the page. Bloom uses this benchmark to classify countries into segments.
2. Review the segment cards to see how many countries fall into each segment and the combined CM2 for the selected period.
3. Read the Insights callouts to spot revenue concentration risk, margin decline, fast growth, and your best profit per order at a glance.
4. Compare the Revenue vs Profit by Country chart to see how much revenue each market is losing to costs.
5. Open the Where Is The Money Going? chart and toggle layers on and off to pinpoint exactly where margin is being lost.
6. Sort and scan the Country Details Table by segment status and metrics, using the Suggested Action column to decide next steps for each market.
7. Export the Country Details Table using the export icon in the top right corner for offline reporting or sharing with your team.


# Country Profit After Adspend

See how each country performs after advertising costs in Bloom, segment markets by CM3, and decide where to scale, hold, or cut ad spend.

### What is Country Profit Margin?

Country Profit Margin builds on the gross profit picture by factoring in advertising spend, showing how each country performs after accounting for marketing costs. On top of profit after ads (CM3), Bloom segments countries by post-ad profitability, flags ROAS and profitability trends, and breaks down the full cost picture including marketing, so you can decide where to scale ad spend and where to pull back. It extends the \[\[link: Country Gross Profit]] view, which shows profit before marketing costs.

<figure><img src="/files/A02QGkFnKNnCMFFrJ3u0" alt="Shopify country profit after adspend"><figcaption></figcaption></figure>

### How it Works

Bloom groups countries into four segments based on profitability after ad spend. Each segment card shows the number of countries in that category and their combined profit (CM3, profit after ad spend) or loss.

**Scale**

Healthy margin after ads. These countries profitably absorb marketing investment, so this is where you increase the budget.

**Hold**

Thin margin after ads. Profit exists but is slim once ad costs are included, so monitor before increasing spend.

**Fix or Cut**

Losing money on ads. Ad spend exceeds the profit generated, so reduce spend or fix underlying cost issues immediately.

**Test Ads**

Profitable with no ad spend. Unit economics work without marketing, making these good candidates for a pilot ad campaign.

**How segments are calculated**

Set a CM3 Threshold percentage in the top-right corner of the page. Bloom uses this as a benchmark to classify countries into segments: any country falling below the threshold will not qualify. See How to use it to set the threshold.

<figure><img src="/files/WSzJ91AKg5LAomUj2s7I" alt="shopify country profit target"><figcaption></figcaption></figure>

### Data Available

**Insights**

Bloom automatically generates insights based on ad performance and profitability trends<br>

<figure><img src="/files/usQiavuqYjfceg3COgE5" alt="shopify country profit insights"><figcaption></figcaption></figure>

| Insight        | What it flags                                                                                                                                      |
| -------------- | -------------------------------------------------------------------------------------------------------------------------------------------------- |
| Fix or cut     | Flags countries where ad spend is causing a net loss; recommends reducing spend or addressing cost issues immediately.                             |
| Test ads       | Identifies countries profitable with no or minimal ad spend, suggesting they are ready for a pilot campaign.                                       |
| ROAS declining | Highlights countries where Return on Ad Spend has dropped significantly vs. the previous period; ads are becoming less efficient.                  |
| Improving      | Calls out countries where profit after ads (CM3) has increased significantly vs. the previous period; markets responding well to current strategy. |

**Profit vs Ad Spend by Country**

A bubble chart comparing each country's profit before ads (CM2, x-axis) against profit after ads (CM3, y-axis). Bubble size reflects the relative scale of the country's business. Countries positioned higher and farther to the right have both strong underlying economies and effective marketing. Countries near or below the zero line on the y-axis have their profits consumed by ad spend, helping you pinpoint whether underperformance is a marketing or an operational issue.

<figure><img src="/files/fAXWBOaecCed8ZNmzVGe" alt="shopify profit vs adspend by country"><figcaption></figcaption></figure>

**Where Is The Money Going?**

A stacked bar chart breaking down each country's revenue into three components, showing the full cost picture including marketing spend.

<figure><img src="/files/gKGOdwKxQSRjIG2QUCzh" alt="shopify country profit against cost and adspend"><figcaption></figcaption></figure>

| Layer                  | What it shows                                                                               |
| ---------------------- | ------------------------------------------------------------------------------------------- |
| Overall Cost           | All operational costs (product, shipping, handling, transaction, tariffs) before marketing. |
| Ad Spend               | Total advertising spend attributed to that country.                                         |
| Profit After Ads (CM3) | What remains as profit after both operational costs and ad spend.                           |

**Country Details Table**

A detailed table listing every country with its segment status and ad-related performance metrics.

<figure><img src="/files/S4Xlamgpa9bhtDJ4NBx0" alt="shopify contribution margin by country"><figcaption></figcaption></figure>

#### How to Use it

1. Set the CM3 Threshold using the percentage control in the top-right corner of the page. Bloom uses this benchmark to classify countries into segments.
2. Review the segment cards to see how many countries fall into each segment and their combined CM3 profit or loss.
3. Read the Insights callouts to spot ad spend driving losses, markets ready to test ads, declining ROAS, and countries improving after ads.
4. Use the Profit vs Ad Spend by Country bubble chart to see whether a country's underperformance is a marketing or an operational issue.
5. Open the Where Is The Money Going? chart to see the full cost picture, including ad spend, for each market.
6. Sort and scan the Country Details Table by segment status, CM3, ROAS, and CPA, using the Suggested Action column to decide next steps for each market.
7. Export the Country Details Table using the export icon in the top-right corner for offline reporting or sharing with your team.

<figure><img src="/files/C3FMYJbvtHIwfF31Iw6Q" alt="export shopify country roas and contribution margin"><figcaption></figcaption></figure>

<br>

\
\ <br>

<br>


# Product Insights

Analyze sales, costs, ad spend, ROAS, and profit for each Shopify product and variant in Bloom's Product Profits report

### What is Product Insights?

[Product Insights](https://app.bloomanalytics.io/intelligence/product) is your central hub for understanding product performance and identifying where to focus your attention. It brings together key product intelligence in one place, helping you quickly identify opportunities, risks, and trends across your catalogue without digging through multiple reports. Whether you're looking for your best-performing products, evaluating advertising performance, or tracking product momentum, Product Insights helps you make faster, more informed decisions.

Product Insights automatically analyses product sales, profitability, advertising performance, and momentum trends to classify products into meaningful categories. Rather than manually reviewing large volumes of product data, it continuously evaluates performance using configurable business rules and thresholds, so you can tailor classifications to match your business model and priorities.

<figure><img src="/files/lkLlKiHdmZNzBjlkuht7" alt="Product Level Insights"><figcaption></figcaption></figure>

#### **Sections**

Product Insights is organised into three sections that work together to provide a complete view of product performance.

**Product Performance**

Product Performance identifies products based on sales, profitability, discounts, and refund behaviour, helping you spot products that are performing well, have growth potential, or may require attention.

<figure><img src="/files/1fCSJlCk8HGXxs0oekLw" alt="Product Level Performance"><figcaption></figcaption></figure>

**Product Ads**

Product Ads evaluates how effectively advertising spend contributes to product profitability, making it easier to assess advertising effectiveness and identify opportunities to improve performance.

<figure><img src="/files/9djxY0eF8nZbaYG4PwCg" alt="Product Level Ads Insights"><figcaption></figcaption></figure>

**Product Momentum**

Product Momentum tracks changes in product performance over time, helping you identify emerging trends, accelerating products, and those showing signs of slowing down.

<figure><img src="/files/UDbUcsQe88LcvKTvATaA" alt="Product Momentum "><figcaption></figcaption></figure>

### Key Features

| Feature                | What it does                                                                                             |
| ---------------------- | -------------------------------------------------------------------------------------------------------- |
| Product Categorisation | Organises products into meaningful groups so you can identify patterns and opportunities.                |
| Product-Level Analysis | Provides detailed visibility into individual product performance for more informed decisions.            |
| Trend Monitoring       | Tracks changes over time so you can identify growth opportunities and respond to potential issues early. |
| Prioritised Insights   | Surfaces the recommendations likely to have the greatest impact on your business.                        |
| Search and Filtering   | Makes it easy to find specific products and explore the data most relevant to you.                       |
| Export Functionality   | Lets you download and share data for further analysis, reporting, or team collaboration.                 |

By combining performance, ads, and momentum perspectives, Product Insights helps you make faster, more informed decisions about inventory, pricing, advertising, and growth opportunities.


# Product Performance

Product Performance categorises your Shopify catalogue by sales, margin, refunds, and discounts so you can spot stars, risks, and hidden opportunities.

### What is Product Performance?

Product Performance helps you understand how each product contributes to your business by organising your catalogue into easy-to-understand categories. It provides a clear view of products that are performing well, products with growth potential, and products that may require attention.

Rather than reviewing individual reports for every product, Product Performance gives you a quick and accessible overview of your catalogue's overall health, so you can identify where your strongest opportunities are and where improvements may be needed.

### How it Works

Each product is automatically assigned to a category based on its overall performance. These categories are designed to help you quickly understand the role each product plays within your business, using thresholds you configure in Performance Settings.

**Profit Star**

Products that are performing exceptionally well. They contribute strongly to your business and are often among your most valuable products. Worth monitoring closely and may present opportunities for further growth.

**Revenue Trap**

Products that generate strong sales activity but may benefit from further review. While they contribute to overall revenue, there may be opportunities to improve their overall business impact.

**Margin Bleeder**

Products that may require additional attention. Often active contributors to the catalogue but with factors affecting their overall performance. Reviewing these products can uncover opportunities for optimisation.

**Hidden Gem**

Products that show strong potential but may not yet be receiving significant attention. They can represent valuable growth opportunities and may benefit from increased visibility or promotion.

**Underperformer**

Products that are currently contributing less than expected. They remain active within the catalogue but may benefit from further analysis to determine whether improvements can be made.

**Dead Weight**

Products that currently contribute limited value compared to the rest of the catalogue. May present opportunities for review, consolidation, or strategic changes.

<figure><img src="/files/ukGE1sISTgo1qEzbliMd" alt="Product Performance Working"><figcaption></figcaption></figure>

**How products are classified**

Bloom classifies each product using four thresholds you set in Performance Settings: a sales benchmark, a healthy margin floor, a refund rate limit, and a discount limit. Products exceeding the refund rate limit, for example, may be classified as Margin Bleeders. See "How to use it" below to configure these thresholds.

<figure><img src="/files/Qmrcstqp0bQzpZrtOxbZ" alt="Performance Settings in Product Insights"><figcaption></figcaption></figure>

### Data Available

The Product Performance dashboard provides several tools to help you explore and understand your product catalogue.

**Insights**

Product Performance includes Intel, prioritised by potential impact so you can focus on the most important actions first.

<figure><img src="/files/tMFc3Smzfn0RkfMn75DG" alt="Insights"><figcaption></figcaption></figure>

| Priority | What it flags                                                                                       |
| -------- | --------------------------------------------------------------------------------------------------- |
| Critical | Products or trends that may require immediate attention.                                            |
| High     | Meaningful opportunities or risks that are worth reviewing soon.                                    |
| Low      | Additional observations and optimisation opportunities that may help improve performance over time. |

**Summary cards**

A quick snapshot of how products are distributed across categories, so you can understand the overall makeup of your catalogue without reviewing individual products.

**Product Distribution**

A visual breakdown of products across categories, making it easy to identify patterns and trends within your catalogue.

<figure><img src="/files/hnYYmBb47esji3PCWwJt" alt="Product Distribution in Product Performance"><figcaption></figcaption></figure>

**Gross Profit by Category**

Compares how different groups of products contribute to overall business performance, showing where value is concentrated across your catalogue.

<figure><img src="/files/SfBkI0kkZML49YRKufxD" alt="Gross profit By Category"><figcaption></figcaption></figure>

**Revenue x Margin x Volume**

A bubble chart showing the relationship between revenue, gross margin, and sales volume across your products.

<figure><img src="/files/Ed7wiyZa5SMW5HVUIGgT" alt="Revenue vs Margin vs Volume"><figcaption></figcaption></figure>

| Axis            | What it shows |
| --------------- | ------------- |
| Horizontal axis | Gross Revenue |
| Vertical axis   | Gross Margin  |
| Bubble size     | Units Sold    |

**Volume vs Profit**

A scatter plot comparing units sold against gross profit for individual products. Helps you identify which products are contributing the most profit relative to their sales volume, and highlights products that may be selling well but generating limited profit.

<figure><img src="/files/pFvWPLE2LPHrpCnLqjUY" alt="Volume vs Profit in Product Performance"><figcaption></figcaption></figure>

**Hide Outliers**

A toggle that temporarily excludes extreme values from visualisations, making charts easier to interpret by reducing the impact of unusually large or small products on the overall view.

**Product Table**

A detailed view of individual products and their associated metrics. Use the table to review products, compare performance, search for specific items, and apply filters to focus on the information most relevant to you.

<figure><img src="/files/iQCGIIabOe1PDtNwOLX9" alt="Product Table"><figcaption></figcaption></figure>

### How to Use it

1\. Open Product Performance from Product Insights.

2\. Configure Performance Settings to match your business:

<figure><img src="/files/H0AEmdLdFqc0HrTPy95e" alt="Performance Settings"><figcaption></figcaption></figure>

&#x20;  \- Sales Threshold: set the sales benchmark used to evaluate product demand. You can choose a historical metric, such as the 90-day daily average per product, to define what qualifies as strong sales.

&#x20;  \- Healthy Margin Threshold: set the minimum gross margin required for a product to be considered healthy and profitable. Your recent average margin is displayed to help guide selection.

&#x20;  \- Refund Rate Limit: set the maximum acceptable refund rate. Products exceeding this may be classified as Margin Bleeders.

&#x20;  \- Discount Limit: set the maximum discount percentage before a product is flagged for excessive discounting.

<figure><img src="/files/OxerDX5MqhV5WCElekKx" alt="Performance Settings in Product Performance"><figcaption></figcaption></figure>

3\. Review the Intel panel first, starting with Critical, then High, then Low priority items.

<figure><img src="/files/JFsfYMUZjfg8nW4JXY6w" alt="Insights in Product Performance"><figcaption></figcaption></figure>

4\. Use the summary cards and Product Distribution chart to check the overall makeup of your catalogue.

5\. Explore Gross Profit by Category, Revenue x Margin x Volume, and Volume vs Profit to spot patterns. Toggle Hide Outliers if extreme values are distorting the view.

<figure><img src="/files/I8CI0dyPEegoY0aZgTfP" alt="Exploring Product Distribution, Product Category"><figcaption></figcaption></figure>

6\. Open the Product Table to inspect individual products. Search, filter, and sort to focus on the categories or metrics most relevant to you.

<figure><img src="/files/ooJey5ouZOIrNDM12Xmr" alt="Filter Option in Product Table"><figcaption></figcaption></figure>

7\. Export the Product Table in Excel (.xlsx) or CSV (.csv) for further analysis, reporting, or team collaboration.

<figure><img src="/files/AmtWmVEMc3rVewezTpbG" alt="Exporting Product Table"><figcaption></figcaption></figure>

<br>


# Product Ads

Product Ads gives you a product-level view of Shopify advertising performance, so you can spot profitable ads, budget drains, and hidden opportunities.

### What are Product Ads?

Product Ads helps you understand how advertising is impacting your products. Instead of looking at campaign-level metrics alone, it provides a product-focused view of your advertising performance, making it easier to see where your marketing efforts are creating value and where opportunities for improvement may exist.

By bringing product and advertising data together, Product Ads helps you evaluate the effectiveness of your advertising strategy at a more meaningful level, so you can make more informed decisions about where to invest, optimize, or reassess your advertising efforts.

### How it Works

Each product is automatically assigned to a category based on its advertising performance. These categories are designed to help you quickly understand how advertising is contributing to the success of your products, using thresholds you configure in Ad Settings.

**Profit Maker**

Products that are performing strongly from an advertising perspective. Often among the most successful at turning advertising efforts into business results, and may represent opportunities for further growth and investment.

**Margin Trap**

Products that may appear to be performing well at first glance but could benefit from closer review. Highlight opportunities to better understand the relationship between advertising performance and overall business outcomes.

**Budget Drain**

Products that may require optimisation or reassessment. Indicate areas where advertising performance could be improved, and reviewing them can help allocate resources more effectively.

**Money Pit**

Products that require additional investigation before further investment. May benefit from a review of advertising strategy, creative assets, targeting, or overall product positioning.

**Hidden Gem**

Products that show strong potential but may not currently receive significant advertising attention. Can represent valuable growth opportunities and may benefit from increased visibility.

**Dead Weight**

Products that currently contribute limited value from an advertising perspective. Worth reviewing to determine whether changes can improve performance or whether resources could be allocated elsewhere.

<figure><img src="/files/GRqOu555g8g5NYaBwvWA" alt="Product Ads Categories"><figcaption></figcaption></figure>

**How products are classified**

Bloom classifies each product using thresholds you set in Ad Settings: a Target ROAS that defines effective advertising performance, and a Hidden Gem Margin Floor that ensures Hidden Gem candidates are both profitable and have strong advertising potential. See "How to use it" below to configure these thresholds.

<figure><img src="/files/RVQjCcLQUiyAk4sC1LgU" alt="Ad settings in Product Ads"><figcaption></figcaption></figure>

### Data Available

The Product Ads dashboard provides several tools to help you better understand advertising outcomes across your product catalogue.

**Insights**

Product Ads includes Intel, prioritised to help you focus on the actions most likely to have an impact.

<figure><img src="/files/ZxPCyQiRH38JBMILSaZ6" alt="Insights"><figcaption></figcaption></figure>

| Priority | What it flags                                                                                   |
| -------- | ----------------------------------------------------------------------------------------------- |
| Critical | Products or trends that may require immediate review.                                           |
| High     | Important opportunities or risks that should be evaluated soon.                                 |
| Low      | Additional observations and optimisation opportunities that may support long-term improvements. |

**Summary cards**

A quick overview of how products are distributed across advertising categories, so you can immediately understand the overall health and composition of your advertising efforts.

**Ad Distribution**

A visual breakdown of products across categories, making it easy to identify patterns and trends within your advertising performance.

<figure><img src="/files/XGv4C6KBRkagTxIxGnuj" alt="Ad Distribution"><figcaption></figcaption></figure>

**Ad Spend by Category**

Shows how advertising activity is distributed across different groups of products, providing additional context when evaluating performance and identifying opportunities.

<figure><img src="/files/jnA7YmJ6LDUBv8SX5nDL" alt="Ad Spend by Category"><figcaption></figcaption></figure>

**Ad Spend vs Contribution Margin**

A bubble chart comparing advertising spend against contribution margin for individual products. Helps you evaluate whether advertising investment is generating meaningful business outcomes and identify products that may require optimisation.

| Axis            | What it shows       |
| --------------- | ------------------- |
| Horizontal axis | Ad Spend            |
| Vertical axis   | Contribution Margin |
| Bubble size     | Units Sold          |

<figure><img src="/files/P3dz4a5Mu1lkZ3jv4r1B" alt="" width="563"><figcaption></figcaption></figure>

**Category Visibility Controls**

Filters that let you include or exclude specific advertising categories from visualisations, so you can focus on the product groups most relevant to your analysis.

**Hide Outliers**

A toggle that temporarily removes unusually large or small values from visualisations, improving chart readability and making overall advertising performance trends easier to identify.

**Product Ads Table**

A detailed view of individual products and their advertising-related metrics. Search for specific products, apply filters, compare performance, and explore data in greater detail.

<figure><img src="/files/cdlD04MmSdDRamAsr6NI" alt=""><figcaption></figcaption></figure>

### How to Use it

1\. Open Product Ads from Product Insights.

<figure><img src="/files/yNBzHzKwNnXjDOmgzLgI" alt="Product Ads"><figcaption></figcaption></figure>

2\. Configure Ad Settings to align with your advertising strategy:

&#x20;  \- Target ROAS: set the minimum Return on Ad Spend required for a product to meet your advertising goals. Products that meet or exceed this threshold are considered to be performing effectively.

&#x20;  \- Hidden Gem Margin Floor: set the minimum gross margin required for a product to qualify as a Hidden Gem, ensuring candidates are both profitable and have strong advertising potential.

<figure><img src="/files/V9EeLUXUxfBWk83NbZAF" alt="Ad Settings in Product Ads"><figcaption></figcaption></figure>

3\. Review the Intel panel first, starting with Critical, then High, then Low priority items.

<figure><img src="/files/vpTrgjB2QlaiMPIrlc9e" alt="Insights in Product Ads"><figcaption></figcaption></figure>

4\. Use the summary cards and Ad Distribution chart to check the overall makeup of your advertising performance.

<figure><img src="/files/vArl8p5yLURCJNFJJnIA" alt=""><figcaption></figcaption></figure>

5\. Explore Ad Spend by Category and Ad Spend vs Contribution Margin to spot patterns. Use Category Visibility Controls to focus on specific groups, and toggle Hide Outliers if extreme values are distorting the view.

<figure><img src="/files/wbhbY7pA0yFIQabV2ENf" alt="Exploring Ad Spend Vs Contribution Margin"><figcaption></figcaption></figure>

6\. Open the Product Ads Table to inspect individual products. Search, filter, and sort to focus on the categories or metrics most relevant to you.


# Product Momentum

Product Momentum tracks how your Shopify products trend over time, so you can spot accelerating winners and declining products before it's too late. (147 chars)

### What is Product Momentum?

Product Momentum helps you understand how your products are changing over time. While Product Performance provides a snapshot of how products are performing today, Product Momentum focuses on trends and movement, helping you identify which products are gaining traction, maintaining stability, or showing signs of decline.

By tracking changes in product activity over time, Product Momentum helps you stay ahead of emerging opportunities and potential risks. Instead of waiting for performance changes to become obvious, you can identify trends early and take action with greater confidence.

### How it Works

Each product is automatically assigned to a momentum category based on recent performance trends. These categories help you quickly understand how products are changing over time, using thresholds you configure in Momentum Settings.

**On Fire**

Products showing strong positive momentum and among the fastest-growing in your catalogue. May present opportunities for increased visibility, inventory planning, or further investment.

**In Freefall**

Products experiencing a noticeable decline in performance. May require closer review to understand potential causes and identify opportunities for improvement.

**Margin Squeeze**

Products showing signs that performance trends may require additional attention. Monitoring them can help uncover opportunities to improve overall outcomes.

**Profit Engine**

Products delivering positive business outcomes and showing encouraging performance trends. Can provide valuable insights into what is working well across your catalogue.

**Losing Steam**

Products showing signs of slowing performance compared to previous periods. Not necessarily a cause for concern, but may benefit from additional monitoring.

**Holding Steady**

Products maintain relatively consistent performance over time. Provide stability within the catalogue and may require less immediate attention.

<figure><img src="/files/kq9lLy82eeGY0skNPszl" alt="Product Ads"><figcaption></figcaption></figure>

**How momentum is calculated**

Bloom evaluates momentum using three settings you configure: a Threshold Percentage that defines what counts as a meaningful change, a Minimum Units Floor that excludes low-volume products from calculations, and a Lookback Period (7, 14, 30, 60, or 90 days) that sets the comparison window. See "How to use it" below to configure these thresholds.

<figure><img src="/files/TIZjIBjKOBjF3vkoSD9T" alt="Momentum Settings"><figcaption></figcaption></figure>

### Data Available

The Product Momentum dashboard provides several tools to help you understand performance trends across your products.

**Insights**

Product Momentum includes Intel, prioritised to help you focus on the trends that may have the greatest impact on your business.

<figure><img src="/files/3s9oSPkTYKfM53AjN9Dp" alt="Insights"><figcaption></figcaption></figure>

| Priority | What it flags                                                                                   |
| -------- | ----------------------------------------------------------------------------------------------- |
| Critical | Significant changes that may require immediate attention.                                       |
| High     | Important opportunities or risks that are worth reviewing soon.                                 |
| Low      | Additional observations and trend-based recommendations that may help support future decisions. |

**Summary cards**

A quick overview of how products are distributed across momentum categories, so you can quickly understand the overall direction of your catalogue.

**Product Distribution**

A visual breakdown of products across momentum categories, helping you identify patterns and trends at a glance.

<figure><img src="/files/iD9wJqHZ7Kku6W3N6uEH" alt="Product Distribution"><figcaption></figcaption></figure>

**Revenue by Label**

Shows how revenue is distributed across different momentum groups, providing additional context when evaluating product trends.

<figure><img src="/files/f9uYWWyPlZ6ybKgikUb7" alt="Revenue By Label"><figcaption></figcaption></figure>

**Revenue vs Profit Change**

A scatter plot comparing percentage changes in revenue and profit over the selected lookback period. Helps identify products experiencing sustainable growth, declining performance, or cases where revenue and profitability move in opposite directions.

<figure><img src="/files/sWiW8icG2wS89ZK0xUjq" alt="Revenue Vs profit Change"><figcaption></figcaption></figure>

**Revenue vs Units Change**

A scatter plot comparing revenue growth against changes in units sold. Helps determine whether revenue changes are primarily driven by increased sales volume, pricing changes, or a combination of both.

| Axis            | What it shows                                  |
| --------------- | ---------------------------------------------- |
| Horizontal axis | Revenue Change (%) Over the Lookback Period    |
| Vertical axis   | Units Sold Change (%) Over the Lookback Period |

<figure><img src="/files/QyrZh5HTCP4jdc7BFKsN" alt="Revenue vs Unit Change and Hide Outliers"><figcaption></figcaption></figure>

**Hide Outliers**

A toggle that temporarily excludes products with unusually large performance changes from visualisations, improving readability and making broader trends easier to analyse.

**Product Momentum Table**

A detailed view of individual products and their recent performance trends. Search for products, apply filters, compare changes over time, and explore trend-related metrics at a more detailed level.

<figure><img src="/files/BOjvWSSmFCJzNTll26es" alt="Product Momentum Table"><figcaption></figcaption></figure>

### How to Use it

1\. Open Product Momentum from Product Insights.

<figure><img src="/files/14POyAC2zmHgVvQdxYTS" alt="Product Momentum"><figcaption></figcaption></figure>

2\. Configure Momentum Settings to match your analysis needs:

&#x20;  \- Threshold Percentage: set the minimum percentage change required for a product to be considered as having meaningful momentum. Lower thresholds capture smaller movements, while higher thresholds focus on more significant changes.

&#x20;  \- Minimum Units Floor: set the sales volume floor to exclude low-volume products from momentum calculations, preventing small sample sizes from producing misleading trends.

&#x20;  \- Lookback Period: choose the timeframe used for momentum analysis (7, 14, 30, 60, or 90 days). Comparing different periods helps identify both short-term and long-term trends.

<figure><img src="/files/W4mukDQtC5f3APiKiEWN" alt="Momentum Settings"><figcaption></figcaption></figure>

3\. Review the Intel panel first, starting with Critical, then High, then Low priority items.

<figure><img src="/files/hsVUbjbksOe8j2cf1PGG" alt="Intel Panel"><figcaption></figcaption></figure>

4\. Use the summary cards and Product Distribution chart to check the overall direction of your catalogue.

<figure><img src="/files/ob3Aj9GQ2q9ldXKhuLdR" alt=""><figcaption></figcaption></figure>

5\. Explore Revenue by Label, Revenue vs Profit Change, and Revenue vs Units Change to spot patterns. Toggle Hide Outliers if extreme values are distorting the view.

6\. Open the Product Momentum Table to inspect individual products. Search, filter, and sort to focus on the categories or metrics most relevant to you.

<figure><img src="/files/jJSzoDTJqxk6KOTJd4CL" alt="Product table"><figcaption></figcaption></figure>

7\. Export the Product Momentum Table in  CSV (.csv) for further analysis, reporting, or team collaboration.

<figure><img src="/files/uEyZB3Y0RsIfUCOdAeq4" alt="Exporting Momentum Table"><figcaption></figcaption></figure>

<br>


# Cost Setting


# Order Handling

Bloom allows you to add handling costs in two ways:

### 1. Cost per Order

A flat cost is applied once to every order, regardless of the number of items.

<figure><img src="/files/rMJ48Rv1CH6ViF2dAFK5" alt=""><figcaption></figcaption></figure>

### 2. Cost per Item

A cost applied to each individual item within an order.

<figure><img src="/files/TR0nubmBoaQyPJXcqYda" alt=""><figcaption></figcaption></figure>

You can use either one or both. If both are provided, the total handling cost is cumulative.

**Example**

* Cost per order = 10
* Cost per item = 5
* The order contains 3 items

**Total handling cost = 10 + (3 × 5) = 25**

#### Important

After entering the cost values, make sure to **Save**, and then click **Recalculate Handling Cost** (top-right corner) for the updated cost to reflect in the Profit & Loss table.


# Return Cost

Under the Return Cost tab, you can configure how much return-related expenses Bloom should include in your cost calculations. This section is divided into two parts:

### 1. Return Shipping Cost

This defines how much you (as the store) are covering for shipping when a product is returned.

You can choose from:

* **Fixed rate per return**  \
  Enter a flat amount you pay for each returned order.

<figure><img src="/files/wIIp0mYqWBnxJz6Dkjgq" alt=""><figcaption></figcaption></figure>

* **Percentage of order value**  \
  Bloom will calculate the return shipping cost as a % of the order’s value

<figure><img src="/files/QRXmX69gAVp6AvpTSO55" alt=""><figcaption></figcaption></figure>

* **Same as outbound shipping cost**\
  Return shipping will match whatever the customer paid for outbound shipping.
* **None**\
  Select this if you do not cover any return shipping costs.

After selecting an option, click Save.

### 2. Return Handling Cost

This defines how much you spend on processing returned items (e.g., inspection, repackaging, labor).

You can choose:

* **Handling cost per returned item**  \
  A fixed cost for each item that gets returned.

<figure><img src="/files/P7xuSNHuP8Xb9CTzxjfi" alt=""><figcaption></figcaption></figure>

* **Same as outbound handling cost**\
  Uses the same handling cost you configured in the Order Handling section.
* **None**\
  Select this if you do not incur or want to track handling costs for returns.

Click Save after selecting your preferred option.

### Recalculate to Apply Costs

Once you finish setting up both Return Shipping Cost and Return Handling Cost, you must click the **Recalculate Return Cost button** (top right).


# Operating Expense

The [**Operating Expense** ](https://app.bloomanalytics.io/custom_expense)page in Bloom allows you to record and track business expenses that are not available in Shopify, helping you calculate your **true and accurate profits**. By adding these costs, Bloom ensures your profitability analysis reflects the full cost of running your business—not just product and ad-related expenses.

You can add and manage expenses across the following categories:

* [Interest payments](#interest-payments)
* [Rent and lease costs](#rent-and-lease-costs)
* [Other COGS](#other-cogs)
* [Tax payments](#tax-payments)
* [Marketing (non-ad costs)](#marketing-non-a-d-costs)
* [Maintenance costs](#maintenance-costs)
* [Other business expenses](#other-business-expenses)
* [Employee costs](#employee-costs)
* [Professional services fees](#professional-service-fees)

All operating expenses added here are factored into your overall profit calculations, giving you a complete view of your business performance.

### Interest payments&#x20;

The **Interest Payments** section lets you track interest expenses from loans, credit lines, or credit cards used for your business. Bloom provides flexible options for specifying the payment schedule, including **daily, weekly, monthly, yearly, or one-time payments**, making it easy to reflect your actual financial obligations.

After entering all details, click **Save** to record the expense. The interest payments will then be included in Bloom’s profit calculations, giving you a more accurate view of your business's profitability.

<figure><img src="/files/vxqJRJR0UegsX9uxbbmp" alt=""><figcaption></figcaption></figure>

### Rent and Lease Costs

The **Rent & Lease Costs** section allows you to track expenses for office, warehouse, or other rental spaces. Bloom provides flexibility in specifying the payment schedule, including **daily, weekly, monthly, yearly, or one-time payments**, making it easy to reflect your actual financial obligations.

After entering all details, click **Save** to record the expense. These rent and lease costs will be included in Bloom’s profit calculations, giving you a more accurate view of your business's profitability.

<figure><img src="/files/I7AhTAkE6Ynqos9hdJqN" alt=""><figcaption></figcaption></figure>

### Other COGS

The **Other COGS** section allows you to record additional costs of goods sold that are not captured by Shopify, such as packaging, shipping supplies, or custom components. You can specify the **amount** and **payment frequency** (daily, weekly, monthly, yearly, or one-time). Click **Save** to include these expenses in Bloom’s profit calculations, giving you a more accurate picture of your true profitability.

<figure><img src="/files/oInh02B82oAzDBVXgrz6" alt=""><figcaption></figcaption></figure>

### Tax Payments

The **Tax Payments** section lets you track business-related taxes, including sales tax, income tax, or other regulatory payments. Specify the **amount** and **payment schedule** (daily, weekly, monthly, yearly, or one-time), then click **Save**. Bloom will factor these expenses into your profit analysis for a complete view of your financial performance.

<figure><img src="/files/Z0X3cMaTLfjFWsx6h46d" alt=""><figcaption></figcaption></figure>

### Marketing (Non-Ad Costs)

The **Marketing (Non-Ad Costs)** section is for tracking marketing expenses that are not related to ads, such as influencer payments, promotional materials, or email campaigns. Enter the **expense amount** and **frequency** (daily, weekly, monthly, yearly, or one-time), then click **Save**. These costs will be included in Bloom’s profit calculations to reflect your total marketing spend.

<figure><img src="/files/qcJfajIdugrEbjmVkFAE" alt=""><figcaption></figcaption></figure>

### Maintenance Costs

The **Maintenance Costs** section allows you to log expenses for equipment, software, or facility maintenance. Enter the **cost** and **payment schedule** (daily, weekly, monthly, yearly, or one-time), then click **Save**. Bloom incorporates these expenses into profit calculations to provide a complete view of operational costs.

<figure><img src="/files/P4fCUNraITtWMGCvRBJy" alt=""><figcaption></figcaption></figure>

### Other Business Expenses

The **Other Business Expenses** section is for miscellaneous costs not captured in other categories. Specify the **amount** and **payment schedule** (daily, weekly, monthly, yearly, or one-time), then click **Save**. These expenses are factored into Bloom’s profit calculations for a holistic view of your business costs.

<figure><img src="/files/skcCvN7v5yIEj65iwb2W" alt=""><figcaption></figcaption></figure>

### Employee Costs

The **Employee Costs** section lets you track wages, salaries, benefits, or bonuses paid to employees. Enter the **amount** and **payment schedule** (daily, weekly, monthly, yearly, or one-time), then click **Save**. These costs will be included in Bloom’s profit calculations to accurately reflect labor expenses.

<figure><img src="/files/13qDHqp97oVSQF6MFWrQ" alt=""><figcaption></figcaption></figure>

### Professional Service Fees

The **Professional Services Fees** section allows you to track payments for accountants, consultants, legal advisors, or other professional services. Specify the **amount** and **payment schedule** (daily, weekly, monthly, yearly, or one-time), then click **Save**. Bloom includes these expenses in profit calculations for a complete picture of your business spending.

<figure><img src="/files/dRfLIeGVhw6gKt0mIwbK" alt=""><figcaption></figcaption></figure>


# Channel

Channel [Cost Settings](https://app.bloomanalytics.io/commission_rate) allow you to track **commission or platform fees** for each sales channel you use (for example: Online Store, POS, Draft Orders, etc.).

For each channel, you can define a **percentage-based cost**. Bloom will calculate this percentage on the **order value** and treat it as a cost in your profit calculations.

#### **How it works**

* Each channel has its own commission rate (%).
* When an order is placed through a channel, Bloom applies the configured percentage as a **channel cost**.
* This cost is automatically reflected in the **Profit & Loss table**.

**Example**

* Channel: **Online Store**
* Channel fee: **5%**
* Order value: **₹1,000**

**Channel cost = 5% of 1,000 = ₹50**

#### **Updating Channel Costs**

* Click the **edit (✏️) icon** next to a channel to update the percentage.
* After saving your changes, click **Recalculate Commission Rate** (top-right corner) to apply the updated costs across your reports.

<figure><img src="/files/eummPlvvrwHDsdjsSqh4" alt=""><figcaption></figcaption></figure>

#### **Notes**

* Channel costs are applied **only to orders from the selected channel**.
* You can set different percentages for different channels.
* Make sure to recalculate after any change to ensure accurate profit metrics.


# Tariffs

### **Tariff Cost**

Tariff Cost helps you account for **country-specific import or tariff charges** based on the **order value**. These costs are applied as a percentage and included in your profit calculations.

#### **How it works**

* Tariff costs are set **per country**.
* A **minimum order value** determines when the tariff applies.
* If an order meets the minimum value, Bloom applies the configured **tariff percentage** as a cost.

#### **Setting up Tariff Cost**

1. Go to **Cost Settings → Tariff Cost**.
2. Click **Add Tariff Rate**, select the country, set the minimum order value and tariff rate, then **Save**.

<figure><img src="/files/tqEgc66bFM3ZBx9B5OoO" alt=""><figcaption></figcaption></figure>

#### **Example**

* Country: **United States**
* Minimum order value: **₹100,000**
* Tariff rate: **18%**
* Order value: **₹120,000**

**Tariff cost = 18% of 120,000 = ₹21,600**

#### **Notes**

* Tariff costs apply only when the order meets the minimum order value.
* Different tariff rates can be configured for different countries.
* Always recalculate after making changes for accurate reporting.


# Gateway

Gateway Cost Settings help you track **payment gateway transaction fees** and include them in your profit calculations.

#### **How it works**

Bloom handles **Shopify gateway costs automatically**, so in most cases you don’t need to add anything manually.

* **Shopify Payments**\
  If an end customer checks out using **Shopify Payments**, Bloom automatically pulls:
  * Percentage-based fee
  * Fixed fee (in USD)\
    These are applied based on the merchant’s **Shopify plan**.
* **Other Payment Gateways**\
  If an end customer uses a **non-Shopify payment gateway**, Shopify applies an **alternative percentage fee** based on the merchant’s Shopify plan. Bloom automatically accounts for this as well.

#### **Adding Other Gateway Costs**

For payment gateways that are **not covered by Shopify** (for example, PayPal or custom gateways), you can add the costs manually.

1. Click **Add Gateway Cost**.
2. Enter:
   * **Percentage fee**
   * **Fixed fee**
   * **External fee** (if applicable)
3. Click **Save**.

<figure><img src="/files/hHqNkwM0istFGs3uY8zr" alt=""><figcaption></figcaption></figure>

#### **Notes**

* Shopify Payments fees are **automatically synced** and do not require manual input.
* Manual gateway costs apply **only to the selected gateway**.
* Always recalculate after making changes to ensure accurate profit metrics.


# Add Custom Revenue

Add custom revenue to Bloom by connecting a Google Sheet. Bloom creates the sheet, syncs entries by date, and updates your dashboard automatically

### What is Custom Revenue?

Custom Revenue is a setting on Bloom's Revenue page that lets you bring revenue from outside your store (ads, offline sales, wholesale, and other sources) into your Bloom dashboard through a Google Sheet. Bloom creates one dedicated Google Sheet for you in Google Drive, and syncs every revenue entry you add to that sheet, matched by date, into your dashboard. It is for merchants who want a single view of total revenue in Bloom without uploading files or maintaining a custom integration.

### How it works

Bloom generates one Google Sheet in your connected Drive with a pre-built template. You don’t have to upload or select your own sheet. Each row you add represents one revenue entry, and Bloom reads those rows in sync.

#### The dedicated Google Sheet

Bloom creates and owns the sheet structure. You can rename the file, but the column headers must stay unchanged, because Bloom uses them to read and sync your data correctly.

#### Sync by date

Bloom syncs revenue entries into your dashboard based on the date in each row. Rows missing a date, gross revenue, or net revenue value may not sync.

#### Status tracking

Each row has a status field that Bloom updates automatically once the row has been successfully synced. You do not edit this column manually.

### Data available

Google Sheet template columns

| **Column** | **Field Name** | **Description**                                                                         |
| ---------- | -------------- | --------------------------------------------------------------------------------------- |
| A          | gross\_revenue | Required. The gross revenue amount for the entry                                        |
| B          | net\_revenue   | Required. The net revenue amount for the entry.                                         |
| C          | date           | Required. The date for the revenue entry, in yyyy-mm-dd format.                         |
| D          | description    | Required. A short description of the revenue source                                     |
| E          | platform       | Required. The platform or source of the revenue (for example: ads, offline, wholesale)  |
| F          | status         | System-generated. Shows whether the row has been synced to Bloom. Do not edit manually. |

### How to use it

* &#x20;Go to App settings > Custom Revenue.
* Click **Link Google Sheet** to connect your Google Drive. This authorizes Bloom to create one Google Sheet in your Drive.

<figure><img src="/files/seNxyRyuK8ZRsfHmD0NE" alt=""><figcaption></figcaption></figure>

* Enter a file name when prompted, then click \*\*Save and edit\*\* to open the sheet.

<figure><img src="/files/UBkSKTEutap7jiGjGzUX" alt=""><figcaption></figcaption></figure>

* Add your revenue entries as rows in the generated template. Fill in gross\_revenue, net\_revenue, date, description, and platform for each row. Leave the status column alone.

<figure><img src="/files/DvyX4UsuadmeVo4KK00V" alt=""><figcaption></figcaption></figure>

* Return to the Revenue page in Bloom and click \*\*Edit Google Sheet\*\*. A pop-up will appear showing your connected sheet.
* &#x20;Click \*\*Sync data\*\*. Bloom will read all rows in the sheet and update your dashboard. The sync usually completes within a few minutes.

<figure><img src="/files/uC5IdVPUozXJxhbdr0fL" alt=""><figcaption></figcaption></figure>

* Confirm each row's sync status in the status column of the Google Sheet, which Bloom updates automatically once the data has been synced.

<figure><img src="/files/katPKRJMBapFUGQQfhrQ" alt=""><figcaption></figcaption></figure>

* To add more revenue later, add new rows in the Google Sheet and click **Sync data** in Bloom whenever you want the latest entries to appear on your dashboard.

#### Notes & Tips

* Do not change column headers in the Google Sheet. Bloom uses them to read and sync your data correctly.
* Make sure every row has a date and gross and net revenue values. Incomplete rows may not sync.
* The status column is updated automatically by Bloom. Avoid editing it manually.


# Profit Analysis

This page details the deep profit analysis process of Bloom, providing accurate net profit value for data-driven business decisions.

The module consists of two main components:

1. Profit Metrics
2. Profit Map

***

### Benefits of the Profit Analysis Module

* **Comprehensive Insights**: Understand every aspect of your store's profitability.
* **Data-Driven Decisions**: Make informed choices based on detailed financial data.
* **Efficiency**: Save time by automating profit tracking and analysis.
* **Customization**: Tailor the views and reports to suit your specific business needs.

***

### Tips for Maximizing the Profit Analysis Module

* **Ensure Data Accuracy**: Regularly update or automate your COGS, shipping costs, and other expenses.
* **Integrate Marketing Channels**: Connect all your advertising platforms for complete ad spend data.
* **Utilize Filters**: Use filtering options to focus on areas of interest or concern.
* **Regular Reviews**: Schedule periodic checks of your profit metrics and maps to stay on top of your financial performance.
* **Leverage Support Resources**: Consult the knowledge base or contact support for assistance with advanced features.

***

### Get Started

1. **Connect Integrations**: Link your advertising platforms, shipping solutions, and other integrations.
2. **Input Cost Data**: Enter or import your COGS, shipping costs, taxes, and any custom expenses.
3. **Navigate to Profit Analysis**: Access the module from the side bar to start exploring your profit metrics and profit map.

***

### Need Help?

If you have any questions or need assistance with the Profit Analysis module:

* **Explore Our Knowledge Base**: Access articles and tutorials for detailed guidance.
* **Contact Support**: Reach out to our support team via email or live chat.

***


# Profit Metrics

The Profit Metrics section provides both a Dashboard View and a Tabular View of your profit metrics, similar to an income statement.

### Dashboard View of Profit Metrics

The dashboard view offers a visual representation of your key profit metrics, giving you an instant overview of your store's financial health.

**Features:**

* **Visual Summaries**: Interactive charts and graphs display your revenue, costs, and profits.
* **Key Performance Indicators (KPIs)**: Monitor essential KPIs such as Total Revenue, COGS, Gross Profit, Operating Expenses, and Net Profit.
* **Customizable Date Ranges**: Analyze data over specific periods to identify trends and patterns.
* **Comparison Tools**: Compare current performance against previous periods.

**How to Use:**

1. **Access the Dashboard**: Navigate to the **Profit Analysis** module from the sidebar and select **Profit Metrics**.
2. **Select Date Range**: Use the date picker to choose the time frame you want to analyze.
3. **Review KPIs**: Examine the key metrics displayed.
4. **Drill-Down & Analyze Charts**: Work through the interactive charts for detailed insights into each metric.

### Tabular View of Profit Metrics

The tabular view presents your profit metrics in a detailed table format, similar to an income statement, providing a granular look at your financial data.

**Features:**

* **Income Statement Format**: View revenues, expenses, and profits in a structured table.
* **Detailed Line Items**: Break down costs into categories like COGS, shipping, taxes, and fees.
* **Export Options**: Download the table as a CSV or Excel file for offline analysis.
* **Drill-Down Capability**: Click on any line item to see underlying details.

**How to Use:**

1. **Switch to Tabular View**: In the **Profit Metrics** section, select the **View in Table Format** option.
2. **Select Date Range**: Use the date picker to set the period for your income statement.
3. **Review Line Items**: Examine each revenue and expense category for detailed insights.
4. **Drill Down**: Click on specific line items to view details.
5. **Export Data**: Use the **Export** button to download the table for further analysis.


# Profit Map

The Profit Map is an interactive tree graph visualization that illustrates what drives your net profit across multiple tiers.

#### Features:

* **Interactive Visualization**: Explore a tree graph that dynamically represents profit drivers.
* **Multiple Tiers**: View net profit influences across various levels, such as products, categories, and channels.
* **Click for expand**: View the cards for quick stats; click to expand and reveal deeper layers.

#### How to Use:

1. **Access the Profit Map**: Navigate to the **Profit Analysis** module and select **Profit Map**.
2. **Explore the Tree Graph**: The main node represents your total net profit, with branches indicating different profit drivers.
3. **Interact with Nodes**:
   * **View Cards**: See summary metrics like revenue, costs, and profit margins.
   * **Click to Expand**: Dive deeper into specific areas, such as a particular product line or marketing channel.
4. **Identify Key Drivers**:
   * Use the color coding numbers to spot high-performing or underperforming areas.
   * Focus on cards with negative impacts to address potential issues.
5. **Customize Your View**:
   * Apply filters to focus on specific time periods.
   * Adjust the hierarchy levels to simplify or expand the visualization.


# Cohort Analysis

Bloom's Cohort Analysis groups Shopify customers by first purchase date to reveal retention, repeat purchase trends, and lifetime value over time.

### What is Cohort Analysis?

Cohort Analysis in Bloom groups your Shopify customers into cohorts based on when they first purchased, then tracks how each cohort behaves over time. A cohort is a group of customers created based on shared criteria, and Bloom supports both industry-standard and custom cohorts. It is for merchants who want to understand customer lifetime value, retention, and repeat purchase behavior, so they can decide how much to spend on acquisition, measure campaign effectiveness, and identify opportunities for strategy changes and market expansion.

### &#x20;How it works

Bloom builds cohorts from your Shopify order data and lets you view each cohort through one of four analysis metrics. Each metric answers a different question about customer behavior, and you can switch between them from a dropdown.

**Accumulated Sales per Customer**

Tracks the total revenue generated on average by a customer within a cohort over the monitored period. Useful for gauging the revenue each customer contributes over time.

<figure><img src="/files/S2R8YIiHUKAzOQgdKZlq" alt=""><figcaption></figcaption></figure>

**Customers**

Counts the individuals from each cohort who have made repeat purchases over time. Focused on retention and new customer gains, so you can see how well you are maintaining and growing your customer base.

<figure><img src="/files/ECePoFYOd1NeIK36pPHF" alt=""><figcaption></figcaption></figure>

**Cohort Sales**

Shows how cumulative sales volume of each cohort increases with time. Reveals purchasing trends and behavior across cohorts, useful for shaping strategies to target them.

<figure><img src="/files/MVEkwQ5b9palEMtb6yGC" alt=""><figcaption></figcaption></figure>

**Cohort Transactions**

Details the number of transactions attributed to each cohort during the monitored period. Sheds light on engagement levels and purchase frequency.

**How customer value over time is calculated**

For a single cohort, Bloom shows the average value of customers in that cohort at each period after their first order. The formula is:

(Total first order sales + total additional sales from the cohort in the same month) / total customers in the cohort.

For example, the May 2023 cohort had an average first order value of $104, and three months later that average had grown to $211.

### &#x20;Data available

The Cohort Analysis report renders as a table. Each row is one cohort, and columns show how that cohort behaves over time.

#### &#x20;Single cohort report columns

| Column                       | Description                                                                                                                                                    |
| ---------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Cohort                       | The first cell in each row. Identifies the cohort under analysis (for example, customers whose first order was in May 2023).                                   |
| New Customers                | The total number of customers in the cohort who made their first purchase in the cohort period.                                                                |
| First Order                  | The average value a new customer brings to the cohort. Calculated by dividing total sales from the first order by the total number of customers in the cohort. |
| Evolution columns (numbered) | The columns titled with numbers represent repeat purchases made by cohort customers during the monitored period. Used to estimate customer value over time.    |

#### Multi-cohort comparison

Read down individual columns of the table to compare cohorts against each other and see how behavior shifts.

| Comparison                            | What it shows                                                                                                                                                                         |
| ------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| First order values across cohorts     | Insight into first-time buying behavior. For example, the report may show consistent first order values across all cohorts.                                                           |
| Repeat sales over time across cohorts | Trends in retention and engagement. For example, the May 2023 cohort may show higher repeat sales in following months than later cohorts, indicating a decreasing repeat sales trend. |

### How to use it

* Navigate to the Cohort Analysis section of the app.
* Set your date range in the \*\*Date Range\*\* field. The default is the past six months. Choose a predefined range or specify a custom one. Use shorter durations for businesses with rapidly changing customer dynamics or for evaluating new cohorts, and longer durations for businesses with stable customer behavior.
* Choose a cohort grouping (weekly, monthly, quarterly, or yearly). Use weekly or monthly groupings for emerging trends and dynamic customer bases, and quarterly or yearly for stable long-term patterns.
* Choose the metric to analyze from the dropdown: Accumulated Sales per Customer (default), Customers, Cohort Sales, or Cohort Transactions.
* Read the report by row to analyze a single cohort over time, and by column to compare cohorts against each other.
* Apply the insights to your workflow:

&#x20; \- \*\*Identify valuable customers\*\* by looking for characteristics common to repeat buyers          (marketing channel, geographic location, loyalty program participation), then engage them through cohort comparisons.

&#x20;  \- \*\*Understand customer behavior\*\* by monitoring average customer value over time. Compare with earlier cohorts to identify consistent patterns or variances, and adjust the analysis period for deeper insights.<br>


# Product Analysis

Learn how Bloom helps you answer how compatible your product lineup is with customer demand using various data metrics.

Assessing Shopify profitability is impossible without analyzing the performance of various listed products. Bloom bridges this gap in profit analysis with its comprehensive Product Analysis feature.&#x20;

## **Benefits and Uses**

Bloom’s Product Analysis is created to augment a merchant’s profit analysis. The insights offered by the analysis report helps discover how much product strategy is affecting profitability, and direct actions to optimize product strategy.&#x20;

With Product Analysis, you can:&#x20;

1. **Identify Top Sellers**

Quickly pinpoint the products bringing in the highest revenue and profit. This insight allows for strategic allocation of efforts and resources to maximize sales from those products.

2. **Refining Your Pricing Approach**

Analyze gross profit margins to refine pricing strategies. Boost profitability while staying competitive in the marketplace.

3. **Insights into Product Variants and Types**

Understand how different product types and variants perform. This knowledge supports better inventory management, marketing strategies, and product development.

4. **Trends in Inventory and Sales**

Monitor sales trends and inventory levels to avoid stock shortages and ensure a smooth supply chain. Accurately forecast demand for effective inventory restocking.

5. **Analysis Through Tagging**

Use tags to categorize products for focused analysis. This can uncover trends or patterns linked to specific product attributes.

6. **Data-Driven Decisions and Strategic Planning**

Leverage comprehensive product performance metrics to revamp product strategy for business growth and profitability.

### :key:Key Features and Functions

1. #### Metrics Overview in Product Analysis

The Product Analysis table showcases key metrics for assessing product performance, outlined as follows:

* **Product Title:** Name of the product.
* **Variant Title:** Name of a product’s variant.
* **Price:** Selling price of the product.
* **Product Type:** Category or classification of a product.
* **Tags:** Identifiers categorizing products based on characteristics like seasonality or promotions.
* **Status Quantity:** Available stock quantity of the product.
* **Net Sales:** Total revenue generated from a product's sales.
* **COGS (Cost of Goods Sold):** The cost involved with producing or acquiring the product.
* **Gross Profit:** Revenue after deducting the cost of goods sold.
* **Gross Margin:** Gross profit expressed as a percentage of revenue.

2. #### Interactive Functionality

Customize your product analysis using these options to make Bloom meet your specific requirements.

* **Date Range Selection:** Change the date range to analyze product performance over desired periods.
* **Column Filtering:** Filter each column to focus on specific products or metrics of interest.
* **Column Alteration:** Hide/Show columns as preferred.
* **Export Options:** Export data in Excel, CSV, or PDF file formats for further analysis.

### How to Use Product Analysis

Here is an in-depth look at Bloom’s Product Analysis section to help you navigate and use the feature easily.

1. #### Accessing the Product Analysis Table

Click on “Product Metrics” in the left panel. You can expand this panel if it’s minimized by clicking on the \[insert three parallel line icon] in the top left corner of the app.&#x20;

2. #### Viewing the Metrics

The available product performance metrics are displayed in the table of the Product Analysis main page.&#x20;

3. #### Customizing Items Displayed

Choose the metrics you wish to view using interactive options like date range selector, column filters, data fields, rows per page, and row size. Focus on the exact product performance aspects you want.&#x20;

4. #### Exporting Data Files

Export your data to your desired location in the file format of choice for additional purposes like deeper analysis, backup data storage, file sharing, etc.


# Custom Operating Expense

Add custom operating expenses in Bloom by connecting a Google Sheet, so each expense entry syncs into your dashboard by date.

### What is a Custom Operating Expense?

Custom Operating Expense is a Bloom feature that lets you add your operating expenses through a Google Sheet connected to Bloom. Once connected, Bloom syncs every expense entry you add, based on date, directly into your dashboard. You don’t have to upload or select your own sheet because Bloom generates a dedicated Google Sheet that you rename and start filling in.

<figure><img src="/files/j1z2SYOZzMBzrAmHV7qn" alt="Custom Operating Expense in Bloom"><figcaption></figcaption></figure>

### How it Works

Bloom creates one dedicated Google Sheet in your Google Drive using a default template. Each row you fill in represents one expense entry. When you sync, Bloom reads every row and updates your dashboard with the latest entries, placing each entry by the date you enter. The status column is system-generated: Bloom updates it automatically to show whether a row has synced, so you do not edit it yourself.

### Data Available

The sheet Bloom generates comes with a default template containing the required fields for adding operating expenses. Each row is one expense entry.

<table data-header-hidden data-search="false"><thead><tr><th></th><th></th></tr></thead><tbody><tr><td>Field</td><td>Description</td></tr><tr><td>line_item_name (Column A)</td><td>Required. Enter the name of the operating expense.</td></tr><tr><td>amount (Column B)</td><td>Required. Enter the expense amount. Only numeric values are allowed.</td></tr><tr><td>start_date (Column C)</td><td>Required. Enter the start date for the expense in yyyy-mm-dd format.</td></tr><tr><td>end_date (Column D)</td><td>Required. Enter the end date for the expense in yyyy-mm-dd format.</td></tr><tr><td>category (Column E)</td><td>Required. Choose the expense category from the dropdown list.</td></tr><tr><td>expense_type (Column F)</td><td>Required. Specify whether the expense is a Fixed amount or a percentage.</td></tr><tr><td>reoccurence (Column G)</td><td>Required. Specify how often the expense recurs (for example: weekly, monthly, yearly).</td></tr><tr><td>status (Column H)</td><td><p>System-generated. Automatically updates to show whether the row has synced to Bloom. </p><p>You do not need to edit this column.</p></td></tr></tbody></table>

### How to Use it

1. Go to Settings > Cost Settings > Operating Expense > Add via Google Sheets.

<figure><img src="/files/B1RFxdiTMq1eaLklnLpy" alt="Operating Expense in Bloom"><figcaption></figcaption></figure>

2. In "Add via Google Sheet", click "Link Google Sheet" to connect your Google Drive. This authorizes Bloom to create one Google Sheet in your Drive.

<figure><img src="/files/seNxyRyuK8ZRsfHmD0NE" alt=""><figcaption></figcaption></figure>

3. When prompted, enter a file name for your sheet, then click "Save and edit" to open it. Bloom generates the sheet with the default template.

<figure><img src="/files/UBkSKTEutap7jiGjGzUX" alt="" width="440"><figcaption></figcaption></figure>

4. Add your expense entries to the sheet, one row per expense, using the template fields above. Make sure every row has a date and an expense value, since incomplete rows may not sync. Do not change the column headers, because Bloom uses them to read and sync your data correctly.
5. Return to the Operating Expense page in Bloom and click "Open Sheet". A pop-up appears showing your connected sheet.

<figure><img src="/files/qSgSAlCNHjuqHFNSmUDK" alt="Opening the Google Sheet in Bloom"><figcaption></figcaption></figure>

6. Click "Sync data" to start the sync. Bloom reads all rows and updates your dashboard with the latest entries. The sync usually completes within a few minutes.

<figure><img src="/files/dEAX3hrks3MW1cWPwYjv" alt="Syncing Data in Bloom"><figcaption></figcaption></figure>

7. Confirm each row's sync status in the status column of the Google Sheet. Bloom updates it automatically once the data has synced successfully.

<figure><img src="/files/deOqiPp1rwctwtMuEnUq" alt="Status Column in Bloom"><figcaption></figcaption></figure>

\ <br>


# Bloom Integrations


# AI / MCP Integrations

Connect Bloom to AI assistants like ChatGPT and Claude through MCP to explore profit, KPIs, and campaign performance in natural language.

### Connect ChatGPT With Bloom via MCP

Bloom's MCP integration securely connects ChatGPT to your store's live profitability data. ChatGPT analyzes that data through natural-language questions, so you can investigate performance, compare results, and understand what drives or reduces profit in plain English rather than building reports manually.

#### How to connect&#x20;

Go to the Integrations page in Bloom and click "Connect" on the ChatGPT card. \
You will be directed to your ChatGPT account. Add the Bloom plugin to finish the setup.

**Note:** Only Admins and the account owner can connect to ChatGPT. To give your team access to the ChatGPT MCP, grant them Admin access.

<figure><img src="/files/0Txgse10K7eAnBKvR3B1" alt=""><figcaption></figcaption></figure>

#### How to use it&#x20;

Once connected, type your questions in plain English. ChatGPT reads your live Bloom data and answers directly.

### Connect Claude With Bloom via MCP

Bloom's MCP integration connects Claude to your store's Bloom data. Claude analyzes that data through natural-language questions, so you can explore performance trends, compare metrics, and investigate what is driving or reducing profit in plain English rather than building reports manually.

#### How to connect

Go to the Integrations page in Bloom and click " Open Claude AI ." \
This takes you straight to Claude, where you can connect Bloom via connectors.

**Note:** Only Admins and the account owner can connect to Claude. To give your team access to the Claude MCP, grant them Admin access.

<figure><img src="/files/zJlXUS5fKFkYguIJp4kK" alt=""><figcaption></figcaption></figure>

#### How to use it

Once connected, ask Claude questions in plain English. Claude reads your Bloom data and answers directly, so you can explore performance trends, compare metrics, and investigate what is driving or reducing profit.<br>

<br>


# Marketing Integrations

Connect Bloom to Google, Facebook, TikTok, Amazon, and more to track ad spend and attributed revenue alongside profit for accurate ROAS analysis.

### **Google Ads**

Track ad spend and campaign performance alongside revenue to provide a clear picture of Return on Investment.

#### **How to connect**&#x20;

1. Open Bloom, go to the Integrations page, find Google Ads under the Marketing integrations, and click "Connect."
2. Authorize your Google Ads account, then return to Bloom to finish the setup.

<figure><img src="/files/GXDNJe0DgpsTKsroRsbl" alt=""><figcaption></figcaption></figure>

### **Google Analytics 4**

Analyze detailed visitor metrics for targeted marketing campaigns and user experience set up.

#### **How to connect**&#x20;

1. Open Bloom, go to the Integrations page, find Google Analytics 4 under the Marketing integrations, and click "Connect."
2. Authorize your GA4 account, then return to Bloom to finish the setup.

<figure><img src="/files/3cHDIYKEkjFyoGVRJZSQ" alt=""><figcaption></figcaption></figure>

### **Facebook Ads**

See which Facebook Ad campaigns translated into sales and optimize for better conversions.

#### **How to connect**&#x20;

1. Open Bloom, go to the Integrations page, find Facebook/Meta Ads under the Marketing integrations, and click "Connect."
2. Authorize your Facebook/Meta Ads Account, then return to Bloom to finish the setup

<figure><img src="/files/cYAaAxvWBBSgnqRkClyz" alt=""><figcaption></figcaption></figure>

### **Reddit Ads**

Connect Reddit Ads and track ad spend, campaign performance, and the profitability of sales generated through Reddit.

#### **How to connect**&#x20;

1. Open Bloom, go to the Integrations page, find Reddit Ads under the Marketing integrations, and click "Connect."
2. Authorize your Reddit Ads account, then return to Bloom to finish the setup.

<figure><img src="/files/pPQeua06ebc75xqpxMmR" alt=""><figcaption></figcaption></figure>

### **TikTok Ads**

Understand the impact of your TikTok Ads on sales and growth.

#### **How to connect**&#x20;

1. Open Bloom, go to the Integrations page, find TikTok Ads under the Marketing integrations, and click "Connect."
2. Authorize your Tiktok Ads account, then return to Bloom to finish the setup.

<figure><img src="/files/asA0qkpfmzuPQ3t1fIum" alt=""><figcaption></figcaption></figure>

### **Snapchat Ads**

Gain insights into how your Snapchat Ads influence your store's performance.

#### **How to connect**&#x20;

1. Open Bloom, go to the Integrations page, find Snapchat Ads under the Marketing integrations, and click "Connect."
2. Authorize your Snapchat Ads account, then return to Bloom to finish the setup.

<figure><img src="/files/U8HxtyRh0XAqngtgVrnH" alt=""><figcaption></figcaption></figure>

### **Pinterest Ads**

Connect Pinterest Ads to track ad spend, attributed revenue, and campaign performance.

#### **How to connect**&#x20;

1. Open Bloom, go to the Integrations page, find Pinterest Ads under the Marketing integrations, and click "Connect."
2. Authorize your Pinterest Ads account, then return to Bloom to finish the setup.

<figure><img src="/files/9Vx0PL5A7JiQJTjrqjk0" alt=""><figcaption></figcaption></figure>

### **Amazon**

Connect Amazon to analyse marketplace sales, orders, fees, refunds, and profitability.

#### **How to connect**&#x20;

1. Open Bloom, go to the Integrations page, find Amazon under the Marketing integrations, and click "Connect."
2. Authorize your Amazon account, then return to Bloom to finish the setup.

<figure><img src="/files/Ee2XKnJU1LymQcugmQj7" alt=""><figcaption></figcaption></figure>

### **Amazon Ads**

Connect Amazon Ads to compare advertising spend, attributed sales, and campaign returns.

#### **How to connect**&#x20;

1. Open Bloom, go to the Integrations page, find Amazon Ads under the Marketing integrations, and click "Connect."
2. Authorize your Amazon Ads account, then return to Bloom to finish the setup.

<figure><img src="/files/SPxpqTrxn8exXgjBJxsG" alt=""><figcaption></figcaption></figure>

### **AppLovin**

Connect AppLovin to sync ad spend and campaign performance data with Bloom for accurate ROAS and profitability analysis.

#### **How to connect**&#x20;

1. Open Bloom, go to the Integrations page, find Applovin under the Marketing integrations, and click "Connect."
2. Authorize your Applovin account, then return to Bloom to finish the setup.

<figure><img src="/files/rpIdcMmLVnPH2kQYgmxG" alt=""><figcaption></figcaption></figure>

<br>


# Shipping Integrations

Connect ShipStation, ShipHero, CJdropshipping, and Bob Go to Bloom to factor shipping and fulfilment costs into accurate order and product margins

### **ShipStation**

Sync ShipStation shipping costs with Bloom to calculate accurate order-level profit after fulfilment expenses.

#### How to connect ShipStation

1. Go to Bloom integrations, scroll down to Shipping integrations, and click "Connect" on the ShipStation card.
2. Enter your API key and API secret key and connect the app

<figure><img src="/files/EVAegy6tVAMhTw4DSu77" alt="Connect ShipStation with Bloom"><figcaption></figcaption></figure>

### **Ship Hero**

Bring ShipHero shipping and fulfilment data into Bloom to understand how logistics costs affect product and order margins.

#### How to connect Ship Hero

1. Go to Bloom integrations, scroll down to Shipping integrations, and click "Connect" on the ShipHero card.
2. Connect using your ShipHero login credentials.

<figure><img src="/files/gZl3dvw8cIEG9RbRUWgv" alt="Connect Ship Hero With Bloom"><figcaption></figcaption></figure>

### **CJdropshipping**

Connect CJdropshipping to include product and shipping costs in Bloom and measure the true profitability of dropshipped orders.

#### How to connect CJdropshipping

1. Go to Bloom integrations, scroll down to Shipping integrations, and click "Connect" on the CJdropshipping card.
2. Connect using your email address and API key.

<figure><img src="/files/mp4XC7F5UFx8O8SVms2s" alt="Connect CJdropshipping with bloom"><figcaption></figcaption></figure>

### **Bob Go**

Sync Bob Go delivery costs with Bloom to analyse shipping expenses and profitability across orders, couriers, and regions.

#### How to connect Bob Go

1. Go to Bloom integrations, scroll down to Shipping integrations, and click "Connect" on the Bob Go card.
2. Connect using API key and label name (optional)

<figure><img src="/files/MEP4LpBXz0C2sf7HlVeE" alt="Connect CJdropshipping with Bob Go"><figcaption></figcaption></figure>

<br>

<br>


# Email Marketing Integrations

Connect Klaviyo, Mailchimp, and Omnisend to Bloom to analyze email marketing performance and profit in one place, with UTM-based attribution for Omnisend

### How to connect Klaviyo

1. Open Bloom and go to the Integrations page.
2. Find Klaviyo under the Email Marketing integrations and click "Connect."
3. Follow the prompts to authorize your Klaviyo account.

<figure><img src="/files/MAsN66yBXvqyjjPsrPEd" alt=""><figcaption></figcaption></figure>

Once connected, Bloom syncs the available Klaviyo data and uses it to provide email performance and profit insights.

### How to connect Mailchimp

Connecting Mailchimp is similar to connecting Klaviyo:

1. Open Bloom and go to the Integrations page.
2. Find Mailchimp under the Email Marketing integrations and click "Connect."
3. Follow the prompts to authorize your Mailchimp account.

<figure><img src="/files/oyqOcNZNTlt2ALITUytJ" alt=""><figcaption></figcaption></figure>

Once connected, Bloom syncs the available Mailchimp data and provides email performance and profit insights.

### How to connect Omnisend

1. Open Bloom and go to the Integrations page.
2. Find Omnisend under the Email Marketing integrations and click "Connect."
3. Follow the prompts to authorize your Mailchimp account.

<figure><img src="/files/QsYJh2uzxiozrAfaZS5C" alt=""><figcaption></figcaption></figure>

### Important Note&#x20;

Omnisend does not share campaign-level order data through its API, so connecting your account alone is not enough. Instead, Bloom uses Marketing Attribution to track Omnisend-attributed orders. Complete all three steps below to enable it:

1. **Enable the Bloom App Embed** in your Shopify store to track visitor activity and the customer journey.
2. **Enable the Bloom Checkout Extension** so Bloom can match completed orders to each visitor's journey.
3. **Set up UTM parameters** for your Omnisend campaigns and workflows so Bloom can attribute orders accurately.

Once all three are done, Bloom tracks Omnisend-attributed orders through Marketing Attribution, so you can analyze their performance and profit.

**Bloom Pixel must be enabled and all three steps completed for accurate Omnisend tracking.**


# Subscription Integrations

Connect Bold and Seal Subscription to Bloom to factor recurring revenue into your profit analysis and see how subscription orders contribute to profit.

### Bold Subscription

Integrate your Bold subscription data for comprehensive profit analysis that factors in recurring revenue streams.

#### How to connect

1\. Open Bloom and go to the Integrations page. Find Bold under the Email Marketing integrations and click "Connect."

2\. Click "Connect" and Follow the prompts to authorize your Klaviyo account.

<figure><img src="/files/LWyd0Jox6ZKtygByif2B" alt=""><figcaption></figcaption></figure>

### Seal Subscription

Integrate Seal Subscription to track revenue from Seal subscriptions and understand how recurring orders contribute to profit.

#### How to connect

1\. Open Bloom and go to the Integrations page. Find Seal under the Email Marketing integrations and click "Connect."

2\. Click "Connect" and follow the prompts to authorize your Klaviyo account.

<figure><img src="/files/WhwdXufAMTZb0YW45Whp" alt=""><figcaption></figcaption></figure>


# Slack Integration with Bloom

Connect Bloom with your Slack workspace to receive automated daily updates on essential profit metrics straight to your preferred Slack channel, helping your team stay on top of performance trends.

#### **Step 1:**

Navigate to [**App Settings** ](https://app.bloomanalytics.io/settings)**> Email Preferences** and enable the Slack Summary toggle.

#### **Step 2:**

Click on **Connect Slack Account** and authenticate your Slack workspace.

<figure><img src="/files/HhlXHTkirdya1z79wmHe" alt=""><figcaption></figcaption></figure>

<figure><img src="/files/bqgrluZxPLsAo7ME0ltB" alt=""><figcaption></figcaption></figure>

#### **Step 3:**

Once connected, select the **Slack workspace** and the **specific channel** where you want to receive updates.\
Choose which metrics you’d like to receive, such as **Total Sales, AOV, Order Count, New Customer %, Gross Profit, Gross Margin %, Net Profit, MER (ROAS),** and click **Save**.

<figure><img src="/files/kAi1mY95lfiLTp8U0Cos" alt=""><figcaption></figcaption></figure>

#### **Step 4:**

Open Slack and go to the workspace and channel you selected. In the message box, type **@Bloom Analytics** and press **Enter**.

<figure><img src="/files/LeHJdBU9Ir6mXqxyZHlu" alt=""><figcaption></figcaption></figure>

#### **Step 5:**

A pop-up will appear saying **"Want to add this person instead?"**. Click **Add to channel**.\
You will now start receiving daily performance summaries from Bloom in your Slack channel.

<figure><img src="/files/JgZ0DQXkGUFRvGLVZWfa" alt=""><figcaption></figcaption></figure>

**Note:** Ensure that you complete Steps 4 and **5** to properly activate the Slack integration and start receiving daily updates.


# Product Cost

Set and manage cost of goods sold (COGS) for every Shopify product and variant in Bloom using Shopify sync, fixed, date-based, tier-based, or country-based costs.

### What is Product Cost?

Product Costs is the section in Bloom where you define how the cost of goods sold (COGS) is calculated for each product and variant. It is for Shopify merchants who need accurate margins, because correct product costs are what make your contribution margins (CM1, CM2, CM3) and profit numbers in the P\&L table accurate.

### How it Works

Bloom needs a cost for every product and variant to calculate COGS. It gets that cost from Shopify automatically or from a value you set manually, and it lets you shape how the cost is applied per unit, per time period, per quantity tier, or per country.

**Product Cost from Shopify**

Bloom automatically pulls the product and variant cost you set in Shopify. If you update the cost in Shopify later, Bloom syncs and updates it automatically, with no manual action needed. If you don’t have costs set up in Shopify, or you want to calculate profit using a different cost than the one in Shopify, add the costs directly in Bloom. If a cost exists in both Bloom and Shopify, the Bloom cost takes priority and is used in the calculations.

**Fixed Cost Per Unit**

Use this when the cost of the product stays the same for every unit sold. You enter a single cost per unit, and Bloom applies it to every order containing that variant.

<figure><img src="/files/PjosAqneVyDS5buU39TL" alt="Cost Type: Flat Rate"><figcaption></figcaption></figure>

**Cost by Period (Date-based Costing)**

Use this when your cost changes over time, for example when supplier prices change, cost fluctuates seasonally, or you want accurate margins for historical orders. For each period you set a start date, end date, and cost per unit. You can add multiple periods with the Add Cost Period option, and Bloom applies the correct cost based on the order date.

<figure><img src="/files/4bd2I4sJHAmaTpTyeu6f" alt="Cost by Time Period"><figcaption></figcaption></figure>

**Example:**

| Period           | Cost per unit |
| ---------------- | ------------- |
| Dec 08 to Dec 12 | 11.8          |
| Dec 12 to Dec 15 | 11.0          |

**Cost by Quantity (Tier-based Costing)**

Use this when the product cost varies based on the number of units sold, common in bulk pricing or supplier tier structures. For each tier you define a quantity range, a cost per unit, and optionally a date period for when that tier is valid.

<figure><img src="/files/3AydMZLeRHiPRp3a2vX1" alt="Cost Based on Quantity "><figcaption></figcaption></figure>

**Example:**

| Quantity range  | Cost per unit |
| --------------- | ------------- |
| 1 to 6 units    | 6.0           |
| 7 to 15 units   | 4.5           |
| 15 to 999 units | 4.0           |

You can choose how the tiered cost is applied using three cost rules, found in additional settings. Each example below uses two tiers (Qty 1 to 2 at $8, Qty 3 to 5 at $4) for an order of 3 units:

* **Absolute:** The rate of the final matching range applies to all quantities. For 3 units: 3 × $4 = $12.
* I**ncremental:** Cost is calculated progressively across each quantity range instead of applying a single rate to the entire quantity. For 3 units: $8 + $8 + $4 = $20.
* **Flat:** A single flat charge applies for the matched quantity tier, regardless of how many units are ordered. For 3 units: $4 (not $4 × 3).

<figure><img src="/files/mXUYZvI89qYjGnuxJJ0c" alt="Quantity Based Cost Rules"><figcaption></figcaption></figure>

**Cost Override by Country**

Use Cost Override to set a product cost for a specific country under either cost type. Select the country you need, and Bloom applies that cost to orders from that country.

<figure><img src="/files/aPnqn1Bhuwd8i1aXjyqR" alt="Country Override in Bloom"><figcaption></figcaption></figure>

**How Bloom Calculates Cost for an Order**

Bloom splits the order quantity across the cost tiers and calculates the final cost accurately. The example below uses the Incremental rule (progressive splitting) with the tiers\
1→ 6 at $6,\
7 → 15 at $4.5,\
15 → 999 at $4, for a 9-unit order:

| Step                           | Calculation | Cost |
| ------------------------------ | ----------- | ---- |
| First 6 units                  | 6 × 6       | 36   |
| Remaining 3 units (7th to 9th) | 3 × 4.5     | 13.5 |
| Total product cost             | 36 + 13.5   | 49.5 |

### How to Use it

Choose the method that matches how many products you are updating, then follow the steps. Product costs from Shopify sync automatically, so you only need these steps to override Shopify costs or add advanced cost structures.

**Edit an Individual Variant**

1. In Cost Settings, go to Products and click the Edit icon next to a product variant.
2. Choose a costing method:
3. Fixed Cost per Unit: enter the cost per unit (for example, 15 per unit), then click Save. Bloom applies this cost to every order containing that variant.
4. Cost by Quantity: set your quantity tiers, then choose the cost rule (Absolute, Incremental, or Flat) in additional settings.
5. To scope a cost type to specific dates, enable the date range toggle in additional settings.
6. To set a cost for a specific country, use Cost Override and select the country.
7. Click Save.

<figure><img src="/files/DzbVjrss2M2WdAw2vyKg" alt=""><figcaption></figcaption></figure>

**Update Costs in Bulk (CSV upload)**

1. Go to Cost Settings, then Products, then Bulk Edit.
2. Download the CSV template provided.
3. Update the Bloom Cost for each product. Only the Bloom Cost can be edited in the CSV. Other fields are locked.
4. Save the file and upload it back into Bloom through the Bulk Edit section. The costs update once uploaded.

<figure><img src="/files/Rpyj2wHb9Dd8RzHjS3ct" alt="Updating Cost in Bulk"><figcaption></figcaption></figure>

**Update Multiple Products at Once (Group Edit)**

1. Go to Cost Settings, then Products.
2. Use the checkboxes on the left to select the products you want to update.
3. Click Edit Product Cost. Bloom directs you to the group edit page.

<figure><img src="/files/kapuTTFYrUmb90Ksg9WE" alt=""><figcaption></figcaption></figure>

4. Enter the product cost in the group update section.
5. Apply the change:
6. Click "Apply for all orders" to apply the changes to past and future orders containing the selected products.
7. Click "Apply for future orders" to apply the changes to future orders only.

<figure><img src="/files/EMeIKFFvEEtAwZ4Vf22i" alt=""><figcaption></figcaption></figure>

### **Notes**

* Rows highlighted in red indicate products that do not have a cost in Shopify or Bloom. This is not an error, it just needs manual cost entry.
* Use the "Cost missing in Shopify & Bloom" (top left under Product COGS) to filter and see only products missing both Shopify and Bloom costs.
* After editing a cost, click "Recalculate Past Orders Also" so the updated cost reflects in the P\&L table.

<figure><img src="/files/dZrGzo58JZsOxlPFNah0" alt=""><figcaption></figcaption></figure>


# FedEx Integration with Bloom

### **Steps to find your FedEx Client id (API Key)**

**Step 1**: Go to the[ FedEx Developer Portal](https://developer.fedex.com/) website.

**Step 2**: Log in to your FedEx account.

**Step 3**: Locate your project from the project list.

**Step 4**: Open the project overview page for the selected project.

**Step 5**: Find your **Client ID** (also called **API Key**) on the project overview page.

**Step 6**: If you’re setting up for production, go to the “**Get Project Keys**” section to find both your **Client ID (API Key)** and **Secret Key**.

<figure><img src="/files/lwFv0GiVLttQG9fLbOiu" alt=""><figcaption></figcaption></figure>

### Connect Your FedEx Account

After completing the steps above, enter your details below to connect your FedEx account and fetch shipping costs for your orders:

* **Client ID**: Enter your FedEx Client ID.
* **Client Secret**: Enter your FedEx Client Secret.
* **FedEx Account Number**: Enter your FedEx Account Number.

Click Connect to complete the integration with Bloom.

<figure><img src="/files/ZDc7iJ5ZT80eCGo5HPEI" alt=""><figcaption></figcaption></figure>

### **Troubleshooting**

**Invalid API Key**: Double-check the API key and secret entered in Bloom Analytics.

**Connection Issues**: Ensure that the FedEx API services are not down. You can check the FedEx status page for updates.

### **Support**

If you encounter any issues or need additional help, contact our support team at <mark style="color:blue;"><support@bloomanalytics.io></mark> or refer to the FedEx Developer Support page for more detailed troubleshooting.

<br>


# Setting Up Costs and Expenses

Bloom empowers you to track and analyze your Shopify store's expenses, providing crucial insights for profit-oriented decision-making.

Here's how to set up various cost categories:

### :point\_right:Access the Cost Settings Page

To access this section, simply click on the “Cost Settings” option in the Bloom app left navigation panel.&#x20;

### :point\_right:Types of Costs

Bloom tracks these five costs associated with Shopify operations: &#x20;

* **Product Cost**
* **Gateway Cost**
* **Order Handling Costs**
* **Shipping Cost**
* **Other Costs**

Here’s a detailed breakdown of these costs:

### 1. Product Cost

Knowing the true cost of each product is the foundation of profit analysis. Without it, you cannot determine your profit margin per item or identify your most profitable products. Bloom lets you understand the interplay between Shopify costs, manually added costs, and the import/export process for accurate product cost calculation.&#x20;

* #### Syncing Shopify Costs
  * Bloom initially pulls the cost per item data from your Shopify store.
  * Any product cost values added in your Shopify database gets automatically populated in Bloom.
* #### Adding/Overriding Costs in Bloom
  * If a product doesn’t have a cost in Shopify, or you need to adjust its cost, you can directly edit the product’s "Bloom cost" within the app.
  * Bloom costs take priority over Shopify costs in profit calculations.

#### **Steps to edit Bloom Cost:**

-> In the Expenses page, find the Product Cost section.

-> Hover over a variant's existing "Bloom cost" in the table.&#x20;

-> Click the Edit (pencil) icon.&#x20;

-> A modal window will open with a form: Enter the new Amount. Specify the Start Date and End Date for this specific cost. Click Save.

-> You can also add multiple costs across different date-ranges for the same variant by clicking on the “Add Cost” button in the same form.

* #### Editing Cost Management: CSV Export/Import

For bulk updates, follow these steps:

* **Exporting the Product Cost CSV**

-> In the Expenses page, locate the Product Cost section.

-> Click the Export CSV button.

-> This downloads a CSV file with columns:

* *Product\_title*

* *Variant\_title*

* *SKU*

* *Product\_id*

* *Variant\_id*

* *Shopify\_cost*

* *Bloom\_cost*

* **Editing the CSV**

* Open the CSV in a spreadsheet program (e.g., Microsoft Excel, Google Sheets).

* Focus on the bloom\_cost column.

* Enter the desired cost values for each product variant. Leave the bloom\_cost blank if you want to use the shopify\_cost.

* **Importing the CSV**
  * After editing, save your changes to the CSV file.
  * On the Expenses page (Product Cost section), click Import CSV.
  * Select the updated CSV file and upload it.
  * Bloom will overwrite existing 'Bloom cost' values with the new data from your CSV.

### :point\_right:**Points to Note**

* **Multiple Costs per Variant:** You can add multiple cost values for a single variant, each with its own date range. This helps track its cost variations over time (Ex: Price change due to input price changes).
* **Prioritization:** Bloom's profit calculations smartly prioritize costs based on the order date:
  * For an order within a specific date range, the corresponding cost value is used.
  * Bloom uses the most recently added cost if no matching cost entry is found.
* **Data Integrity:** Ensure you only modify the **bloom\_cost** column in the CSV. Changes to other columns might lead to unexpected results.
* **Regular Review:** Periodically review your product costs, especially if your supplier costs or pricing strategies change.
* **Review Shopify Costs:** Start by verifying the "**cost per item**" values set up within your Shopify store.
* **Filter Products:** Apply a range of filters to identify products without a "cost per item" value in Shopify for quick updates.
* **Add/Override Costs in Bloom:** Add product costs directly within Bloom if you want. These take priority over Shopify costs during profit calculations.

By adding the right mix of automation and manual, custom product cost value to your profit analysis, Bloom ensures there’s no room for error in arriving at your profit figures.

### 2. Gateway Cost

Payment gateway costs are a crucial influence on your profitability. Bloom profit analysis includes this cost, right from the moment payout data is collected. Get to know your gateway costs for every transaction, and how it’s affecting your revenue.&#x20;

The costs included here are:

* #### Shopify Payments&#x20;

If you use Shopify’s default payment gateway, all applicable fees for transactions through it are imported automatically.

* #### Third-party Gateway Payments

For fees applied by third-party payment gateways, like PayPal, you can choose to let Bloom update them automatically.&#x20;

If you wish to add values manually, then follow these steps:

-> Click on the Add Gateways Cost button.

-> Select your gateway from the list of options in the dropdown menu. If it’s unavailable, contact customer support.&#x20;

-> Add the Percentage Fee.

-> Add the Fixed Fee.

-> Click Save.

### 3. Order Handling Costs

Fulfilment activities like order packaging and handling can incur expenses that can cut away at your profits. Bloom accounts for these costs during profit analysis to give you accurate profit values, along with insights into how you can reduce them, like updating product prices and improving operational efficiency.&#x20;

* *Cost Basis:* Choose between Cost per Order or Cost per Item.&#x20;
* *Global Setting:* You can apply this cost structure across your Shopify store.

### 4. Shipping Costs

Shipping products with charges like shipping label fees included can affect profit margins. Bloom considers all costs that fall under shipping to perform accurate profit analysis. Insights from this can be used to set competitive shipping charges, including free shipping, an important factor customers consider during purchase.&#x20;

* **Shopify Shipping**

Merchants using Shopify for their shipping needs can simply enable the “Use Shopify shipping for shipping costs” option. Bloom will automatically sync with Shopify and retrieve this data.&#x20;

* **Shipping Charges**

Enable the “Use Shipping charged for shipping costs” option if your shipping costs equal what you’ve charged customers for shipping.

### 5. Other Costs

Bloom adds the miscellaneous expenses a Shopify merchant incurs as part of routine store operations, like rent, salaries, utilities, etc. This ensures that your profit analysis doesn’t miss these costs. Insights from their analyses gives the full picture of your overheads, helping spot opportunities to save costs.

* **Custom Expenses**

Add costs that are unique to your store.

* **Adding Other Costs**
  * Click on Add Other Costs
  * Choose the cost type
    * ***Fixed Cost:*** Add expense name, amount, frequency (one time, daily, weekly, monthly, yearly), category (marketing, salaries, rent, etc.), start date, and end date (optional).
    * ***Based on Percentage:*** Add expense name, percentage of total sales, frequency (daily, weekly, monthly, etc.), category (marketing, salaries, rent, etc.), start date and end date (optional)&#x20;
  * Click on **Save**

Accurate cost setup in Bloom is essential for:

* **Real Profit Margins:** Accurately accounting for every expense is the only way to measure your true profit margins and prevent decisions based on incorrect profit figures.
* **Informed Pricing Strategies:** Knowing the cost per product is key to setting prices that achieve your target profit margins.
* **Cost Management:** By tracking expenses in detail, you can identify and address areas where costs exceed expectations, boosting your bottom line.


# Shipping Costs

## How to Capture Accurate Shipping Costs?

Shipping products with charges like shipping label fees included can affect profit margins. Bloom considers all costs that fall under shipping to perform accurate profit analysis. Insights from this can be used to set competitive shipping charges, including free shipping, an important factor customers consider during purchase.

### Steps to Capture Shipping Costs in Bloom:

#### **1. Navigate to Shipping Settings:**

* Go to the **Cost Settings** > **Shipping**.

#### **2. Create a Shipping Rule:**

On the Shipping page, click **Create Shipping Rule** to define how shipping costs should be applied to your orders. Bloom provides three options to add shipping costs based on your **country** and **shipping mode** (if any):

* **Fixed Price on All Orders:** Apply a flat shipping rate to all orders, regardless of weight or quantity. Enter the fixed shipping cost in the provided field and click save to apply the rule.

<figure><img src="/files/6b6VZasvhD0PrgjACA7j" alt="" width="476"><figcaption></figcaption></figure>

* **Price Based on Order Weight:** Define shipping rates based on the weight of the order. You can set minimum and maximum weight ranges with corresponding shipping rates. You can add multiple weight ranges to cover different products.

<figure><img src="/files/7H5Xbp8SMEdz2hNzazfd" alt="" width="476"><figcaption></figcaption></figure>

* **Price Based on Quantity:** Set shipping rates based on the number of items in the order. Define unit ranges (e.g., 1-10 items, 11-20 items) and the respective shipping rates for those quantities. Additional quantity ranges can be added as needed.

<figure><img src="/files/xQHuOBvfX5EeVwoszVu0" alt="" width="474"><figcaption></figcaption></figure>

#### **3. Recalculate Shipping Rules:**

Once the shipping rule is set up according to your preferred method, follow these steps to integrate the shipping cost into your profit calculations:

* Click on the **Recalculate Shipping Rule button** located at the bottom right corner of the page.
* This action will trigger Bloom to recalculate the shipping costs and add them to the net profit calculation.
* Within a few minutes, the shipping cost will be included in your profit analysis, providing a more accurate calculation of your margins.

By accurately capturing shipping costs, Bloom enables you to improve your cost analysis and make informed decisions to optimize your shipping charges, which can ultimately help boost your profitability.

<br>


# Shipping Costs Setup

Shipping Costs Setup allows you to manage how shipping expenses are added, calculated, and tracked in Bloom so your profit reporting reflects real operational costs.

<figure><img src="/files/4Gk4hE2FriHeIip8mptg" alt="" width="563"><figcaption></figcaption></figure>

## Bloom offers four ways to manage shipping costs:

### [1. **Shipping Rule** ](/shipping-costs-setup/1.-shipping-rule)

Create custom shipping rules to calculate shipping costs based on zones, order-level logic, or product group configurations. Rules can be defined in any of the following ways:

* [**By Country** ](/shipping-costs-setup/1.-shipping-rule/by-country)
* [**By Products** ](/shipping-costs-setup/1.-shipping-rule/by-products)
* [**By Fulfillment Center** ](/shipping-costs-setup/1.-shipping-rule/by-fulfillment-center)
* [**By Shipping Method** ](/shipping-costs-setup/1.-shipping-rule/by-shipping-method)

### [2. **Manual Edit** ](/shipping-costs-setup/4.-manual-edit-shipping-costs)

Add or update shipping costs for individual orders or upload changes in bulk via CSV.

### [**3. Integrations** ](/shipping-costs-setup/2.-integrations-shipping-costs)

Automatically sync shipping costs from connected platforms such as ShipHero or ShipStation.

### [**4. Shopify Shipping** ](/shipping-costs-setup/3.-shopify-shipping-shipping-costs)

Import shipping costs recorded in Shopify to match the exact amounts charged for each order.


# 1. Shipping Rule

Shipping Rules let you set up automated shipping cost calculations based on how your store operates. You can create rules by grouping countries, products, fulfillment locations, or shipping methods to ensure accurate and flexible cost tracking.

### [By Country ](/shipping-costs-setup/1.-shipping-rule/by-country)

Create shipping zones with specific countries and apply rules for each zone.

### [By Products ](/shipping-costs-setup/1.-shipping-rule/by-products)

Set shipping costs based on product groups or categories.

### [By Fulfillment Center](/shipping-costs-setup/1.-shipping-rule/by-fulfillment-center)

Assign shipping costs depending on which fulfillment location processes the order.

### [By Shipping Method](/shipping-costs-setup/1.-shipping-rule/by-shipping-method)

Apply shipping costs based on the shipping method selected by the customer


# By Country

#### Step 1  - Create a Shipping Zone&#x20;

To start, you need to create a shipping zone that defines the countries this zone will cover.&#x20;

* Go to [**Cost Settings**](https://app.bloomanalytics.io/shipping_cost) **> Shipping**.

You can either:

* **Create a new shipping zone** and select the countries you want to include.
* **Select an existing shipping zone** if you’ve already added one.

**Note:** A country cannot belong to more than one shipping zone. If you try to add a country that is already part of another zone.

<figure><img src="/files/K34SxMmOPmeXOAtoWAQX" alt=""><figcaption></figcaption></figure>

#### Step 2 -  Create Shipping Cost Rules

* Select **“Set Rule by Order”** to calculate shipping costs at the order level.
* Choose **“Any” Shipping Method** to apply the rule to all shipping methods.

<figure><img src="/files/wIpuYFRJVvxeSioMp3Ln" alt=""><figcaption></figcaption></figure>

#### Step 3 - Set your Shipping Rates&#x20;

Once your shipping rule is selected, define how shipping costs are calculated. You can choose from the following methods:

**1. Fixed Rate for All Products**

Apply a flat shipping fee regardless of weight, quantity, or order value.

**2. Rate Based on Order Weight**

Set shipping costs according to weight ranges. For example:

* 1–1000 g → shipping = 2
* 2000–5000 g → shipping = 0.5
* 5000 g–∞ → shipping = 0.7

Shipping charges are cumulative across ranges. For instance:

* An order weighing 3000 g = 2 + 0.5
* An order weighing 6000 g = 2 + 0.5 + 0.7

**3. Rate Based on Item Quantity**

Set shipping costs depending on the number of items in the order. Charges are cumulative across quantity ranges, similar to weight-based rates.

**4. Rate Based on Order Value**

Set shipping costs based on the total value of the order. Rates can be defined in value ranges, and the shipping charges are applied cumulatively across those ranges.

Click **“Save”** to complete setting up the shipping rule by country.&#x20;

Click on **Recalculate Shipping Costs** to ensure the updated shipping costs are applied and reflected in your profit calculations.


# By Products

#### Step 1  - Create a Shipping Zone&#x20;

To start, you need to create a shipping zone that defines the countries this zone will cover.

* Go to [**Cost Settings**](https://app.bloomanalytics.io/shipping_cost) **> Shipping**.

You can either:

* **Create a new shipping zone** and select the countries you want to include.
* **Select an existing shipping zone** if you’ve already added one.

**Note:** A country cannot belong to more than one shipping zone. If you try to add a country that is already part of another zone.

<figure><img src="/files/K34SxMmOPmeXOAtoWAQX" alt=""><figcaption></figcaption></figure>

#### **Step 2 – Create Shipping Cost Rules (By Products)**

* Select **“Set Rule by Product”** to calculate shipping costs based on product groups.
* **Create a product group** – you can create multiple product groups for different sets of products.\
  **Note:** The same product cannot be added to more than one group.
* Select the **Shipping Method** from the dropdown menu.

<figure><img src="/files/4ket13PeBLF62BNzN9xd" alt=""><figcaption></figcaption></figure>

#### **Step 3 – Add Shipping Rates (By Products)**

After creating your product groups, define how shipping costs are calculated. You can choose from the following methods:

**1. Fixed Rate for All Products**

Apply a flat shipping fee to all products in the group, regardless of quantity.

**2. Rate Based on Item Quantity**

Set shipping costs depending on the number of items in the product group. Charges are cumulative across quantity ranges.

**Example:**

* 1–2 units → shipping = 1.5
* 3–5 units → shipping = 2
* 6 units and above → shipping = 2.5

**Cumulative Charges:**

* An order with 4 items = 1.5 + 2 = 3.5
* An order with 7 items = 1.5 + 2 + 2.5 = 6

Click **“Save”** to complete setting up the shipping rule by products.&#x20;

Click on  **Recalculate Shipping Costs** to ensure the updated shipping costs are applied and reflected in your profit calculations.


# By Fulfillment Center

#### **Step 1 – Enable Fulfillment Location Shipping Rule**

* Go to **App Settings > Others**.
* Turn on the toggle **“Enable Fulfillment Location Shipping Rule”**.

This enables you to create shipping rules based on the fulfillment location of your orders.

<figure><img src="/files/l4AxqxocyQjpjIvd5hF7" alt=""><figcaption></figcaption></figure>

#### Step 2  - Create a Shipping Zone&#x20;

To start, you need to create a shipping zone that defines the countries this zone will cover.&#x20;

* Go to [**Cost Settings**](https://app.bloomanalytics.io/shipping_cost) **> Shipping**.

You can either:

* **Create a new shipping zone** and select the countries you want to include.
* **Select an existing shipping zone** if you’ve already added one.

**Note:** A country cannot belong to more than one shipping zone. If you try to add a country that is already part of another zone.

<figure><img src="/files/K34SxMmOPmeXOAtoWAQX" alt=""><figcaption></figcaption></figure>

#### **Step 3 – Create Shipping Cost Rules**

* Create a **product group** – you can create multiple product groups for different sets of products.\
  **Note:** The same product cannot be added to more than one group.
* Select the **Fulfillment Warehouse** for your product group.

<figure><img src="/files/jsjhAo48YHsoPxnsu6kv" alt=""><figcaption></figcaption></figure>

#### **Step 4 – Add Shipping Rates**&#x20;

After creating your product groups, define how shipping costs are calculated. You can choose from the following methods:

**1. Fixed Rate for All Products**

Apply a flat shipping fee to all products in the group, regardless of quantity.

**2. Rate Based on Item Quantity**

Set shipping costs depending on the number of items in the product group. Charges are cumulative across quantity ranges.

**Example:**

* 1–2 units → shipping = 1.5
* 3–5 units → shipping = 2
* 6 units and above → shipping = 2.5

**Cumulative Charges:**

* An order with 4 items = 1.5 + 2 = 3.5
* An order with 7 items = 1.5 + 2 + 2.5 = 6

Click **“Save”** to complete setting up the shipping rule by products.&#x20;

Click on **Recalculate Shipping Costs** to ensure the updated shipping costs are applied and reflected in your profit calculations.


# By Shipping Method

This setup allows you to calculate shipping costs based on the shipping method selected. You can choose to apply the rule either at the **order level** or for **specific products**, giving you flexibility in how shipping charges are applied.

### 1. Set Rule by Order

#### Step 1  - Create a Shipping Zone&#x20;

To start, you need to create a shipping zone that defines the countries this zone will cover.&#x20;

* Go to [**Cost Settings**](https://app.bloomanalytics.io/shipping_cost) **> Shipping**.

You can either:

* **Create a new shipping zone** and select the countries you want to include.
* **Select an existing shipping zone** if you’ve already added one.

**Note:** A country cannot belong to more than one shipping zone. If you try to add a country that is already part of another zone.

<figure><img src="/files/K34SxMmOPmeXOAtoWAQX" alt=""><figcaption></figcaption></figure>

#### Step 2 -  Create Shipping Cost Rules

* Select **“Set Rule by Order”** to calculate shipping costs at the order level.
* Select your desired **Shipping Method** to apply the rule across all shipping methods.

<figure><img src="/files/wIpuYFRJVvxeSioMp3Ln" alt=""><figcaption></figcaption></figure>

#### Step 3 - Set your Shipping Rates&#x20;

Once your shipping rule is selected, define how shipping costs are calculated. You can choose from the following methods:

**1. Fixed Rate for All Products**

Apply a flat shipping fee regardless of weight, quantity, or order value.

**2. Rate Based on Order Weight**

Set shipping costs according to weight ranges. For example:

* 1–1000 g → shipping = 2
* 2000–5000 g → shipping = 0.5
* 5000 g–∞ → shipping = 0.7

Shipping charges are cumulative across ranges. For instance:

* An order weighing 3000 g = 2 + 0.5
* An order weighing 6000 g = 2 + 0.5 + 0.7

**3. Rate Based on Item Quantity**

Set shipping costs depending on the number of items in the order. Charges are cumulative across quantity ranges, similar to weight-based rates.

**4. Rate Based on Order Value**

Set shipping costs based on the total value of the order. Rates can be defined in value ranges, and the shipping charges are applied cumulatively across those ranges.

Click **“Save”** to complete setting up the shipping rule by country.&#x20;

Click **Recalculate Shipping Costs** to ensure the updated shipping costs are applied and reflected in your profit calculations.

### 2. Set Rule by Product&#x20;

#### Step 1  - Create a Shipping Zone&#x20;

To start, you need to create a shipping zone that defines the countries this zone will cover.

* Go to [**Cost Settings**](https://app.bloomanalytics.io/shipping_cost) **> Shipping**.

You can either:

* **Create a new shipping zone** and select the countries you want to include.
* **Select an existing shipping zone** if you’ve already added one.

**Note:** A country cannot belong to more than one shipping zone. If you try to add a country that is already part of another zone.

<figure><img src="/files/K34SxMmOPmeXOAtoWAQX" alt=""><figcaption></figcaption></figure>

#### **Step 2 – Create Shipping Cost Rules (By Products)**

* Select **“Set Rule by Product”** to calculate shipping costs based on product groups.
* **Create a product group** – you can create multiple product groups for different sets of products.\
  **Note:** The same product cannot be added to more than one group.
* Select the **Shipping Method** from the dropdown menu.

<figure><img src="/files/4ket13PeBLF62BNzN9xd" alt=""><figcaption></figcaption></figure>

#### **Step 3 – Add Shipping Rates (By Products)**

After creating your product groups, define how shipping costs are calculated. You can choose from the following methods:

**1. Fixed Rate for All Products**

Apply a flat shipping fee to all products in the group, regardless of quantity.

**2. Rate Based on Item Quantity**

Set shipping costs depending on the number of items in the product group. Charges are cumulative across quantity ranges.

**Example:**

* 1–2 units → shipping = 1.5
* 3–5 units → shipping = 2
* 6 units and above → shipping = 2.5

**Cumulative Charges:**

* An order with 4 items = 1.5 + 2 = 3.5
* An order with 7 items = 1.5 + 2 + 2.5 = 6

Click **“Save”** to complete setting up the shipping rule by products.&#x20;

Click on  **Recalculate Shipping Costs** to ensure the updated shipping costs are applied and reflected in your profit calculations.


# 2. Integrations - Shipping Costs

Integrations allow you to automatically sync shipping costs from external platforms.&#x20;

#### To set up any integration, go to **Settings >** [**Integration**](https://app.bloomanalytics.io/integrations).

### 1. Shipstation&#x20;

* Enter your **API Key** and **API Secret**.
* Bloom will automatically fetch shipping costs from your ShipStation account for all orders.

<figure><img src="/files/cxIUXtzxINoabEmLZRmC" alt="" width="540"><figcaption></figcaption></figure>

### 2. Ship Hero

* Enter your **ShipHero Username** and **Password**.
* Shipping costs from ShipHero will sync automatically for all fulfilled orders.

<figure><img src="/files/vYR4V5Yu5z2s3laf0Th1" alt="" width="556"><figcaption></figcaption></figure>

### 3. Drop Shipping&#x20;

* Enter your **Email Address** and **API Key** from your drop shipping provider.
* Bloom will import shipping costs for all orders fulfilled via drop shipping.

<figure><img src="/files/v0trl2GvPeq0FlfVF6VQ" alt="" width="554"><figcaption></figcaption></figure>

### 4. FedEx

Refer to the [FedEx Integration Documentation](/product-cost/fedex-integration-with-bloom) for detailed setup instructions.


# 3. Shopify Shipping - Shipping Costs

Bloom seamlessly integrates with Shopify to automatically track all shipping costs for your orders.

Every shipping fee recorded in Shopify is imported into Bloom, allowing you to calculate your profits accurately without any manual entry.

By syncing shipping costs directly from Shopify, Bloom ensures your profit reports reflect the true cost of fulfilling each order.

This integration simplifies profit tracking, saves time, and reduces the risk of errors when managing shipping expenses across multiple orders.


# 4. Manual Edit - Shipping Costs

Manually add or update shipping costs for individual orders, or edit them in bulk, ensuring accurate profit calculations.

### **Per Order**

* Go to **Profits >** [**Order Profits**](https://app.bloomanalytics.io/tables/3?required_gt=false).
* In the **Shipping Cost** column, enter the shipping cost manually for each order.

<figure><img src="/files/Eh4u4E3O89kNqRRMlkGj" alt=""><figcaption></figcaption></figure>

<figure><img src="/files/QXHVCCzx74wHBpdqnNeo" alt="" width="495"><figcaption></figcaption></figure>

* Click **Save** to apply the changes.

### **Bulk Edit**

* Go to **Profits >** [**Order Profits**](https://app.bloomanalytics.io/tables/3?required_gt=false).
* Export your orders as a **CSV file**.

<figure><img src="/files/LPPpc6nOOyaEJ1u3ebEf" alt=""><figcaption></figcaption></figure>

* Edit the **Shipping Cost** column in the CSV file.
* Import the updated CSV back into Bloom.

<figure><img src="/files/ComH0JPTx0aa42t5DT32" alt=""><figcaption></figcaption></figure>

* All shipping cost changes will be applied automatically to the corresponding orders.
* Click on **Recalculate Shipping Costs** to ensure the updated shipping costs are applied and reflected in your profit calculations.


# Order Settings

Order Settings in Bloom lets you choose which order statuses, payment statuses, sales channels, and order tags are included in or excluded out from your Shopify profit reports

### What is Order Settings?

Order Settings is a Bloom configuration area that controls which orders are included in or excluded from your revenue and profit reports. It is for Shopify merchants who want their profit calculations to reflect only the orders relevant to their business. Filter orders in or out by four criteria: order status, payment status, sales channel and order tag.

### How it works

Bloom builds your revenue and profit reports only from orders that match the statuses and channels you select in Order Settings. Each of the four setting groups filters which orders enter the calculation.

#### Order Status Settings

Choose which orders to include or exclude&#x20;

* Open
* Closed
* Cancelled

#### Payment Status Settings

Choose which payment statuses to include or exclude&#x20;

* Authorized
* Paid
* Partially Paid
* Pending
* Refunded
* Voided
* Expired

#### Sales Channel Settings

Select which sales channels to track:

* Online Store
* Point of Sale
* Draft Orders
* Other connected channels

#### Order Tag Settings

Select which order tags to include or exclude&#x20;

* Select All&#x20;
* Search for a specific tag using the search bar.
* Select or deselect individual tags as needed.

Note: Tag matching is case-insensitive, so tags with different capitalization are treated as the same tag.

### How to use it

* Go to App Settings → Order Settings.
* Under Order Status Settings, select the order statuses to include or exclude  (Open, Closed, Cancelled).
* Under Payment Status Settings, choose the payment statuses to include or exclude (Authorized, Paid, Partially Paid, Pending, Refunded, Voided, Expired).

<figure><img src="/files/1HOh4mtt1ryfwx1wlzQ6" alt=""><figcaption></figcaption></figure>

* Under Sales Channel Settings, select the sales channels to track (Online Store, Point of Sale, Draft Orders, Other connected channels).
* Under Order tag settings choose the tags to include or exclude (Wholesale, Subscription ,gift ,pre-order)

<figure><img src="/files/Da0BBEueyBX9H8E3nNvS" alt=""><figcaption></figcaption></figure>

* Proceed by clicking on Save.\
  \
  **NOTE : Available tags differ by store based on your order data.**


# Multi-Store

Multi-Store lets you connect more than one Shopify store to a single Bloom account and switch between them to view each store's data and insights.

#### What is Multi-Store?

Multi-Store is a Bloom feature that lets you connect more than one store to the same Bloom account and switch between them. It is for merchants who manage multiple Shopify stores and want to access all of them from one account. When you switch stores, Bloom displays the data and insights for the selected store.

### How to use it

**Connect another store**

* From the Bloom sidebar, go to Manage Stores to open the Stores page.
* On the Stores page, click the Connect a store button.
* Select Shopify as your store platform.
* Enter your Shopify store URL in the field provided.
* Click Continue. You will be redirected to Shopify to approve the required permissions. Once approved, you will be redirected back to Bloom.
* The new store now appears on the Connected stores page.

<figure><img src="/files/XvLQWWongbp2mxZsoGMw" alt=""><figcaption></figcaption></figure>

### **Switch between stores**

&#x20; Once you have multiple stores connected, switch between them in two ways:

* From the Stores page: go to Manage Stores and click Switch to this store on the store you want to access.
* From the sidebar: your connected stores also appear in the sidebar, so you can switch between them directly.
* When you switch stores, Bloom displays the data and insights for the selected store.

<figure><img src="/files/bdhAVLs3LLdBVbMr9CE2" alt=""><figcaption></figcaption></figure>


# Shipping Costs Setup

Shipping Costs are the total expenses you incur to deliver orders to your customers, and they have a direct impact on your overall profitability.

Bloom’s Shipping Cost settings let you build calculation rules that reflect how your store handles shipping, whether that’s through different zones, product groups, or custom structures.

To get started, navigate to [**Cost Settings**](https://app.bloomanalytics.io/shipping_cost) **> Shipping**.

#### Choose a setup method to ensure accurate shipping cost tracking in Bloom:

### [1. Shipping Method - Based Setup](/shipping-costs-setup-1/shipping-method-based-setup)

### [2. Fulfillment Location - Based Setup](/shipping-costs-setup-1/fulfillment-location-based-setup)

### [3. Add or Edit Shipping Costs per Order ](/shipping-costs-setup-1/add-or-edit-shipping-costs-per-order)


# Shipping Method - Based Setup

#### Step 1  - Create a Shipping Zone&#x20;

To start, you need to create a shipping zone that defines the countries this zone will cover. You can either:

* **Create a new shipping zone** and select the countries you want to include.
* **Select an existing shipping zone** if you’ve already added one.

**Note:** A country cannot belong to more than one shipping zone. If you try to add a country that is already part of another zone.

<figure><img src="/files/K34SxMmOPmeXOAtoWAQX" alt="" width="563"><figcaption></figcaption></figure>

#### Once your shipping zone is set up, the next step is to define how shipping costs are calculated within that zone. Choose one of the following options:

### [1. Order-Based Shipping Rule](/shipping-costs-setup-1/shipping-method-based-setup/order-based-shipping-rule)

### [2. Product-Based Shipping Rule ](/shipping-costs-setup-1/shipping-method-based-setup/product-based-shipping-rule)


# Order-Based Shipping Rule


# Product-Based Shipping Rule


# Fulfillment Location - Based Setup


# Add or Edit Shipping Costs per Order


# Bloom + AI Assistants Via MCP

### What is MCP?

MCP (Model Context Protocol) is a standard that allows AI assistants such as ChatGPT, Claude, and other AI tools to securely connect with applications like Bloom.

Instead of manually exporting reports or searching through dashboards, MCP lets AI assistants access your Bloom data directly (with your permission) and answer questions about your business in real time.

For example, you could ask:

* "What was my profit last month?"
* "Which products generated the highest profit this week?"
* "Why did my margins decrease compared to last month?"
* "How much did I spend on shipping in May?"

Your AI assistant can retrieve the information from Bloom and provide an answer instantly.

### How Does MCP Work With Bloom?

When you connect Bloom's MCP server to an AI assistant, the assistant gains access to Bloom's tools and data through a secure connection.<br>

Here's what happens when you ask a question:

1. You ask a question in your AI assistant, such as "What was my profit last month?"
2. The AI assistant determines which Bloom tool can answer the question.
3. The assistant sends a request to Bloom's MCP server.
4. Bloom retrieves the relevant data and returns the results.
5. The AI assistant presents the information in a clear, conversational format.<br>

This allows you to explore your business data using natural language instead of manually navigating reports and dashboards.

Bloom remains the source of truth for your analytics and profitability data, while the AI assistant acts as a convenient interface for accessing and understanding that information.

### How to Connect Bloom MCP?

#### [Set up Bloom MCP in Caude](/bloom-+-ai-assistants-via-mcp/connect-bloom-mcp-to-claude)

### Frequently Asked Questions

#### Do I need technical knowledge to use MCP?

No. Once connected, you can interact with your Bloom data using natural language.

#### Can MCP change my store data?

No. Bloom's MCP server provides read-only access to analytics and reporting data.

#### Can I disconnect MCP later?

Yes. You can remove the connection at any time from your AI assistant or Bloom settings.


# Connect Bloom MCP to Claude

Follow these steps to connect Bloom to ChatGPT using MCP.

### Step 1:

#### Navigate to [Integrations ](https://app.bloomanalytics.io/integrations)> Claude MCP and click on Connect

<figure><img src="/files/XY249vNKFfqMN5Unrgky" alt=""><figcaption></figcaption></figure>

### Step 2:

#### Click on **Open Claude AI**. You will be redirected to Customize → Connectors.

<figure><img src="/files/l2y8sL5xvbm3St4FMdF5" alt=""><figcaption></figcaption></figure>

### Step 3:

#### In the Connectors tab, click the **+** icon and select **Add Custom Connector**.

<figure><img src="/files/oqaZMYqvR75RMEEXBipG" alt=""><figcaption></figcaption></figure>

### Step 4:&#x20;

#### Enter the name as **Bloom**, paste the server URL below, and click **Add**.

```
https://app.bloomanalytics.io/mcp
```

<figure><img src="/files/FB94wO768kPQ6uXCkCfV" alt=""><figcaption></figcaption></figure>

### Step 5:

#### Click **Connect**. Then return to the Bloom app and click **Authorize** to complete the connection.

<figure><img src="/files/e3E5aLCiTDxyr2tVnMqR" alt=""><figcaption></figcaption></figure>

<figure><img src="/files/kqQzDH7sbR2mgtMmFiUW" alt=""><figcaption></figcaption></figure>


# MCP Prompt Library

Unlock deeper insights from your store data by connecting **Bloom MCP** with your AI assistant. Once connected, you can use natural language prompts to analyze your business performance, understand profitability drivers, and make data-driven decisions faster.

Bloom MCP gives your AI assistant access to key business insights from Bloom, allowing you to explore areas like:<br>

* **Profitability:** Understand what is impacting your net profit, margins, and overall business health.<br>
* **Product Performance:** Identify your most profitable products, underperforming SKUs, and growth opportunities.<br>
* **Marketing Performance:** Analyze ad spend efficiency, ROAS, and whether your campaigns are driving profitable growth.<br>
* **Sales Insights:** Discover revenue trends, sales drivers, and changes in business performance.<br>
* **Cost Analysis:** Understand how COGS, fees, shipping, and other expenses impact profitability.<br>

Explore the prompt categories below to find ready-to-use questions and uncover actionable insights from your Bloom data.

### [Profit Analysis Prompts](/mcp-prompt-library/profit-analysis-prompts)

### [Marketing & Ads Prompts](/mcp-prompt-library/marketing-prompts)

### [Decision-Making Prompts](/mcp-prompt-library/decision-making-prompts)

### [Store Performance Prompts](/mcp-prompt-library/store-performance-prompts)


# Profit Analysis Prompts

Ask Claude/ChatGPT to analyze your profitability using Bloom data. Understand revenue trends, profit margins, costs, product performance, and the key drivers affecting your net profit across Shopify, Amazon,

<div><figure><img src="/files/MEti2sDzNUsPcygsP7VW" alt="" width="419"><figcaption></figcaption></figure> <figure><img src="/files/3dSQNARkDpORkfs3kweM" alt="" width="437"><figcaption></figcaption></figure></div>

### Profit Decline Analysis

```
My sales are increasing, but profits are declining. Use Bloom to identify which costs or products are causing the drop
```

### Margin Analysis

```
Analyze my profit margins in Bloom and show me which products are improving or hurting my overall profitability
```

### Cost Breakdown

```
Break down my expenses this month and explain what is reducing my net profit the most.
```

### Product Profitability

```
Use Bloom to find my most profitable and least profitable products based on contribution margin.
```

### Profit Improvement Opportunities

```
Use Bloom to find my most profitable and least profitable products based on contribution margin.
```

### Quarterly Business Review

```
Give me a quarterly sales and profitability review. Highlight growth trends, challenges, and opportunities.
```

### Profit Leak Analysis

```
Find the biggest profit leaks in my Shopify business and recommend ways to improve profitability.
```

### Refund & Return Impact

```
Analyze how refunds, returns, and discounts from Shopify are affecting my profitability
```


# Marketing Prompts

Ask Claude/ChatGPT to analyze your marketing performance using Bloom's attribution data. Understand which channels, campaigns, and products drive the most attributed revenue and profit, evaluate ROAS, MER, and CAC, and discover opportunities to optimize ad spend and maximize marketing ROI.

<div><figure><img src="/files/vOAnUmX7q4Zx8OIcZokm" alt=""><figcaption></figcaption></figure> <figure><img src="/files/IwnQovULY28xGv5tQPYd" alt=""><figcaption></figcaption></figure></div>

### Ad Profitability

Use Bloom to analyze whether my ads are actually generating profit. Show ROAS, ad spend, attributed revenue, and contribution margin.

### Marketing Performance Health Check

Give me a complete marketing health check. Analyze ad spend, attributed revenue, attributed orders, ROAS, MER, and profit contribution across all channels.

### Attribution by Channel

Show me how much revenue and profit each marketing channel has generated based on Bloom's attribution.

### Campaign Performance

Which marketing campaigns generated the highest attributed revenue, ROAS, and net profit this month?

### Scaling Opportunities

Which campaigns and products should I scale based on attributed revenue, profitability, and ROAS?

### Poor Performing Campaigns

Identify campaigns where ad spend is high but attributed revenue and profitability are low.

### Attribution Comparison

Compare attributed revenue across Meta, Google, TikTok, Klaviyo, Omnisend, and other connected marketing channels.

### Customer Acquisition Analysis

Analyze how customer acquisition costs (CAC) are impacting my profitability across marketing channels.

### Marketing ROI

Which marketing channels deliver the highest return on investment after accounting for product costs and operating expenses?

### Assisted Conversions

Show which marketing channels assist the most conversions, even if they aren't the last touch.

### Attribution Trends

How have attributed revenue and attributed orders changed over the last three months across all marketing channels?

### Channel Efficiency

Compare the efficiency of each marketing channel using ROAS, MER, CAC, attributed revenue, and net profit.

### Budget Optimization

Based on Bloom attribution, where should I reduce or increase advertising spend to maximize profitability?

### Campaign Comparison

Compare the performance of my top campaigns using attributed revenue, attributed orders, ROAS, and profit."

### Email Marketing Performance

Analyze my email marketing performance. Show attributed revenue, attributed orders, open rate, click rate, conversion rate, and profitability.

### Multi-Touch Attribution

Show how different marketing channels contributed throughout the customer journey using Bloom's attribution model.

### Marketing Funnel Analysis

Identify where customers are dropping off in the marketing funnel and recommend opportunities to improve conversion.


# Decision-Making Prompts

Ask Claude/ChatGPT to turn your Bloom data into strategic recommendations. Get guidance on scaling campaigns, optimizing marketing spend, improving profitability, prioritizing products, and making smarter business decisions.

<div><figure><img src="/files/I8OkVzteWu3eZf0M3GcZ" alt=""><figcaption></figcaption></figure> <figure><img src="/files/yhZ2ESdD1vHEbSfC4l3S" alt=""><figcaption></figcaption></figure></div>

### Should I Scale?

```
Based on my Bloom data, should I scale my current marketing spend? Explain using profitability, revenue, ROAS, and contribution margin.
```

### Best Growth Opportunities

```
Find the biggest opportunities to grow revenue while maintaining or increasing net profit. Recommend the products and campaigns with the highest growth potential.
```

### Profit Leak Finder

```
Act as a profit analyst and identify where my business is losing money. Highlight the biggest profit leaks and recommend how to fix them.
```

### Inventory & Profitability

```
Analyze which products generate the highest profits relative to sales volume and inventory. Identify slow-moving inventory that is hurting profitability.
```

### CEO Dashboard Review

```
Review my Bloom dashboard like a CEO. Summarize my sales, marketing performance, profitability, key risks, and the most important actions I should take today.
```

### Product Investment Decisions

```
Which products deserve more marketing investment based on their contribution margin, net profit, and attributed marketing performance?
```

### Channel Performance Review

```
Compare the performance of my sales and marketing channels. Which ones generate the highest revenue, profit, and return on ad spend?
```

### Pricing Strategy

```
Analyze my current product margins and recommend whether I should increase prices, reduce discounts, or adjust promotions to improve profitability.
```

### Cost Optimization

```
Identify the largest costs affecting my profitability and recommend where I can reduce expenses without negatively impacting revenue.
```

### Growth Readiness

```
Is my business ready to scale? Analyze revenue growth, profitability, marketing efficiency, and cash flow to support your recommendation.
```

Which customer acquisition channels deliver the most profitable customers, and where should I focus future marketing investment?

### Top Priorities

```
Based on my Bloom data, what are the top five actions I should take this month to improve revenue, profitability, and marketing performance?
```


# Store Performance Prompts

Ask Claude/ChatGPT to review your store's performance using Bloom data. Get insights into sales, orders, customers, products, marketing, and profitability to better understand your business health and growth.

<div><figure><img src="/files/Qlfawa3haB3C3UT7jGgu" alt=""><figcaption></figcaption></figure> <figure><img src="/files/qQvcolmHvK5chvUYtjS6" alt=""><figcaption></figcaption></figure></div>

#### Monthly Store Review

```
Show me a complete summary of my store's performance this month. Include revenue, orders, net profit, margins, and marketing performance.
```

#### Daily Business Snapshot

```
Give me a snapshot of today's store performance, including revenue, orders, ad spend, and net profit.
```

#### Weekly Performance Review

```
Summarize my store's performance this week. Highlight revenue trends, profitability, top-selling products.
```

#### Quarterly Business Review

```
Provide a quarterly review of my business performance, including sales, profitability, and key growth trends.
```

#### Revenue Trend Analysis

```
Analyze my revenue trends over the last three months and explain the biggest drivers of growth or decline.
```

#### Profit Trend Analysis

```
Show how my net profit, contribution margin, and gross margin have changed over time and explain what's driving the changes.
```

#### Sales Channel Performance

```
Compare the performance of my Shopify and Amazon stores. Show revenue, orders, profit, and growth for each sales channel.
```

#### Product Performance

```
Identify my best-performing and worst-performing products based on revenue, profit, conversion, and attributed marketing performance.
```

#### Order Performance

```
Analyze my orders to identify trends in average order value, discounts, refunds, returns, and their impact on profitability.
```

#### Country Performance

```
Show which countries or regions generate the highest revenue, profitability, and marketing return.
```

#### Business Health Check

```
Give me a complete business health check based on my Bloom dashboard. Highlight strengths, weaknesses, risks, and opportunities.
```

#### Performance Comparison

```
Compare this month's performance with last month's. Show changes in revenue, orders, marketing efficiency, and profitability.
```


# Enable Bloom Pixel - 3 Steps

### <mark style="color:blue;">**Step 1 of 3  - Enable Bloom App Embed**</mark> <a href="#https-docs.bloomanalytics.io-bloom-pixel-step-1-and-step-2-step-1-enable-app-embeds" id="https-docs.bloomanalytics.io-bloom-pixel-step-1-and-step-2-step-1-enable-app-embeds"></a>

{% embed url="<https://files.gitbook.com/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F9Cj862knfGNqzzPFauD6%2Fuploads%2FtgfRaOBbCcta0jRljrK9%2FBloom%20Pixel%20Step%201.mp4?alt=media&token=66caf244-0f8c-43b9-b2d0-da58464d4e64>" %}

#### 1. Access Your Shopify Admin Panel

* **Log In**: Go to [Shopify Admin](https://admin.shopify.com/) and log in to your account.

#### 2. Navigate to the Online Store Section

* **Sidebar Menu**: In the left-hand navigation menu, click on **"Online Store"**.

#### 3. Open the Theme Customization Editor

* **Themes Page**: Under **Online Store**, click on **"Themes"**.
* **Customize Theme**: Find your current theme and click on the **"Customize"** button.

#### 4. Access the App Embeds Menu

* **Theme Editor Sidebar**: In the theme editor, look to the left-hand sidebar.
* **App Embeds Icon**: Click on the **App Embeds** icon, usually represented by a puzzle piece symbol.

#### 5. Enable Bloom Pixel

* **Locate Bloom Pixel**: In the list of available app embeds, find **"Bloom Pixel"** by Bloom Analytics.
* **Toggle On**: Click the toggle switch next to **Bloom Pixel** to enable it.

#### 6. Save Your Changes

* **Save Button**: Click on the **"Save"** button located at the top right corner of the theme editor to apply your changes.

### <mark style="color:blue;">**Step 2 of 3- Enable Shopify Checkout Extension**</mark> <a href="#https-docs.bloomanalytics.io-bloom-pixel-step-1-and-step-2-step-2-add-an-app-block" id="https-docs.bloomanalytics.io-bloom-pixel-step-1-and-step-2-step-2-add-an-app-block"></a>

{% embed url="<https://files.gitbook.com/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F9Cj862knfGNqzzPFauD6%2Fuploads%2FTkb46Wzq9FW0xQ4LMszW%2FBloom%20Pixel%20Step%202.mp4?alt=media&token=428c7f32-4557-46ea-b8f0-50ec9b4ff2e8>" %}

#### **1. Access Shopify Admin Panel**

* Log in to your Shopify account and navigate to your **Admin panel**.

#### **2. Navigate to Online Store Settings**

* From the left navigation bar, click on **Online Store**.
* Select **Themes** from the dropdown.

#### **3. Open Theme Customization**

* On the **Themes** page, click on the **Customize** button next to your current theme. This opens the theme editor, allowing you to add, modify, or remove elements from various pages on your site.

#### **4. Select the Checkout Page**

* In the theme editor, locate the top navigation bar, which displays a dropdown menu of your store’s pages.
* Click the dropdown and choose **Checkout** from the list of pages.

#### **Important Note: Upgrade Checkout Extensibility (If Required)**

If you see an **“Upgrade required”** button while adding the Bloom Analytics checkout extension, you need to be upgraded to enable Checkout Extensions.

To upgrade:

1. Go to **Shopify Admin → Settings → Checkout**
2. Click the **Upgrade** notice/button shown on the page.

<figure><img src="/files/OZABNqyB6juYc9F5xAaz" alt=""><figcaption></figcaption></figure>

#### **5 . Switch to Thank-You Page View**

* Go to the same dropdown menu in the top navigation and select **Thank you**. This is where you’ll add the app block to display custom insights after customer transactions.

#### **6. Add the Bloom Analytics App Block**

* In the theme editor's side navigation panel, scroll and click on **Add app block**.
* Look for the **checkout-analytics (Bloom Analytics)** app block and select it. This will add the app block to the checkout and thank-you pages of your store.

#### **7 . Save Your Changes**

* To finalize, click on **Save** in the top navigation bar

### <mark style="color:blue;">Step 3 of 3 - Add Dynamic UTM Parameters</mark>

To enable Bloom to track your campaigns accurately, you need to add UTM parameters. Follow the steps below to set up UTM parameters for your specific channel.

<table data-full-width="false"><thead><tr><th width="201.111083984375" align="center">UTM  Parameters</th></tr></thead><tbody><tr><td align="center"><a href="https://docs.bloomanalytics.io/bloom-pixel/enable-bloom-pixel-3-steps/meta-ads-utm-parameter">Meta Ads</a></td></tr><tr><td align="center"><a href="https://docs.bloomanalytics.io/bloom-pixel/enable-bloom-pixel-3-steps/google-ads-utm-parameter">Google Ads</a></td></tr></tbody></table>

<br>


# Meta Ads UTM Parameter

Meta Ads (Facebook & Instagram) run multiple campaigns and ads simultaneously. By adding Bloom’s tracking parameters, Bloom can **accurately attribute each visitor and conversion** to the exact campaign and ad, giving you a clear view of your marketing performance.

#### When adding UTMs, choose from the following to ensure accurate tracking by Bloom:

### [If You Have Existing UTM Parameters in Your Ads](https://docs.bloomanalytics.io/bloom-pixel/enable-bloom-pixel-3-steps/meta-ads-utm-parameter/if-you-have-existing-utm-parameters-in-your-ads)

### [If You Have No Existing UTM Parameters](https://docs.bloomanalytics.io/bloom-pixel/enable-bloom-pixel-3-steps/meta-ads-utm-parameter/if-you-have-no-existing-utm-parameters)

### [To Verify Added Parameters](https://docs.bloomanalytics.io/bloom-pixel/enable-bloom-pixel-3-steps/meta-ads-utm-parameter/verify-added-parameters)


# If You Have Existing UTM Parameters in Your Ads

1. Open **Meta Ads Manager**.
2. Select the **campaigns** you want to edit, then select the **ads** view.

<figure><img src="/files/4ocYz5HOhhleFudaBeTk" alt=""><figcaption></figcaption></figure>

3. Hover over any of the ads and click **Edit**.

<figure><img src="/files/WsBI7qpf21kR3m1VMzNh" alt=""><figcaption></figcaption></figure>

4. Scroll to **Tracking > URL Parameters** and add the parameters mentioned below to your existing parameters

```
&bl_source=facebook&bl_campaign={{campaign.id}}&bl_adid={{ad.id}}.
```

<figure><img src="/files/FUroUG267CyqXYxmOYoc" alt=""><figcaption></figcaption></figure>

5. Click Publish.


# If You Have No Existing UTM Parameters

1. Select the **campaigns** you want to edit.

<figure><img src="/files/zLvHdgtVouzJsjjRiIow" alt=""><figcaption></figcaption></figure>

2. Move to **ads view** and select the ads you need to edit.

<figure><img src="/files/zQqt9rQej5KW4E5GNrZe" alt=""><figcaption></figcaption></figure>

3. In the **Edit** dropdown, click **URL Parameters**.

<figure><img src="/files/U6NDCnG3yu1bjtYoiiem" alt=""><figcaption></figcaption></figure>

4. Paste the following template into **Edit all selected ads**.

```
utm_source={{site_source_name}}&utm_medium=paid&utm_campaign={{campaign.name}}&bl_campaign={{campaign.id}}&utm_term={{adset.name}}&utm_content={{ad.name}}&bl_adid={{ad.id}}
```

<figure><img src="/files/FZGrG4WlGglsBCMXnyS9" alt=""><figcaption></figcaption></figure>

5. Save the draft, review, and publish the changes in Ads Manager.


# To Verify Added Parameters

1. In **Ads Manager**, go to **Columns > Custom.**

<figure><img src="/files/xVlVeAnBy0qMjGW2SARK" alt=""><figcaption></figcaption></figure>

2. Search for **URL Parameters** and apply.

<figure><img src="/files/NC7sPNAVEIOJAqz1rY9T" alt=""><figcaption></figcaption></figure>

3. Check that the added parameters are correctly reflected for each ad.

<figure><img src="/files/UtkLnd6XeRBPPaS4uydx" alt=""><figcaption></figcaption></figure>

4. If parameters are missing or incorrect, edit the ad(s) and repeat the steps above.

#### Must Have UTM Parameters&#x20;

When adding any other UTMs, make sure your tracking parameters always include at least one of the following options, which can be used in any of these formats:

#### Source Parameters:

Use at least one of the following parameter values

```
bl_source=facebook
utm_source=facebook
bl_source={{site_source_name}}
utm_source={{site_source_name}}
```

#### Campaign Parameters:

Use at least one of the following parameter values

```
bl_campaign={{campaign.id}}
utm_campaign={{campaign.id}}
```

#### Ad Parameters:

Use at least one of the following parameter values

```
bl_adid={{ad.id}}
utm_adid={{ad.id}}
```

#### Template if no parameters exist:

```
utm_source={{site_source_name}}&utm_medium=paid&utm_campaign={{campaign.name}}&bl_campaign={{campaign.id}}&utm_term={{adset.name}}&utm_content={{ad.name}}&bl_adid={{ad.id}}
```


# Google Ads UTM Parameter

To ensure Bloom accurately tracks all your Google Ads campaigns, you can apply UTM parameters at the **account level**. This method automatically applies tracking to every campaign and ad in your account, ensuring consistent data capture without manual setup for each campaign.

### **Steps to Add UTM Parameters**

1. Log in to your **Google Ads** account.
2. In the left-hand menu, go to **Admin**.
3. Select **Account Settings**.
4. Scroll down to the **Tracking** section.

<figure><img src="/files/OuGfhEqSLzbESr72L8ec" alt=""><figcaption></figcaption></figure>

5. Under **Final URL suffix**, paste the following UTM parameters:

```
bl_source=google&bl_campaign={campaignid}&bl_adid={creative}
```

6\.  Before saving, click the **Test** toggle located next to the Final URL suffix field.<br>

* Google Ads will validate your tracking setup.
* If there’s an issue with the parameters, you’ll see an error message — fix it before saving.

7\.   Once the test passes successfully, click **Save** to apply your changes.

<figure><img src="/files/idh9kdPmZEbbkyAWmbz1" alt=""><figcaption></figcaption></figure>


# TikTok Ads UTM Parameter

**Where to Add:**

* TikTok Ads Manager > Campaigns > Ad Details > URL Settings > Tracking URL field

**Snippet to Use:**

```html
{lpurl}?bl_source=tiktok&bl_adid=__CID__
```

**Notes:**

* `tiktok` is manually added as the source, and `__CID__` is TikTok’s dynamic parameter for ad ID.
* Ensure the tracking URL is added at the ad level in TikTok Ads Manager to properly track campaign performance.
* Verify that no conflicting tracking templates or parameters are set at the campaign or ad group level to avoid overriding the UTM setup.

<figure><img src="/files/ofufDFBD7Nd1rz7Z4keL" alt=""><figcaption></figcaption></figure>


# Klaviyo UTM Parameters

Easily track the performance of your Klaviyo campaigns and flows by adding UTM parameters to your links. This allows you to analyze campaign- and flow-level engagement in tools like Google Analytics, ensuring accurate attribution and helping you optimize your email and SMS marketing efforts.

### Steps for Account-Level UTM Setup

**Step 1:** Access UTM Settings

* Go to **Settings → Other** in your Klaviyo account.

<figure><img src="/files/OBXLSZP5suo2x0an6LtW" alt=""><figcaption></figcaption></figure>

**Step 2:** Enable UTM Tracking

* Click on **UTM Tracking**.

<figure><img src="/files/bvC37FjQKwtdebVE8SCC" alt=""><figcaption></figcaption></figure>

**Step 3:** Select UTM Parameters

* Click on the check for **Campaign (utm\_campaign)** and **ID (utm\_id)**.
* ⚠️ Ensure that the campaign value and flow value match the recommended format shown in the image below.

<figure><img src="/files/s9VJGog4G2AwjkwzIjp2" alt=""><figcaption></figcaption></figure>

**Step 4:** Enable Automatic UTM Application

* Turn **Automatically add UTM parameters to links** **ON**.

<figure><img src="/files/QEwUkSyTKJqPlT2XbnZZ" alt=""><figcaption></figcaption></figure>

**Step 5:** Save Changes

* Click **Save** to apply your account-level UTM settings.

<figure><img src="/files/jGlFjm5yaE73V2zY6txb" alt=""><figcaption></figcaption></figure>

### To verify UTM parameters

**Campaign Settings:**

* When editing a campaign, scroll to the **Tracking** section.
* Ensure **Include tracking parameters** is **ON**.<br>

**Flow Settings:**

* Edit your flow and open each **Email** or **SMS** action.
* In the **Settings** section (right-hand column), make sure **Enable UTM Tracking** is **ON**.


# Snapchat Ads UTM Parameters

To ensure accurate tracking of your Snapchat campaigns, you need to append UTM parameters to the destination URLs of your ads. This allows Bloom Profit Analytics to capture campaign, ad, and ad set data for better performance insights. Since Snapchat does not support bulk editing of tracking parameters, these steps must be followed for each ad individually.

### Steps to Add UTMs to Snapchat Ads

**Step 1:** **Open Manage Ads -** In your Snapchat Ads Manager, go to the **Manage Ads** table.

**Step 2:** **Select Ads Section -** Click the **“Ads”** tab located at the top-left of the table.

**Step 3:** **Access Edit Option -** Hover over any ad to reveal the **“Edit”** button. Click it, and an editing window will appear on the right side of your screen.

<figure><img src="/files/Q1gE4aP40m8IwPjAGDlE" alt=""><figcaption></figcaption></figure>

**Step 4:** **Edit Ad Creative -** In the top-right corner of the edit window, click **“Edit ad creative.”**

<figure><img src="/files/BnjyFgc9sV1QbOkYrL75" alt=""><figcaption></figcaption></figure>

**Step 5: Locate Website URL Field -** Scroll down to the **Website URL** field.

**Step 6:** **Update URL with UTMs -** Copy the UTM parameters below and paste them at the end of your landing page URL.

```
?utm_source=snapchat&ad_id={{ad.id}}&utm_campaign={{{campaign.id}}
```

\
**Step 7:** **Save URL -** Paste the updated URL into the **Website URL** field and click **Publish**. To verify, reopen the ad and confirm that the URL appears correctly in the field..

<figure><img src="/files/eSdCnMYbQ6UdWNixQaEa" alt=""><figcaption></figcaption></figure>

**Note:** <br>

* You must repeat this process for each ad individually, as Snapchat does not allow bulk updates for tracking parameters.<br>
* Any new ads created will also need the UTM parameters applied. You can follow the same process above or refer to the tutorial when creating new ads.


# Pinterest Ads UTM Parameter

Easily track the performance of your Pinterest ads by adding UTM parameters to your destination URLs. This helps you analyze campaign, ad group, and ad-level data in tools like Google Analytics, ensuring accurate attribution and better optimization decisions.

### Steps to Add UTMs to Pinterest Ads

**Step 1:** In your Pinterest Business account, go to **Ads** → **Reporting**.

**Step 2:** In the Campaigns reporting table, locate the ad you want to update and click the **edit icon** next to it.

<figure><img src="/files/uSrQnWOb8vS6QsNpFynX" alt=""><figcaption></figcaption></figure>

**Step 3:** Scroll down to the **Ad Setup Details** section.

**Step 4:** Copy the pre-configured URL below and replace *\<your\_website>* with your actual landing page.

```
<your_website>?utm_source=pinterest&ad_id={adid}&campaign_id={campaignid}
```

**Step 5.** Paste the updated URL into the **Destination URL** field and click **Save**.

<figure><img src="/files/tI5cjT1yoKA9Ddg7wrE1" alt=""><figcaption></figcaption></figure>


# Bing Ads (Microsoft Advertising)

**Where to Add:**

* Bing Ads > Campaigns > Settings > Account level options > Tracking template field

**Snippet to Use:**

```html
{lpurl}?bl_source=bing&bl_campaign={CampaignId}&utm_term={AdGroupId}&bl_adid={adid}
```

**Notes:**

* `bing` is manually added as the source, and `{adid}` is Bing’s dynamic parameter.
* As with Google Ads, Bing Ads allows overriding templates at campaign level. Make sure no other tracking templates conflict with your setup.

<figure><img src="/files/wEZH4gvzpGNMuFcnZKd1" alt=""><figcaption></figcaption></figure>


# Track organic traffic using UTM

A [UTM](https://support.google.com/analytics/answer/10917952?hl=en#zippy=%2Cin-this-article) is a small piece of code added to the end of a URL that allows you to track where your traffic is coming from and how your campaigns and content are performing.

By using Bloom Analytics, you can track your [organic traffic](https://useinsider.com/glossary/organic-traffic/#:~:text=Organic%20traffic%20is%20those%20visitors,Google%2C%20Yahoo%2C%20or%20Bing.) with UTM links. When you add UTM parameters to links shared in places like social media, blog posts, or emails, Bloom can show you where your visitors are coming from. This helps you understand which channels or content bring the most traffic to your store, even if you're not running ads.

### UTM Parameter Breakdown

| Parameter     | Purpose                   | Example Value    |
| ------------- | ------------------------- | ---------------- |
| utm\_source   | The platform or source    | Instagram        |
| utm\_medium   | The type of traffic       | Organic          |
| utm\_campaign | Name of your campaign     | Black Friday     |
| utm\_content  | Placement or ad variation | Bio, Feed, Reels |

### How to Use UTM Parameters to Track Instagram Bio, Posts, and Reels

**UTM link examples**&#x20;

* **For Instagram Bio**

Use this in your Instagram bio link, especially if you change it based on promos or launches.

```
https://yourwebsite.com/?utm_source=instagram&utm_medium=organic&utm_campaign=bio&utm_content=linkinbio
```

* **For Instagram Story**

Use this when adding a swipe-up link or link sticker in an Instagram Story.

```
https://yourwebsite.com/?utm_source=instagram&utm_medium=organic&utm_campaign=product-launch&utm_content=story
```

### How to Use UTM Parameters to Track Facebook Posts, Ads, and Stories

**UTM link examples**&#x20;

* **Facebook Organic Post**

Use this when sharing a link in a regular Facebook post on your business page or personal profile.

```
https://yourwebsite.com/?utm_source=facebook&utm_medium=organic&utm_campaign=spring-launch&utm_content=feed-post
```

* **Facebook Story**

Use this when sharing a link in your Facebook Story (for pages with link-sharing capability or with a "swipe up" equivalent).

```
https://yourwebsite.com/?utm_source=facebook&utm_medium=organic&utm_campaign=new-arrival&utm_content=story
```

* **Facebook Group Links**

Facebook Groups and Communities are powerful spaces for niche engagement. Whether you're sharing links in your own group or participating in others, UTM parameters help you track exactly how much traffic you're getting from those efforts.

UTM Example for Facebook Group Links:

```
https://yourwebsite.com/?utm_source=facebook&utm_medium=organic&utm_campaign=group-strategy&utm_content=community-post
```


# Setting Up Bloom Custom Pixel

#### Step 1 - Create the subdomain bloom.\[your-domain]  and add the following CNAME record:

{% code fullWidth="false" %}

```
Name: bloom.[your-domain]

Value: pixel.bloominsights.io
```

{% endcode %}

### Step 2 -  Add the ACME challenge CNAME record:

```
Name: _acme-challenge.bloom.[your-domain]

Value: bloom.[your-domain].5179df691247841b.dcv.cloudflare.com
```

When adding the CNAME records, make sure to replace **\[your-domain]** with your actual store domain. For example:

* For a domain of **example.com**, substitute **\[your-domain]** with **example.com**.
* For a domain of **example.com.au**, substitute **\[your-domain]** with **example.com.au**.

Note: This applies to **all domain extensions**, including but not limited to `.com`, `.com.au`, `.co.uk`, `.in`, `.net`, `.store`, etc.

Once both records have been added, please notify us so we can configure event routing for your domain.


# Setting Up The Bloom Custom Pixel

### Step 1: Adding a Custom Domain

&#x20;To set up your custom domain bloom.minimax.com.au, follow these steps:

#### 1. Create the subdomain bloom.minimax.com.au and add the following CNAME record:

```
Name: bloom.minimax.com.au

Value: pixel.bloominsights.io
```

#### 2.  Add the ACME challenge CNAME record:

```
Name: _acme-challenge.bloom.minimax.com.au

Value: bloom.minimax.com.au.5179df691247841b.dcv.cloudflare.com
```

Once both records have been added, please notify us so we can configure event routing for your domain.

### Step 2: Implement the Bloom Custom Pixel

To add the Bloom custom pixel to your Shopify store, follow these steps:<br>

1. Log in to your Shopify admin panel and navigate to **Settings > Customer events**.
2. Click on **" Add custom pixel"**

<figure><img src="/files/XCrhAFca0QjDVFkA9hQV" alt=""><figcaption></figcaption></figure>

3. Provide a custom name for your pixel. You’ll be prompted to change it if it’s already in use.

<figure><img src="/files/Ez3J6U0033IfCmI55LfM" alt=""><figcaption></figcaption></figure>

4. Update the privacy setting.

<figure><img src="/files/OuSFtlwljD2ew07I5TZh" alt=""><figcaption></figcaption></figure>

5. Clear any existing code and paste the BloomPixel Customer Events JavaScript code shown below.

```
analytics.subscribe("checkout_completed", async (event) => {
  try {
    const checkout = event.data.checkout;
    const visitorId = document.cookie
      .split(';')
      .find(c => c.trim().startsWith('bloom_tracker_v10='))
      ?.split('=')[1] || null;

    
        await fetch('https://bloom.minimax.com.au', {
      method: 'POST',
      headers: { 'Content-Type': 'application/json' },
      body: JSON.stringify({
        event: 'checkout_completed',
        url: event.context?.document?.location?.href,
        cookie_value: visitorId,
        event_payload: JSON.stringify({
          orderId: checkout.order?.id,
          checkoutToken: checkout.token
        }),
        source: 'CustomBloomPixel',
        shop: event.context?.document?.location?.host,
        storeFrontURL: event.context?.window?.origin,
        buyerEmail: checkout.email
      }),
      keepalive: true
    });
  } catch (error) {
    console.error('Bloom tracking error:', error);
  }
});
```

<figure><img src="/files/wFalgZpdfttZI4GpC5hq" alt=""><figcaption></figcaption></figure>

6. **Save your changes** and verify that the pixel is firing correctly on your storefront.


# Implementing Bloom Custom Pixel

Note: Please ensure all steps in “[Setting Up the Bloom Custom Pixel](https://docs.bloomanalytics.io/~/revisions/XMbKSjK2DLqHwsienmXB/bloom-pixel/setting-up-the-bloom-custom-pixel-1)” are completed before proceeding.

#### Step 1 - Log in to your Shopify admin panel and navigate to **Settings > Customer events**.

#### Step 2 - Click on **" Add custom pixel"**

<figure><img src="/files/XCrhAFca0QjDVFkA9hQV" alt=""><figcaption></figcaption></figure>

####

#### Step 3 - Provide a custom name for your pixel. You’ll be prompted to change it if it’s already in use.

<figure><img src="/files/Ez3J6U0033IfCmI55LfM" alt=""><figcaption></figcaption></figure>

#### Step 4 - Update the privacy setting.

<figure><img src="/files/OuSFtlwljD2ew07I5TZh" alt=""><figcaption></figcaption></figure>

#### Step 5 - Paste your BloomPixel Customer Events JavaScript code into the code window. Save your changes and confirm the pixel is firing correctly on your storefront.

Ensure you replace **\[your-domain]** in the script with your actual domain (e.g., **example.com** or **example.com.au**) before adding it.<br>

<pre><code>
analytics.subscribe("checkout_completed", async (event) => {
  try {
    const checkout = event.data.checkout;
    const visitorId = document.cookie
      .split(';')
      .find(c => c.trim().startsWith('bloom_tracker_v10='))
      ?.split('=')[1] || null;

    
        await fetch('https://bloom.<a data-footnote-ref href="#user-content-fn-1">[your-domain]</a>', {
      method: 'POST',
      headers: { 'Content-Type': 'application/json' },
      body: JSON.stringify({
        event: 'checkout_completed',
        url: event.context?.document?.location?.href,
        cookie_value: visitorId,
        event_payload: JSON.stringify({
          orderId: checkout.order?.id,
          checkoutToken: checkout.token
        }),
        source: 'CustomBloomPixel',
        shop: event.context?.document?.location?.host,
        storeFrontURL: event.context?.window?.origin,
        buyerEmail: checkout.email
      }),
      keepalive: true
    });
  } catch (error) {
    console.error('Bloom tracking error:', error);
  }
});
</code></pre>

<figure><img src="/files/nBdRCz7y7XnkImneIPZa" alt=""><figcaption></figcaption></figure>

#### Step 6 -Save your changes and verify that the pixel is firing correctly on your storefront.

[^1]: Replace this with your actual domain.


