MerchantFlowMerchantFlow Docs
Dashboard

Marketing Attribution System

Track which channels and campaigns drive revenue. Set up attribution rules for UTM, order tags, and product-based matching in MerchantFlow.

Marketing Attribution System

The MerchantFlow attribution system connects revenue and expenses to the marketing channels, campaigns, and projects that generated them. By setting up attribution rules, you can calculate the true ROI of every marketing initiative and make data-driven budget allocation decisions.

What Is Marketing Attribution?

Marketing attribution is the process of assigning credit for revenue and expenses to their sources:

  • Which projects generated revenue?
  • Which marketing channels drove sales?
  • What is the ROI of each campaign?
  • Which initiatives are profitable?

Why Attribution Matters

Without attribution:

  • You know total revenue but not which campaigns worked
  • Cannot calculate ROI for specific marketing channels
  • Cannot identify which projects are profitable
  • Cannot make data-driven marketing budget decisions

With attribution:

  • See revenue broken down by marketing channel
  • Calculate ROI for each project and campaign
  • Identify highest-performing campaigns
  • Allocate budget to the best-performing channels

How to Access the Attribution Dashboard

Navigate to Dashboard > Attribution to access the attribution system.

The Attribution Dashboard shows:

  • Projects overview with ROI metrics
  • Channels overview with ROAS metrics
  • Attribution rules configuration
  • Revenue attribution summary
  • Expense attribution summary
  • ROI breakdown by project and channel

Attribution Components

What Are Projects?

Projects are business initiatives or campaigns you want to track:

  • Product launches
  • Seasonal campaigns (e.g., "Holiday 2025 Campaign")
  • Market expansion initiatives
  • Website redesigns
  • Influencer partnerships
  • Content marketing initiatives

Project tracking includes: revenue generated, expenses incurred, profit/loss, ROI percentage, duration, and status (active/completed).

What Are Channels?

Channels are marketing traffic sources:

  • Google Search (organic)
  • Google Ads (paid search)
  • Facebook/Instagram Ads
  • Email marketing
  • Affiliate marketing
  • Influencer partnerships
  • Organic social, direct traffic, and referral traffic

Channel tracking includes: revenue attributed, ad spend, ROAS (Return on Ad Spend), conversion rate, and customer acquisition cost.

What Are Attribution Rules?

Attribution rules automatically assign revenue to projects and channels based on order data:

  • UTM parameter matching -- assign orders based on utm_source, utm_medium, or utm_campaign
  • Order tag matching -- assign orders based on e-commerce platform tags
  • Product-based attribution -- assign all sales of a specific product to a project
  • Date-based attribution -- assign orders within a date range to a project
  • Multi-condition (advanced) rules -- combine multiple conditions with AND/OR logic

How to Set Up Attribution

Step 1: Initialize the System

  1. Go to Dashboard > Attribution
  2. Click "Initialize Attribution"
  3. The system analyzes your data (existing UTM parameters, order sources, traffic channels)
  4. Initial projects and channels are created automatically
  5. Process takes 2-5 minutes

The initialization step analyzes historical orders, detects common channels, suggests projects based on patterns, and creates default rules.

Step 2: Create Projects

  1. Go to Dashboard > Attribution > Projects
  2. Click "Create Project"
  3. Fill in details:
    • Name -- descriptive name (e.g., "Q1 2026 Product Launch")
    • Description -- what is this project?
    • Start date -- when the project begins
    • End date -- when the project ends (optional for ongoing)
    • Budget -- expected expenses (optional)
    • Revenue goal -- target revenue (optional)
  4. Click "Save"

Use clear, descriptive names like "Holiday 2025 Campaign" or "Instagram Influencer Partnership Q1" rather than generic labels like "Project 1".

Step 3: Define Channels

  1. Go to Dashboard > Attribution > Channels
  2. Click "Create Channel"
  3. Fill in details:
    • Name -- channel name (e.g., "Facebook Ads")
    • Type -- Paid, Organic, Email, Social, Direct, or Referral
    • Description -- optional notes
    • Default allocation -- how to attribute if no specific rule matches
  4. Click "Save"

MerchantFlow auto-creates common channels including Google Ads, Meta Ads, Email, Organic Search, Direct, and Referral. Create custom channels for specific influencers, affiliate partners, or niche platforms.

Step 4: Set Up Rules

UTM-Based Rules

Match orders by UTM parameters:

  1. Click "Create Rule"
  2. Select "UTM Matching"
  3. Configure the UTM parameter to match (source, medium, campaign) and the value (e.g., "facebook", "spring_campaign")
  4. Assign to a project and/or channel
  5. Save

Example:

  • Rule: utm_source = "facebook" assigns to Channel: "Facebook Ads"
  • Rule: utm_campaign = "holiday2025" assigns to Project: "Holiday 2025 Campaign"

Order Tag Rules

Match by order tags from your e-commerce platform:

  1. Create rule and select "Order Tag Matching"
  2. Enter the tag to match (e.g., "influencer_sarah")
  3. Assign to a project/channel
  4. Save

Product-Based Rules

Attribute by product sold:

  1. Create rule and select "Product Matching"
  2. Choose a product or product category
  3. Assign to a project
  4. Save

Use case: Product launches where all sales of the new product should be attributed to the launch project.

Date-Based Rules

Attribute by order date range:

  1. Create rule and select "Date Range"
  2. Set start and end dates
  3. Optionally add filters (product, channel)
  4. Assign to a project
  5. Save

Use case: Time-bound campaigns where all sales within a period count toward a project.

Multi-Condition Rules

Combine multiple conditions:

  1. Create rule and select "Advanced"
  2. Add multiple conditions with AND/OR logic
  3. Assign to a project/channel
  4. Save

Example: (utm_source = "facebook" OR utm_source = "instagram") AND utm_campaign = "spring2026" assigns to Project: "Spring 2026 Social Campaign" and Channel: "Meta Ads".

How Rule Priority Works

When multiple rules match an order, priority determines which rule applies:

  1. Manual assignments (override all)
  2. Product-specific rules
  3. UTM campaign rules
  4. UTM source rules
  5. Date-based rules
  6. Default channel assignment

Drag and drop rules to change priority order. The first matching rule wins.

How to Read Attribution Reports

Project Performance

Navigate to Dashboard > Attribution > Projects to see:

  • Project name, revenue attributed, expenses attributed
  • Profit (Revenue - Expenses)
  • ROI % calculated as ((Profit / Expenses) x 100)
  • Status (active/completed)

Click any project for detailed breakdowns: revenue by channel, expense by category, timeline, attributed orders, and products sold.

Channel Performance

Navigate to Dashboard > Attribution > Channels to see:

  • Channel name, revenue attributed, ad spend
  • ROAS (Revenue / Ad Spend)
  • Orders, average order value, conversion rate

ROAS benchmarks:

  • 3x: Minimum viable
  • 4-5x: Good
  • 6x+: Excellent

Attribution Timeline

Click the "Timeline" tab to view revenue over time by project or channel. Use this to identify seasonal patterns, compare campaign effectiveness, and track project performance progression.

Unattributed Revenue

Navigate to Attribution > Unattributed to see orders without attribution. The goal is to keep unattributed revenue below 10%.

Common causes of unattributed revenue:

  • Missing UTM parameters on campaign links
  • Direct traffic without tracking
  • Returning customers from earlier campaigns
  • Missing attribution rules

How to Attribute Expenses

Manual Expense Attribution

When adding an expense, select a Project and Channel from the dropdown menus. This connects the expense to your ROI calculations.

Automatic Ad Spend Attribution

If Google Ads or Meta Ads are connected, ad spend is automatically attributed to the appropriate channel. Set up campaign name rules to auto-attribute ad spend to projects (e.g., campaign name contains "holiday" assigns to Project "Holiday Campaign").

How to Calculate ROI and ROAS

Project ROI Formula

ROI = ((Revenue - Expenses) / Expenses) x 100

Example: Project revenue $50,000 with $10,000 expenses = 400% ROI ($4 for every $1 spent).

ROI benchmarks: 100%+ profitable, 200%+ good, 400%+ excellent, 1000%+ outstanding.

Channel ROAS Formula

ROAS = Revenue / Ad Spend

Example: Channel revenue $30,000 with $6,000 ad spend = 5.0x ROAS.

ROAS vs. ROI: Use ROAS for channel comparison and ad optimization. Use ROI for overall project profitability including all costs.

Best Practices for Attribution

1. Use Consistent UTM Parameters

Standardize UTM naming conventions (e.g., always use "facebook" not "Facebook" or "FB"). Document standards and share with your team.

2. Create Projects Before Campaigns

Set up the project and attribution rules before launching a campaign. Retroactive attribution is more difficult.

3. Attribute All Marketing Expenses

Include ad spend, contractor fees, creative production costs, influencer payments, and content creation costs for accurate ROI.

4. Review Unattributed Revenue Weekly

Check unattributed revenue weekly, identify missing rules, and aim for less than 10% unattributed.

5. Archive Completed Projects

Mark finished projects as "Completed" and document learnings. This keeps your active projects list clean.

6. Use Attribution for Budget Decisions

Let attribution data guide budget allocation: increase spend on high-ROAS channels, pause low-ROI projects, and replicate successful strategies.

Advanced Attribution Features

Attribution Models

MerchantFlow supports five attribution models. Switch between models in Settings > Attribution or compare them side-by-side in the Model Comparison view at Dashboard > Attribution > Compare.

ModelHow Credit Is Assigned
First Touch100% credit to the first touchpoint in the customer journey
Last Touch100% credit to the last touchpoint before purchase
LinearEqual credit split across all touchpoints
Time DecayMore credit to touchpoints closer to purchase (7-day half-life)
Position-Based40% to first touch, 40% to last touch, 20% split among middle touchpoints

Use Model Comparison to see how revenue attribution shifts across models and identify which channels consistently contribute regardless of model choice.

Cross-Device Attribution

Currently relies on user authentication or UTM parameters. Enhanced cross-device tracking with better user identity resolution is planned.

Troubleshooting Attribution

Revenue Not Attributing

Verify that attribution rules exist, rules match order parameters, rule priority is not blocking, and orders have the necessary data (UTM params, tags).

Wrong Project or Channel Attribution

Review rule priority order. Make specific rules higher priority and adjust conditions for precision.

ROI Seems Wrong

Verify all expenses are attributed to the project, revenue is correctly attributed, the date range includes all relevant data, and there is no double-counting of expenses.

Expenses Not Showing in Project

Edit the expense to ensure a project is selected and the date range includes the expense date.

Frequently Asked Questions

How long does attribution initialization take?

The initialization process takes 2-5 minutes. It analyzes your historical orders, detects channels, and creates default rules automatically.

Can I change attribution rules retroactively?

Yes. When you update rules, MerchantFlow reprocesses historical orders to apply the new attribution logic.

What happens to attribution when I disconnect an ad platform?

Historical attribution data is preserved. New ad spend data stops syncing until you reconnect the platform.

Does attribution work with WooCommerce and Shopify?

Yes. Attribution works with both Shopify and WooCommerce stores, using order data and UTM parameters from either platform.

Related Guides


Last updated: March 14, 2026