Skip to content

Real Spreadsheet Analysis — Full Case Study

From spreadsheet upload to a 30-day action plan. Case study with prompts, expected outputs, and pitfalls.

12 min · Intermediate · 1 of 2

TL;DR

We’ll take a real sales spreadsheet, feed it to Claude, and walk away with executive diagnosis + 30-day plan. Total time: 12 minutes.

The case context

Fictional but realistic company:

  • Sector: SaaS for accounting firms (B2B)
  • MRR: $ 187k
  • Active customers: 412
  • Sales team: 4 reps
  • Analysis period: last 3 months

You exported from HubSpot and have a spreadsheet with 1,247 deals.

Step 1 · Prepare the environment

Before uploading the spreadsheet

  1. Anonymize if it has real customer data (name, tax ID, phone)
  2. Save as Excel or CSV (Claude reads both)
  3. Check: does it have a sales rep column? Stage? Value? Date? Status?

In Claude.ai

  1. Go to claude.ai
  2. Create a new Project: Projects → Create project → “Sales analysis”
  3. In Project knowledge, attach the spreadsheet (it stays available in every conversation in the project)
  4. In Custom instructions of the project, put the company context

Step 2 · The master prompt

Paste this in the project’s first conversation:

You are Head of Sales with 15 years in Brazilian B2B SaaS.
Specialty: diagnosing the funnel and finding the silent bottleneck.

<context>
Company: SaaS for accounting firms
Current MRR: $ 187k
Active customers: 412
Sales team: 4 reps (Ana, Bruno, Camila, Diego)
Analysis period: last 90 days
Historical average ticket: $ 480/month
</context>

<data>
The attached spreadsheet (deals-Q3.xlsx) contains 1,247 deals.
Columns: id, rep, created_date, closed_date, value, status,
source, segment, cycle_days.
</data>

<task>
1. Read the entire spreadsheet. Identify columns, data quality,
   inconsistencies (invalid dates, zero values, duplicates).
2. Calculate:
   - Overall conversion (created → closed won)
   - Rate by rep
   - Average ticket by rep
   - Average cycle (in days)
   - Conversion by source and by segment
3. Identify the 3 critical patterns:
   - Who is an outlier (positive and negative)?
   - Which source has inverted ROI?
   - In which segment are we losing money?
4. Find 1 silent risk (concentration, person bottleneck, seasonality).
5. Build a 30-day action plan (3 moves, with $ impact).
</task>

<format>
- Executive summary (5 bullets with $)
- KPI table by rep
- 3 critical patterns (each one: what I see + why it matters + action)
- Silent risk
- 30-day plan

Use Python execution to ensure numbers are correct,
not estimated. Show calculations where it matters.
</format>

Think in steps before answering. Show reasoning in <scratchpad>.
Respond in English.

Step 3 · What to expect from the response

Claude will (in order):

1. Run Python to open the spreadsheet

You’ll see:

import pandas as pd
df = pd.read_excel('deals-Q3.xlsx')
df.shape  # (1247, 9)
df.dtypes  # confirms column types
df.isna().sum()  # how many missing per column

If there’s a data problem, it stops and warns you.

2. Show reasoning scratchpad

<scratchpad>
Main variables: conversion rate, average ticket, cycle.
Hypotheses to test: rep X with low ticket, source Y cheap but
ineffective, cycle growing over time.

I'll cut the analysis by: rep, source, segment, month.
I'll ignore: status "duplicate" or "spam" (noise).
</scratchpad>

3. KPI table

RepClosed dealsConversionTicketCycle
Ana8914.2%$ 61228d
Bruno6422.1%$ 41019d
Camila7111.8%$ 58036d
Diego5218.3%$ 38822d

4. Critical patterns

Bruno is selling wrong, not little. Conversion 2.1x above average but ticket 24% below. He’s closing fast with excessive discounts. Impact: $ 14.7k/month of lost margin.

The “Meta Ads” source has inverted ROI. 32% of lead volume but only 8% of sales — and of those 8%, ticket is 41% below. You’re paying to burn the list. Cut it.

The “freelance accountant” segment bleeds. 47% of volume but only 11% retention at 6 months. We’re selling to people who don’t stick around.

5. Silent risk

Camila represents 31% of the quarter’s revenue. If she leaves, we lose nearly 1/3 of new MRR. Critical concentration risk.

6. 30-day plan

#ActionExpected impact
1Coaching session with Bruno: work value before price+$ 14k/month margin in 60 days
2Pause Meta Ads for 30 days; redirect to referral-$ 18k in CAC, holding volume
3Cap pipeline at 30% from “freelance accountant”; focus 50%+ on “firm with 5+ people”Average LTV +40% in 6 months

Step 4 · Validate before acting

Check 1 random number. Take a row from the spreadsheet, calculate manually, and compare with what Claude produced. If it matches, trust the rest.

Also do:

  • Show it to a trusted sales rep. They’ll tell you if the pattern matches reality.
  • Don’t share with the affected team without review. “Bruno is selling wrong” needs to be a conversation before becoming a report.

Step 5 · Next conversation

You already have the diagnosis. Next questions in the same project:

  • “Detail the hypothesis about Bruno more. Which 5 of his most recent deals best illustrate the pattern?”
  • “Create a 4-week coaching plan for Bruno based on this.”
  • “Write the email I’ll send Diego asking him to explain why his cycle dropped from 28 to 19 days.”

The analysis becomes ongoing conversation, not a dead report.

Mistakes you’ll make (and how to avoid them)

Trusting the numbers without checking

Always cross 1 number with the manual spreadsheet. Claude can read the wrong column, especially with duplicate headers.

Asking for everything in one prompt

For a small company with a simple spreadsheet, OK. For serious analysis, split it: first the general diagnosis, then deep-dive each pattern in separate conversations.

Not considering human context

“Bruno sells wrong” can’t become an accusation. It’s probably training or wrong incentive. Use the analysis as a conversation starting point, not conclusion.

Mixing different analyses in the same Project

Sales and finance in separate projects. Otherwise Claude starts mixing context.

Next step

You learned analysis. Now learn how to show the result to the team: Lovable — text becomes dashboard.

Entrega da lição
20 min

Tarefa

Take a real spreadsheet from your company (sales, finance, operations). Run this lesson's master prompt. Anonymize 1 hidden pattern that surfaced and estimate the impact in $/month.

Como saber que entregou

Pattern described in 2 lines + impact estimate in $ (range works: 'between 8k-15k'). Sensitive data masked (names/customers replaced with A, B, C).

Auto-validável · você sabe se entregou
Compartilhar resultado ↗
Fontes oficiais