Skip to main content

Marketing Mix Modeling MCP server — CSV in, budget recommendations out.

Project description

MixLift

Find the wasted dollars in your ad budget. In 5 minutes. For $299/month.

MixLift is a marketing mix model that runs inside Claude. Give it a CSV of your weekly ad spend and revenue, and it tells you exactly which channels are overspent, which are underspent, and how to reallocate for more revenue. No dashboards to learn, no analysts to hire — just ask Claude a question and get an answer.


Quick Start

Three steps. Five minutes. No data science degree required.

Step 1: Install MixLift

Open your terminal (on Mac: search for "Terminal" in Spotlight) and paste this command:

pip install mixlift

Not sure if you have Python? Run this first:

python3 --version

You need Python 3.11 or higher. If you see something like Python 3.11.5 or Python 3.12.0, you're good. If you get an error or see a version below 3.11, install Python from python.org/downloads.

Step 2: Connect MixLift to Claude Desktop

MixLift works as a tool inside Claude Desktop. You need to tell Claude where to find it.

On macOS, open Terminal and paste:

open ~/Library/Application\ Support/Claude/claude_desktop_config.json

On Windows, open File Explorer and go to:

%APPDATA%\Claude\claude_desktop_config.json

Add or replace the contents with:

{
  "mcpServers": {
    "mixlift": {
      "command": "mixlift-mcp"
    }
  }
}

If the file already has other servers, just add the "mixlift" block inside "mcpServers".

Save the file and restart Claude Desktop (quit and reopen it).

Step 3: Try It

Open Claude Desktop and type:

Run mixlift_analyze with no arguments

Claude will run MixLift on a built-in demo dataset and show you channel performance, ROAS, and budget recommendations. If you see results, everything is working.


What You Get

  • "Move $3,200 from Google to Meta for +12% revenue" — Ranked budget reallocation recommendations you can act on today
  • Return on ad spend per channel — See which channels earn the most per dollar, with confidence ranges (not just point estimates)
  • Diminishing returns analysis — Know exactly where each channel starts wasting money (marginal ROAS)
  • Optimal budget split — The mathematically best allocation across all your channels, with expected revenue lift
  • Saturation curves — Visual proof of where you're overspending and where there's headroom
  • Model quality checks — Convergence diagnostics so you can trust the numbers

Your Data

CSV Format

The simplest format is a spreadsheet with one row per week:

date google_ads_spend meta_spend tiktok_spend revenue
2025-09-01 5243.77 5658.76 1991.60 61475.19
2025-09-08 4237.89 7190.88 1825.93 59907.05

Rules:

  • A date column (weekly dates work best — at least 26 weeks of data)
  • One or more columns ending in _spend for your ad channels
  • A revenue, sales, or target column

Export your data from your ad platform, drop it into a spreadsheet, and save as CSV. That's it.

A sample CSV is included at tests/fixtures/sample_marketing_data.csv if you want to see the exact format.

Supported Exports

  • Meta Ads Manager
  • Google Ads
  • TikTok Ads

Need Help Formatting?

Ask Claude: "Help me prepare my marketing data CSV for MixLift." Claude can walk you through exporting from your ad platform and combining the data into a single file.


Pricing

Plan Channels Data Rows Runs Price
Free 2 2,000 2/month $0
Growth 8 50,000 Unlimited $299/month

Start free. Upgrade when you need more channels or runs: mixlift.io/pricing


How It Works

  1. You give Claude a CSV of your weekly ad spend and revenue
  2. MixLift fits a Bayesian model to your data using MCMC sampling (~30-60 seconds)
  3. The model learns how each channel drives revenue, including diminishing returns
  4. An optimizer finds the best way to reallocate your budget
  5. Claude returns the results in plain English with specific dollar recommendations

Under the hood, MixLift uses PyMC-Marketing, the same Bayesian framework used by data science teams at large brands. You get the same methodology without needing a data scientist.


Headless Python API

If you want to use MixLift from your own Python code (no Claude required):

from mixlift import analyze

results = analyze("data.csv")

The results dictionary contains channel ROAS, marginal ROAS, optimal budget allocation, and recommendations.


Scenario Mode

Ask Claude "what if" questions about your budget:

"What happens if I cut Meta spend by 20%?"

"Move $5,000 from Google to TikTok and show me the impact."

"What's the optimal budget if I increase total spend by $10,000/month?"

MixLift runs the scenario through the model and shows you the projected revenue change.


Support

Questions or issues? Open a ticket: GitHub Issues


License

MIT

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

mixlift-0.5.3.tar.gz (892.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

mixlift-0.5.3-py3-none-any.whl (225.1 kB view details)

Uploaded Python 3

File details

Details for the file mixlift-0.5.3.tar.gz.

File metadata

  • Download URL: mixlift-0.5.3.tar.gz
  • Upload date:
  • Size: 892.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for mixlift-0.5.3.tar.gz
Algorithm Hash digest
SHA256 8e5ce36c695d95c59504e241bcc563130dc61341f23395ee541519ed9a80c1dc
MD5 a5c5b22e573e7c7d9fe40deb16c32b15
BLAKE2b-256 3186cd6f4f574125725d6434669bb97dbd77dbefe6374e85ad08ee0cf85d9448

See more details on using hashes here.

Provenance

The following attestation bundles were made for mixlift-0.5.3.tar.gz:

Publisher: release.yml on elfelixnavidad/software-projects

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file mixlift-0.5.3-py3-none-any.whl.

File metadata

  • Download URL: mixlift-0.5.3-py3-none-any.whl
  • Upload date:
  • Size: 225.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for mixlift-0.5.3-py3-none-any.whl
Algorithm Hash digest
SHA256 9950f8726b61c01e54811b41223cbf5b742af8074901952f563ef50f93af6018
MD5 4d5504dad9947b8abefa95a7ef36e765
BLAKE2b-256 b6ba73ec2bd20d13c8af14cb2ff42356975e94f91505ed37e7bb9162cc2d522a

See more details on using hashes here.

Provenance

The following attestation bundles were made for mixlift-0.5.3-py3-none-any.whl:

Publisher: release.yml on elfelixnavidad/software-projects

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page