You already ask an AI assistant about your numbers. Maybe you paste a payments report into Claude, or you connected your seller account and typed “what was my profit last month.” The reply is one sentence with a dollar figure to the cent. It reads finished.
That figure is five inputs wearing one number: sales, refunds, Amazon fees, ad spend and your cost of goods. They come from different systems and arrive on different days, and one of them never came from Amazon at all. The sentence sounds equally sure whether all five showed up or only three did.
This post follows one profit question from typing it to the number that comes back, then gives you five checks. The mechanics are the Seller Labs Amazon MCP’s. The checks work on any assistant, including one you feed a CSV.
The one decision: act on the number, or check it first
A profit answer is safe to act on when you can name three things for each of its five inputs: the source, the last date it covers, and whose cost figure it used. If you can’t, you have a draft.
What happens between the question and the number
An MCP server hands an assistant a list of tools it may call. If the term is new, the explainer covers it. For a profit question, the Seller Labs Amazon MCP’s path has four steps, and none of them runs until you ask.
- Who and when. Claude normally starts with
get_org_info, which returns your organization, your default marketplace and the current date. That gives Claude the date to resolve “last month” against, and a marketplace to default to. - Where profit lives. Your data sits in Data Hub, a managed MySQL warehouse of more than 50 tables. Claude can list the tables and their columns (SHOW TABLES, DESCRIBE) before it writes anything. Tables with standard names hold Amazon’s data. Tables prefixed
sl_add Seller Labs calculations. The profit tables aresl_tables:sl_daily_sku_profitfor profit by SKU, andsl_transactions_pivotfor what Amazon deducted from your seller balance. - One query. Claude writes SQL and sends it through
execute_sql. That tool accepts SELECT, SHOW TABLES, DESCRIBE, EXPLAIN and SET and rejects everything else, so a profit question cannot alter a row. - Rows in, sentence out. The database returns rows. Claude totals them, subtracts, rounds and writes the reply.
Steps 1 to 3 are lookups you can inspect. Step 4 is a language model reading a table. So the checks go there: ask for the query and the rows, never only the sentence.
One caution. The profit path only reads, but the server is not read-only. Other tools can change Sponsored Products bids and budgets, add or remove negative keywords, and update your COGS. Claude uses them only when you tell it to.
A worked example: one SKU, one month, two answers
Illustrative example
It is October 1. You sell a tumbler, SKU TMB-20, at $24.00 on Amazon.com, and you type: “What was my net profit on TMB-20 in September?”
Claude calls get_org_info, reads the date, runs one SELECT for that SKU, that marketplace and September 1 to 30, and replies: “TMB-20 made $3,132.00 in September on 600 units, or $5.22 a unit.”
You ask for the rows behind the sentence. They show this:
- Sales: 600 × $24.00 = $14,400.00
- Refunds, net of the fees Amazon credited back: $510.00
- Referral fees: 15% × $14,400.00 = $2,160.00
- FBA fulfillment: 600 × $5.10 = $3,060.00
- Storage and other Amazon charges: $90.00
- Amazon-side deductions in total: $5,820.00. That leaves $14,400.00 − $5,820.00 = $8,580.00 after Amazon.
- Ad spend in the rows: $1,848.00
- COGS in the rows: 600 × $6.00 = $3,600.00
$8,580.00 − $1,848.00 = $6,732.00, and $6,732.00 − $3,600.00 = $3,132.00. The arithmetic is right. Two of the inputs are not, and you would not know from the sentence.
Ad spend stops on September 28. Ads data runs two to three days behind, and you asked on the 1st. Your campaigns average $66.00 a day. The answer holds 28 × $66.00 = $1,848.00. The full month is 30 × $66.00 = $1,980.00. Missing: $1,980.00 − $1,848.00 = $132.00.
COGS is a placeholder. The $6.00 on file is a rough figure, exactly a quarter of the $24.00 price, and nobody ever replaced it with the landed cost. Your supplier invoice plus freight comes to $6.80 landed, and 600 × $6.80 = $4,080.00. Missing: $4,080.00 − $3,600.00 = $480.00.
The checked answer: $8,580.00 − $1,980.00 = $6,600.00, then $6,600.00 − $4,080.00 = $2,520.00. That is $4.20 a unit. The first reply said $5.22.
September was overstated by $3,132.00 − $2,520.00 = $612.00, the sum of the two gaps: $132.00 + $480.00 = $612.00. A third input is still moving: fees for orders placed in the last days of September can keep posting into October, so even the $8,580.00 is provisional on the 1st. This example holds it fixed to isolate the two gaps. The ad gap closes by itself in a few days. The COGS gap repeats every month until you enter the real cost: 12 × $480.00 = $5,760.00 a year of profit that does not exist, on one SKU.
It also moves a decision. Profit before ads, divided by sales, is your break-even ACoS. On the placeholder cost that is $4,980.00 ÷ $14,400.00, or 34.6%. On the real cost it is $4,500.00 ÷ $14,400.00, or 31.25%. Set your ceiling from the first answer and every sale you buy between 31.25% and 34.6% ACoS loses money while the report says it is fine.
The five checks, and the prompt that runs them
| Check | Ask | A pass looks like | A fail does this |
|---|---|---|---|
| 1. Dates | What are the first and last dates present for each input, and are they order dates or posting dates? | All five inputs cover the full window on one named date basis | Missing days count as zero. Month-end sales slide into the next month. |
| 2. Ad spend | Where did ad spend come from, and is any of it also inside the Amazon fee total? | One source, counted once | Ad spend is counted twice, or not at all |
| 3. COGS | What unit cost did you use for each SKU? | Every cost matches your invoice plus freight | A placeholder cost is multiplied by every unit sold |
| 4. Marketplace | Which marketplace and currency is this? | One marketplace per answer | Dollars, pounds and euros get added into a number that means nothing |
| 5. Tie-out | Do sales minus Amazon fees match my payments report for the same dates? | The two agree, or the difference is explained line by line | Rows are missing or doubled upstream, or the two sides use different clocks or date bases |
Paste this after any profit answer:
For the profit figure you just gave me, show your work. First, the exact query or file you used. Second, one row each for sales, refunds, Amazon fees, ad spend and COGS, with the source, the first and last date present, and the subtotal. Third, whether sales and fees are dated by order date or by posting date. Fourth, the unit cost you used for each SKU. Fifth, the marketplace and currency. Work separately per marketplace and never sum across marketplaces. Do not change anything in my account.
Where each input lives if you do it by hand
No connector is needed. Five inputs, three places.
- Sales, refunds and Amazon fees: Seller Central → Payments → Reports Repository → pick Summary or Transaction → set the date range → Request report. That is the path in Amazon’s Seller Forums guide to Payment Date Range Reports, which also says reports typically generate within 3 hours. Seller Labs’ Unified Transactions Report article labels the same route Finance → Manage payments → Reports Repository. The Transaction report is a CSV with one line per transaction, and its Date/Time column is when the transaction posted to your account.
- Ad spend: Amazon Ads console → the reports icon in the side navigation (the entry point Amazon Ads’ reporting guide gives), then create a Sponsored Products Advertised product report. Total the spend for the SKU over the same dates.
- COGS: your supplier invoice plus inbound freight and prep, per unit. Neither Amazon report has this number. You do.
The sum is short: sales, minus refunds, minus Amazon fees, minus ad spend, minus units times landed cost. Or upload the two files to Claude or ChatGPT, type in your landed cost, and paste the show-your-work prompt.
Watch the ad line. PPC Land reported on April 4, 2026 (updated April 9) that most sellers already have ad costs deducted from their retail proceeds, and that Amazon was moving the remaining advertisers off primary credit-card billing from April 15, 2026, with Pay by Invoice as the alternative. Your ad spend may already sit inside the payments report. Look for an advertising line there before you subtract it a second time.
Which check to run first
Do not audit the catalog. Start with your top 10 SKUs by sales and run the checks in this order.
- COGS. It is the only input that never corrects itself, and its error is multiplied by every unit, every month. One pass per SKU fixes it until your landed cost changes.
- Ad spend dates. In the support cases we have seen, this bites when your window ends inside the last 3 days.
- Date basis. It matters at month end and at close.
- Marketplace. Check once if you sell in more than one.
- Tie-out. Run it before a number goes to your accountant or a lender. It is the slowest check, and the only one against Amazon’s own report.
Check it with the Seller Labs Amazon MCP
With the server connected, the checks become prompts. The first two only read. The third writes, and says so. Setup is in the connect walkthrough.
Ask the profit question with the work attached
What was my net profit on [SKU] in [month] on [marketplace]? Before the answer, show the SQL you ran and a table with one row each for sales, refunds, Amazon fees, ad spend and COGS: source table, first and last date present, subtotal. Say whether the dates are order dates or posting dates. Work separately per marketplace and never sum across marketplaces. Read only. Do not change anything.
Find the SKUs still on a placeholder cost
Download my COGS for [marketplace]. List every SKU that has no COGS on file, or a cost that looks like a round fraction of the current price, with the cost on file next to the price. Work separately per marketplace and never sum across marketplaces. Read only. Do not change anything.
Why a round fraction: Seller Labs’ COGS article says COGS is estimated as 25% of the price unless you provide it.
Fix the costs (this one changes your account)
Update COGS on [marketplace] for these SKUs to these values: [SKU, cost]. One marketplace only, never several in one update. Show me the preview of what will change and wait for my approval before saving.
This prompt writes to your Seller Labs account. The server previews a COGS change before saving and handles one marketplace per update. Saving recalculates past profit for those SKUs with the new cost, going back up to 3 years. If you want a new cost to apply going forward only, or you sell the same SKU in more than one marketplace, make the change on the Bulk Update Products page with Update Historical COGS unchecked, following the COGS article.
When this breaks
- It is not real time. In support cases, ads data has run roughly 48 hours behind and sellers have reported 2 to 3 days of lag overall. Ask on the 1st for last month’s final figure and you get a draft. Ask on the 4th or later for ad spend, and expect fee lines for late-month orders to keep posting after that (next point).
- Posting date is not order date. Seller Labs’ Unified Transactions Report article says lines in
sl_transactions_pivotare stamped with the date Amazon posted them, in UTC, and that on the account it measured, the gap from order to posting ran roughly 10 days once Amazon’s DD+7 reserve policy began. A late-September order can post in October. For a close on order dates, ask Claude to join your order data. - History has a floor. At connection, ad history reaches back 95 days at most and orders about 2 years.
- A table can have a hole. It has happened in support cases: a profit table stops filling for a date range. If profit for a stretch of days looks far too low or is missing, send support the marketplace, the dates and the exact error or query. A person investigates and backfills where Amazon allows.
- A new cost takes time to show everywhere. After a COGS change, profit reports built on settlement data keep the old cost until the next settlement import.
- Sponsored Brands and Sponsored Display are not in it. Their spend is not in the per-SKU figure on either route. Add it from the Ads console.
- Costs outside Amazon stay outside. Assume software, payroll and a 3PL invoice are missing unless you built them into the cost you entered.
Frequently Asked Questions
Can Claude calculate my Amazon profit without connecting my account?
Yes. Upload a Date Range Transaction report and a Sponsored Products Advertised product report, type in your landed cost per unit, and ask. The five checks still apply.
Why doesn’t the profit Claude gives me match my Amazon deposit?
A deposit is cash for a settlement period. Profit is a calculation for a calendar window. The deposit ignores your COGS, follows posting dates, and can include or exclude ad spend depending on how Amazon bills you. Check 5 in the table is the way to line the two up.
Does the Seller Labs Amazon MCP work with ChatGPT, or only Claude?
Both. It connects to Claude or ChatGPT. It covers Amazon only, across 10 marketplaces and several currencies.
If profit is negative, can Claude fix the price or the bids for me?
Not the price. The server cannot change prices, titles or any listing content, so that stays in Seller Central. It can adjust Sponsored Products bids and budgets and add negative keywords when you ask it to, and a removed negative keyword cannot be restored. Nothing happens unless you ask.
Running the checks across the whole catalog
Five checks on one SKU are a short job once the two reports are in hand. Across 300 SKUs every month, the downloads become the job. The Seller Labs Amazon MCP connects Claude or ChatGPT to your Amazon data in Data Hub, so the prompts above run against every SKU and the rows are there to inspect. It works for as long as your Seller Labs subscription is active, and the manual method keeps working without it.
Related Reading
- How to Connect Claude to Your Amazon Seller Account in 10 Minutes (No Code)
The setup, to run these prompts on your own data. - Is Your Amazon PPC Keyword Profitable? The 60-Second Test
Once unit profit is right, turn it into a bid ceiling per keyword. - Amazon Made 11 Changes. Your Spreadsheet Didn’t.
The fee side of the same sum.