How it works

How a sales spreadsheetbecomes a checked report.

SheetScope reads your file without running anything in it, finds the sales table and works out the periods. It proposes cleaning for you to approve, balances the totals against your file and only then calculates. SheetScope AI helps with column names, questions and summaries. Every figure comes from your rows.

Largest Excel or CSV file, on every plan
20 MBLargest Excel or CSV file, on every plan
Sheets in a workbook, with up to 400,000 rows in all
60Sheets in a workbook, with up to 400,000 rows in all
Ways of recording time that SheetScope can read
9Ways of recording time that SheetScope can read
Formulas or macros run. Only saved values are read
0Formulas or macros run. Only saved values are read

The path your file takes

The import

  1. Your file
  2. Read safely
  3. Find the table
  4. Map columns and periods
  5. Cleaning you approve
  6. Totals balanced
  7. New version

What you see

  • Dashboard
  • Ask a question
  • Period summary
  • PDF report
  • Cleaned data

Every view reads the same saved version of your data.

01 to 03

It reads your filewithout running it.

  1. 01

    Read safely

    SheetScope reads the values Excel saved. Formulas never run, and a sales cell whose formula has no saved result is left out and listed by sheet and row.

    Macro files are refused, including .xlsx files with macros hidden inside. Old .xls files are turned away with a note to save them as .xlsx. A size check stops workbooks that unpack to far more data than they appear to hold.

  2. 02

    Find the table

    The header row is found within the first 30 rows, so title rows above the table are skipped. Sheets named like summaries, pivots, targets, budgets or notes are flagged and not selected. Tabs named like Week 1 are recognised as weekly sheets.

    For CSV files, the separator and the text encoding are detected for you.

  3. 03

    Map columns and periods

    Each column is matched to one of 15 business fields, and the periods are read in one of the 9 ways of recording time. Week and month columns become one record for each row and period, and a Total column is never read as a period. Header words such as ‘in thousands’ set the scale.

    SheetScope AI can suggest the mapping, and you confirm every choice.

Kestrel Provisions / Mapping

What the mapping found in the sample file

Header found on row 4, so the title rows above it are skipped.

Sheets

  • Sales registerSelected2,542 rows · Sales records
  • SummaryFlagged4 rows · Totals by branch, kept separate
  • TargetsFlagged4 rows · Targets, kept separate

Columns

  • DateDate
  • Invoice NoOrder or invoice ID
  • BranchBranch
  • Customer SegmentCustomer or segment
  • ProductProduct
  • QtyUnits sold
  • UnitUnit
  • Sales (NGN)Sales value

15 business fields

  • Date
  • Week start date
  • Week ending date
  • Year
  • Week number
  • Month
  • Product
  • Branch
  • Customer or segment
  • Order or invoice ID
  • Sales value
  • Units sold
  • Unit
  • Cost of goods
  • Currency

9 ways of recording time

  • Dates
  • Week start dates
  • Week ending dates
  • Week numbers
  • Months
  • One sheet per week
  • Week columns
  • Month columns
  • Annual totals
04 to 05

Every changeis shown before it’s made.

  1. 04

    Proposed changes

    Each change shows how many rows it affects, with before-and-after examples from your file.

    • Safe changes start switched on: trimming extra spaces, removing blank separator rows and joining names that differ only in capitals.
    • Totals rows are left out by default, because counting them would double the figures.
    • Merging near-match names, removing identical-looking rows and leaving out returns all start switched off. Two identical rows may be two real sales, and returns should reduce your totals.
  2. 05

    Questions it asks

    SheetScope stops and asks when a date like 03/04 could be read two ways, when amounts come in more than one currency, or when a new file overlaps periods you already have. For overlaps you choose to keep the earlier rows or use the new file’s rows, so no sale is counted twice.

    Week numbers that start at 0 are shown as a choice too, read as the first week unless you change it. Blanks, dashes and n/a stay unknown and are never read as zero.

The review and the final build run the same code, so what you approve is exactly what is saved.

Sample / Review

Check the changes.

Columns

  • DateDate
  • Invoice NoOrder or invoice ID
  • BranchBranch
  • Customer SegmentCustomer or segment
  • ProductProduct
  • QtyUnits sold
  • UnitUnit
  • Sales (NGN)Sales value

Proposed cleaning

  • Remove blank separator rows11 rows · SafeRow 229 · (empty row) → skipped
  • Trim extra spaces3 rows · Safe'Bottled Water 50cl ' → 'Bottled Water 50cl'
  • Product names that differ only in capitals8 rows · Safe'SPAGHETTI 500g' → 'Spaghetti 500g'
  • Exclude subtotal and total rows1 row · Your choiceRow 2542 · TOTAL → excluded
  • Negative sales values (returns)6 rows · Your choiceRow 421 · −42,000 → kept, reduces totals
Source records2,527
Included2,525
Excluded2

Left out: 1 total row · 1 row with no sales value

06 to 08

Totals that balanceand figures you can trace.

  1. 06

    Reconcile

    The total found in your file must equal the total included plus the total left out. Every row left out is counted under a reason, with example rows.

    Money is added as exact decimals, so nothing drifts through rounding.

  2. 07

    Save a version

    Each import makes a new version that never changes. Your original upload and earlier versions are kept.

    When a new file isn’t combined with an earlier version, its saved rows are added up again before the version is kept.

  3. 08

    Trace

    Every record keeps the sheet and row it came from, and the column too when your periods run across the page.

    Open any chart value to see the rows behind it, page by page, with a check that they add up. From there you can open the original rows around any record.

Sample / Data quality

Reconciliation · sales value

Recognised in the file
2,527 rows · ₦871,577,400
Included
2,525 rows · ₦435,788,700
Left out
2 rows · ₦435,788,700
Subtotal or total row
1 row · ₦435,788,700
Sales register row 2542
No sales value recorded
1 row

Balanced: included plus left out equals the recognised source total.

Sample / Data

Cleaned records · version 1

OrderProductSales (₦)
INV-10097Orange Juice 1L406,000
INV-10098Bottled Water 50cl13,000
INV-10099Bottled Water 50cl10,400
INV-10099Groundnut Oil 3L105,000

Source · Sales register, row 196

Original
'Bottled Water 50cl '
Cleaned
'Bottled Water 50cl'
Rule
Trim extra spaces · safe change

Reconciliation read live from the sample projectSource rows illustrated with the same sample

09 to 10

One filter behindthe screen and the report.

  1. 09

    One filter

    Charts, metrics, rankings, the period summary and the PDF report all come from the same filter on the same version, so what you see is what you download.

    Weekly sales opens on your latest complete week. Annual sales opens on the year with the most records and covers the full year, a quarter or your own dates.

  2. 10

    Honest metrics

    Each metric has a written definition, on screen and in the report.

    • Units sold are added up only when the rows in view use one unit. If they mix units, such as bags and cartons, filter to products sold in one unit.
    • Gross profit and margin appear only when cost is on every row, and are marked as not net profit.
    • Rankings show the top 10 with their shares, then an Other row for the rest, labelled with your own column names.
    • A comparison with last week or last year appears only when your file has records across that earlier period.
    • Empty periods are gaps, partial weeks and years are labelled, and weekly totals are never split into days.
Sample / Dashboard

One filter · version 1

Mode
Annual sales
Period
Full year
Branch
All branches
Measure
Sales value
Sales value by weekFull year · by week
  • Dashboard₦435.8mSales value
  • Rankings₦88.9mGroundnut Oil 3L
  • Period summary₦435.8mSales value
  • PDF report₦435.8mSales value

Where SheetScope AIhelps, and where it stops.

SheetScope AI helps on three screens. It never calculates a figure: every number comes from SheetScope’s own calculations.

  • Suggesting the column mapping

    It receives
    The file and sheet names, column names, value types, counts, number ranges and up to three short examples per column. Columns whose names look personal, such as name, phone, email, address, BVN or NIN, send no examples or number ranges.
    It returns
    Which column is which, plus short notes on anything to check, such as a missing year or values in thousands.
    How it is checked
    Invented or repeated column names are dropped, the scale can only be thousands or millions, a suggested year must be plausible, and you confirm every choice.
  • Answering your questions

    It receives
    Your question, your column labels, the periods in your file and your product and branch names. Customer or segment names go only when there are 30 or fewer.
    It returns
    A plan saying what to calculate: a total, a ranking, a trend, a comparison or a share.
    How it is checked
    The plan can only use allowed calculations and names that exist in your file. SheetScope runs it and writes the answer from the results. Ask about a product that isn’t in the file and it says so. A near spelling is matched to the closest name, and the answer tells you which. Ask why sales changed and it shows what changed, and says the file can’t show the reason.
  • Writing the period summary

    It receives
    The calculated figures and statements already on your screen, with the period and your column labels.
    It returns
    A few plain sentences, and up to three questions to check in your own records.
    How it is checked
    It is rejected if any figure isn’t in the calculated facts or if it claims a cause. After one retry, the calculated summary is shown instead, labelled Calculated summary, and no SheetScope AI request is used.

Every plan includes SheetScope AI requests. Asking the same question again on the same data doesn’t use one. If SheetScope AI is unavailable or your allowance runs out, charts, filters and calculated summaries keep working.

What SheetScope AI receives

Tested on four filesof very different shapes.

Each file’s totals match a calculation done separately, outside SheetScope, in tests run against copies of the files.

  • Dates

    Daily coffee shop sales

    A date on every row, read as daily, weekly and monthly views. A comparison with last year appears only when the file has records across that earlier period.

  • Week columns

    Weekly product units

    One column per week from W0 to W51, counted in units rather than money. Summary columns such as MIN and MAX are not read as weeks. Week 0 is read as the first week, and a one-week view shows the weekly total, never invented daily figures.

  • Week numbers

    A promotion test in thousands

    Four weeks of sales by location and promotion. Amounts are scaled up from a header word, and the year is labelled as partial.

  • Dates, cost and profit

    100 orders with cost and profit

    Month-first dates with revenue, cost and profit, so sales value, gross profit and order counts can be checked year by year.

The limits

These are public files, not customer workbooks, and they can’t cover every way people keep sales records. Yours may use a layout we haven’t met. When SheetScope can’t tell how a date should be read, it asks you, and you confirm every column before anything is built.

Built to stoprather than guess.

What happens when a file is unclear, a total is off or an import fails.

  1. Before anything is built

    It asks when the file is unclear

    Ambiguous dates, mixed currencies and periods that overlap an earlier version all wait for your choice. Nothing is built until you answer.

  2. After saving

    It stops when totals don’t balance

    A new file that isn’t combined with an earlier version is added up again after saving. If the total is off, the new version isn’t saved and any earlier version stays in place.

  3. Your plan

    Failed imports cost nothing

    Only successful imports count towards your plan. A failed import uses nothing, and browsing charts or changing filters never uses an import. Going over the row limit keeps your project and your choices.

  4. In the background

    Imports survive a restart

    Imports run in the background with progress, cancel and retry. An import that was running when the service restarted is queued again on its own.

See each stepon the sample file.

The sample has a TOTAL row, blank rows, extra spaces, names in mixed capitals and returns, so the cleaning, the balance check and the source rows all have something to show.