INSYNTIVEAcademyAll guides

Analyze any spreadsheet with Claude in four prompts

The full workflow from my Reel. Profile the data, brief Claude like an analyst, make it check its own work, then turn it into a dashboard. Copy each prompt, swap in your details, and go.

See the sample dashboard ↓

sales_export_final_v3.xlsx
order_idorder_dateregionproductqtyrevenue
10412026-01-12JakartaCoffee Beans 1kg3675000
104212/01/2026jakartaCoffee beans 1kg2450000
104212/01/2026jakartaCoffee beans 1kg2450000
10432026-01-13SurabayaDrip Kettle    389000
10442026-01-13BandungHand Grinder19999999
10452026-01-14MedanPaper Filters5Rp 60.000

This is what real data looks like, so don't clean it first. A good first prompt should make Claude find every one of these on its own:

Before you start

Turn on code execution

In Claude, open Settings › Capabilities and switch on Code execution and file creation. This lets Claude run real Python on your whole file instead of guessing from a preview. It's usually on by default for personal accounts. On a Team or Enterprise plan, your admin controls it.

Use a CSV or Excel file

Up to 30 MB per file. One table per sheet works best. Headers in the first row help a lot.

Keep private data out

Remove names, phone numbers, emails, and anything confidential before you upload. If it's company data, check your company's AI policy first.

No dataset yet? Use mine

Use the same messy file I use in my videos: 9,408 rows of made-up coffee sales with every problem above hidden inside. It's also the file behind the sample dashboard further down.

Download the practice fileExcel, 9,408 rows, about 400 KB

Or ask Claude to make you a fresh one. Download it, then start a new chat and upload it, so Claude comes in fresh:

Practice data

    

Make the prompts yours

Fill these in once and every prompt below updates as you type. Anything you leave blank stays as a highlighted placeholder you can edit inside Claude.

Saved only in this browser.

Profile the data before any analysis

Upload the raw file and ask Claude to understand it first. Most bad analysis starts with skipping this.

Prompt 1 of 4

      

What a good answer looks like

The row count matches what you see in Excel. It tells you what one row represents (an order? a customer? a day?). Problems come with counts, like “214 blank quantities”, not vague warnings.

Brief it like you'd brief an analyst

Who you are, what you're deciding, and the questions you need answered. Context is what turns “interesting charts” into answers you can act on.

Prompt 2 of 4

      

What a good answer looks like

Every number comes with a calculation you can follow. The cleaning log explains any rows that disappeared. And when the data can't answer something, it says so instead of making it sound certain.

The step most people skip

Don't accept the first result

Make Claude check its own work before you trust a single number. This is what separates a pretty chart from an analysis you can defend in a meeting.

Prompt 3 of 4

      

Then check two or three numbers yourself

Open your original file, make a quick pivot table, and compare the totals Claude flagged. It takes five minutes, and it's what makes the analysis yours. Claude can make mistakes; you own the conclusion.

Ship it as a dashboard

Once the numbers are verified, turn them into something your manager can open on their phone.

Prompt 4 of 4

      

What a good answer looks like

The dashboard appears next to your chat, where you can open it full screen and share it. Every number on it matches the verified numbers from step 3. Open it on your phone once before you send it. There's a working sample right below.

Prefer files your team already uses?

Optional

        

See what prompt 4 can give you

A sample dashboard built with this exact workflow on a messy practice file: 9,408 raw rows, profiled, cleaned, reconciled, and then shipped. Try the filters.

Sample Coffee Co. Sample data

Quarterly sales review

Five regions, three channels, twelve products. January 2025 to June 2026, in rupiah.

What this means

    What drove the change

    Volume: selling more or fewer units. Price: charging more or less per unit. Mix: a shift between cheaper and pricier products.

    Revenue by month

    Selected quarter in dark blue, comparison quarter in mid blue.

    Change by category

    Regions vs. target

    Channel mix

    Share of revenue by sales channel.

    Top products

    Data notes: from 9,408 raw rows to 9,266 clean orders
    Cleaning log
    Revenue reconciliation
    Assumptions
    • Dates typed as text were read as day/month/year, the Indonesian format.
    • Blank quantities were filled as revenue ÷ unit price. Every result was a whole number.
    • The six revenues of 9,999,999 didn't match qty × unit price, so they were treated as placeholders, not sales.
    • 2026 targets are +8% on the same quarter of 2025. There are no targets for 2025.
    • Regions vs. target uses total region revenue, so the channel and category filters don't apply there.
    • Each row in this export is one order with one product.

    All numbers are made up for practice. The company and its sales are not real.

    Keep going: three follow-ups worth asking

    Stay in the same chat so Claude keeps the cleaned data and everything it already checked.

    Find the cause
    
        
    Explain it simply
    
        
    What did I miss?
    
        

    Before you share anything