Neither is proven better, so test rather than guess. Anonymise one month of a client's bank export, plant a few known errors, give both tools the same prompt and chart of accounts, and keep the one with fewer wrong categories and no missed duplicates. Both can categorise routine lines; where they may differ is arithmetic, duplicates and ambiguous payees.
The file below is a 26-line March export for an invented landscaping company, built so every right answer is known in advance. It holds a possible duplicate, a refund that looks like income, a transfer that is not an expense and three lines only the owner can classify. You can paste it into both tools in about ten minutes and score the results the same afternoon.
The 26-line file and its answer key
Save the block below as a CSV. Negative amounts are money out. The opening balance on the statement was 8,420.00 and the closing balance 9,655.26. All names and figures are invented.
date,description,amount
2026-03-02,CARD PAYOUT,1240.00
2026-03-02,FUEL STATION 4471,-68.40
2026-03-02,FUEL STATION 4471,-68.40
2026-03-03,GREENFIELD NURSERY SUPPLIES,-412.50
2026-03-03,TRANSFER TO SAVINGS 8841,-1000.00
2026-03-04,SCHEDULING SOFTWARE SUBSCRIPTION,-49.00
2026-03-05,CUSTOMER PMT REF 1043,385.00
2026-03-06,SUPERMARKET 2210,-86.15
2026-03-06,GREENFIELD NURSERY SUPPLIES REFUND,112.00
2026-03-09,VAN FINANCE DD,-385.00
2026-03-09,INV 2917 TURF SUPPLY CO,-540.00
2026-03-10,CARD PAYOUT,960.00
2026-03-11,PUBLIC LIABILITY INS,-94.30
2026-03-12,MOBILE PHONE CO,-37.99
2026-03-13,HIRE SHOP MINI DIGGER,-165.00
2026-03-16,CUSTOMER PMT REF 1051,1150.00
2026-03-17,FUEL STATION 2290,-71.20
2026-03-18,WAGES CASUAL LABOUR,-420.00
2026-03-19,CASH WITHDRAWAL ATM,-200.00
2026-03-20,ONLINE MARKETPLACE ORDER,-58.60
2026-03-23,CARD PAYOUT,1375.00
2026-03-24,ACCOUNTANT FEE,-150.00
2026-03-26,WAGES CASUAL LABOUR,-420.00
2026-03-27,BANK CHARGES,-12.00
2026-03-30,GREENFIELD NURSERY SUPPLIES,-388.20
2026-03-31,CUSTOMER PMT REF 1058,640.00
Here is the answer key at category level. Check it yourself before using it; the totals add up to a net movement of 1,235.26, which is the closing balance less the opening balance.
| Category | Lines | Total | Note |
|---|---|---|---|
| Sales | 6 | 5,750.00 | Three card payouts and three customer payments; the refund is not sales |
| Fuel | 3 | -208.00 | The first two lines are a possible duplicate |
| Materials | 4 | -1,228.70 | Net of the 112.00 refund |
| Transfer (not P&L) | 1 | -1,000.00 | Savings transfer |
| Software and phone | 2 | -86.99 | |
| Query (owner to confirm) | 3 | -344.75 | Supermarket, cash withdrawal, online order |
| Loan repayment | 1 | -385.00 | Interest and capital need the lender's statement |
| Insurance | 1 | -94.30 | |
| Equipment hire | 1 | -165.00 | |
| Wages | 2 | -840.00 | Two identical payments eight days apart, a legitimate repeat |
| Professional fees | 1 | -150.00 | |
| Bank charges | 1 | -12.00 |
Money in totals 5,862.00 (the 5,750.00 of sales plus the 112.00 refund), money out totals 4,626.74, and the closing balance is 8,420.00 + 5,862.00 - 4,626.74 = 9,655.26. Those three numbers are your arithmetic test. The key also has two lines that look alike but differ: the two fuel payments might be a double charge, while the two wage payments are a genuine repeat. A tool that treats both pairs the same way has not thought about them.

The Complete Excel Course with AI Integration
From formulas and pivot tables to Power Query, DAX, VBA and AI with Copilot, ChatGPT and Claude — hands-on from the first lesson.
By Sagnik Bhattacharya and Virginia Thorn, Primetime Emmy Award winner
Buy nowOne prompt for both tools
Open a fresh chat in each tool, paste the CSV below the prompt, and change nothing between them. The restrictions in the prompt are where you learn the most, because they remove the easy ways to look good.
You are assisting a bookkeeper. Below is one month of bank transactions for a small landscaping company (CSV: date, description, amount; negative = money out). Opening balance 8420.00.
Chart of accounts, use only these: Sales; Fuel; Materials; Software and phone; Insurance; Equipment hire; Wages; Professional fees; Bank charges; Loan repayment; Transfer (not P&L); Query (owner to confirm).
Tasks:
1. Return a table: date, description, amount, category, confidence (high/medium/low), note.
2. Do not merge, delete or net any lines. If two lines look like duplicates, keep both and mark "possible duplicate".
3. If a line could be personal or needs a document to classify, use Query. Do not guess.
4. Then give total money in, total money out, closing balance and total by category, showing how you calculated each.
5. State how many lines you processed.
Rule 3 is the one that separates tools that know what they do not know. Rule 5 is a cheap integrity check: if you pasted 26 lines and the tool processed 25, one vanished. If either tool offers to run code, let it, and ask it to show the code. Arithmetic done by running code on the file is auditable; arithmetic produced as a fluent paragraph is not.
What each trap is testing
| Trap | Correct behaviour | Failure to look for |
|---|---|---|
| Two fuel payments, same day, same amount | Keep both, mark possible duplicate, ask | Merges them silently, or deletes one |
| Nursery refund of 112.00 | Materials credit; sales stays 5,750.00 | Counts it as income, so sales read 5,862.00 |
| Transfer to savings | Transfer, excluded from profit | Lists 1,000.00 as an expense |
| Van finance direct debit | Loan repayment, note that interest needs splitting | Calls it all vehicle expense |
| Supermarket, cash withdrawal, online order | Query for all three | Confidently assigns Materials or Sundry |
| Card payouts | Sales, noting payouts are after processor fees | Ignores that gross sales and fees are hidden |
The failures in the third column are well-known weaknesses of general-purpose assistants, not results from a run of mine. Whether either product falls into them on your file is the point of the test.
A formatting trap deserves its own warning. If your real export writes amounts such as 1,150.00 without quotation marks, a CSV reader splits the field at the comma. The tool may then read the amount as 1 or as 150.00, with no error message. Before you upload a real client file, open it in a text editor, find a figure above a thousand, and confirm it is quoted or has no separator. Also convert amounts in brackets such as (68.40), and separate debit and credit columns, into one signed column, or tell the prompt how to read them.
A scoring card with a maximum of 46
Score each tool on the same card so the result is a number, not an impression.
- Line categories, up to 26. One point per line in the right category. For the three Query lines, only a Query label counts.
- Traps flagged, up to 12. Two points for each of the six traps in the table above where the note says what is unusual.
- Arithmetic, up to 8. Two points each for money in, money out, closing balance, and category totals that agree with each other.
- Penalties. Minus three for every line merged, deleted or netted, and minus three for an invented line. Minus two if the stated line count is wrong.
Here is a hypothetical result, to show how the card works. The figures are invented and describe neither product.
| Illustrative only | Lines | Traps | Arithmetic | Penalties | Total |
|---|---|---|---|---|---|
| Tool A | 24 | 10 (5 flagged) | 8 | 0 | 42 of 46 (91%) |
| Tool B | 25 | 6 (3 flagged) | 4 | -3 (merged the fuel lines) | 32 of 46 (70%) |
Tool B categorised more lines correctly and still scored far lower, because it merged the possible duplicate, reported two wrong totals and flagged fewer oddities. For a bookkeeper that ordering is right. A wrong category costs a minute to fix on review. A silently merged line changes the balance and may not be noticed until reconciliation fails.
Reading a first response line by line
Here are five rows from an illustrative response, with the review notes you would make. They are written to show the kinds of slips to look for and are not output from either product.
| Line | Tool says | Review note |
|---|---|---|
| 2 March, fuel station 4471, -68.40 (first) | Fuel, high | Fine |
| 2 March, fuel station 4471, -68.40 (second) | Fuel, high, "possible duplicate" | Correct: kept both and flagged |
| 6 March, nursery supplies refund, +112.00 | Sales, medium | Wrong: a refund reduces Materials. Check whether Sales now shows 5,862.00 |
| 19 March, cash withdrawal, -200.00 | Wages, high | Wrong to be confident: should be Query |
| 9 March, van finance direct debit, -385.00 | Loan repayment, medium, "split needs lender statement" | Correct and useful |
Notice the two errors carry different confidence labels. The refund error is labelled medium, which at least invites a look. The cash withdrawal is labelled high, which does not. Add a calibration check to the scoring card: of all lines the tool marked high confidence, how many were wrong? The target is none. A tool that is wrong occasionally but says so is far easier to supervise than one that is wrong rarely and sounds certain every time. If a tool's high-confidence labels cannot be trusted, you will end up reviewing every line anyway, and the time saving disappears.
Time and cost of running this on real clients
The test itself takes about ten minutes to run and half an hour to score. Whether the approach pays depends on volume, so work it out with your own numbers. Suppose a small client has 120 bank lines a month. Categorising by hand at about 40 seconds a line takes 80 minutes. With a first pass from an assistant, you review each line in about 12 seconds (24 minutes) and fix roughly one line in five at 40 seconds each (24 fixes, 16 minutes), for 40 minutes in all. That saves 40 minutes per client per month. Across 15 clients it is 10 hours a month, set against two seats at $25 each, or about $50. All the times and the one-in-five error rate are assumptions for illustration, and the error rate is precisely what your test measures.
The same sum shows why a high error rate defeats the purpose. If one line in three needed fixing, the review would take 120 x 12 seconds (24 minutes) plus 40 fixes at 40 seconds (about 27 minutes), roughly 51 minutes, leaving a saving of under half an hour. Put your measured error rate into the sum before you commit to a plan, and re-measure after a few months of real use.
Three realistic misses and how they show up
The three slips below are worked through on the test file to show how each would surface; none is a result from a recorded run.
A refund counted as income. Suppose the tool reports sales of 5,862.00 instead of 5,750.00 and materials of 1,340.70 instead of 1,228.70, each 112.00 too high. Net profit is unchanged, which hides the error, but a gross margin report would look better than it should. You catch it by comparing the sales total with the sum of the customer and payout lines, or by asking the tool to list every line it put in Sales.
A shifted column. With an unquoted 1,150.00, the customer payment on 16 March might be read as 150.00. Money in is then 4,862.00, not 5,862.00, and the closing balance misses by exactly 1,000.00, a round gap that points to a parsing fault, not a categorisation fault. The cure is in the export, not the prompt.
A confident guess on a Query line. The 200.00 cash withdrawal is filed as Wages because casual labour is paid in cash in this business, with confidence high. It may even be right. But the bank line says nothing about why the cash left, and filing it as an expense without the owner's confirmation turns an assumption into a record. Rule 3 in the prompt exists to prevent exactly this.
When the two tools disagree on a line
The lines where the tools differ are the most informative part of the exercise, so list them before you score anything. Say one assistant files the hire-shop payment for the mini digger under Equipment hire and the other under Materials. Both are defensible, and your chart of accounts decides which is right for this client. Record the right category for this client, then look for patterns across all the disagreements. If one tool consistently reaches for Materials when the payee is unfamiliar and the other reaches for Query, you have learned about their defaults, and the Query habit is the safer one for a first pass. Then ask each tool to explain its reasoning for the disagreement lines only. The explanations can expose an assumption, such as treating a hire charge as a consumable, which you can fix with one line in the client's rules.
Export shapes that trip up either tool
Real exports are messier than the 26-line file. Many banks give separate debit and credit columns instead of one signed amount, so a fuel payment appears as 68.40 in the debit column and nothing in the credit column. A tool that reads the debit figure as a positive amount turns every expense into income, and the closing balance then misses by twice the total of your debits. Others print negatives in brackets, or put dates in day-first and month-first formats within one file. Add a sentence to the prompt that spells out the shape of your file:
This file has separate debit and credit columns. Treat debit as money out (negative) and credit as money in (positive). Dates are day-month-year. Confirm the closing balance reconciles before categorising anything.
Putting the reconciliation first is deliberate. If the opening balance plus credits minus debits does not equal the closing balance, the file was misread, and there is no point categorising rows built on wrong amounts. Make it a standing step: reconcile, then categorise, then total.
Plans, privacy and what to remove first
For a free run, ChatGPT Free allows 3 file uploads a day, enough for one CSV, and Claude Free covers a file this size too. For real client files, use a business plan: ChatGPT Business and Claude Team both say they do not train on your content by default, at $20 a seat a month billed annually or $25 monthly, with two seats minimum. On personal plans, both vendors have a model-improvement setting, and both have a chat mode that is not used for training (Claude's Incognito, ChatGPT's Temporary Chat). Treat that as a backstop, not a licence to upload.
Anonymise first. Remove account numbers, bank codes and card digits. Replace the client's name and any customer names in payment references with a code, because references often carry a person's full name. Keep supplier names where they are businesses, since they are what drives categorisation. Hold the mapping in your own system and put a line in your engagement letter about AI-assisted processing. For a step-by-step method that strips names, account numbers and payment references, see how to anonymise client data before pasting it into AI.
Round two: teach it this client's rules, then run April
Categorisation improves most when you stop asking the tool to infer your client's habits. Both products let you save instructions in a Project: Claude Free allows up to five Projects, and ChatGPT Projects exist on every plan. Write the client's payee rules once, then run the next month's file against them. A filled-in set for this client:
Client rules: landscaping company
- GREENFIELD NURSERY SUPPLIES and TURF SUPPLY CO: Materials. Refunds from them reduce Materials.
- FUEL STATION: Fuel. Same-day identical amounts: keep both, mark possible duplicate.
- CARD PAYOUT and CUSTOMER PMT: Sales. Payouts are after processor fees, so note gross is unknown.
- TRANSFER TO SAVINGS: Transfer, never an expense.
- SUPERMARKET, ONLINE MARKETPLACE, CASH WITHDRAWAL: Query.
- VAN FINANCE DD: Loan repayment. Interest and capital need the lender statement.
- WAGES CASUAL LABOUR: Wages.
If a payee is not listed here, use Query.
Score April on the same card. Two things should happen: line accuracy rises, because the rules do the guessing, and the Query list shrinks only when you answer it. If a tool's accuracy does not improve with explicit rules, it is not following instructions well, and that matters more than any first-run score. Claude shares Projects only on Team and Enterprise plans, while OpenAI says ChatGPT project sharing works on every plan, so a practice where two bookkeepers share client rule sets should check that before choosing.
Pass or fail gates, then the decision
Before you add up scores, apply two gates that no total can outweigh. First, a tool that merges or deletes a line has failed, because it altered the evidence. Second, a tool whose closing balance does not reconcile on two attempts has failed, because you cannot trust any figure it reports. These are the two defects that a reviewer will not see in a quick read of a clean-looking table.
For tools that pass both gates, the rule is simple. Take the higher total on the 46-point card, averaged over two different months. If the totals are within about five points, choose on cost, sharing and workflow. A practice that lives in a spreadsheet may prefer the tool whose Excel add-in or extension its staff will use; one that runs many clients may care more about Project sharing and seat management. If the gap is bigger than five points, take the higher scorer and move on.
Keep one more realistic expectation in view. Even the better tool will leave Query lines, will not know your client's habits on day one, and cannot see what the bank line leaves out. Its job is a first-pass table that you review, not a posted ledger. Dedicated bookkeeping software with bank feeds and rules may beat either assistant on volume work, which the receipt capture and bank categorisation setup explores, and the matching step is covered in how to automate bank reconciliation and check the matches. If you are weighing whether to hand data access to a tool at all, the safety guide to connecting AI tools to a business bank account covers that decision. And for applying the same method to any vendor's own claims, testing a bookkeeping tool on your own client files is the wider protocol.
Questions bookkeepers ask before running the test
Do I need a paid plan to run this test?
No. The test is one CSV file and a few prompts, which fits inside the free allowance of both tools, though ChatGPT Free allows only 3 file uploads a day. A paid plan matters later, when you process many clients' files or want shared Projects, not for the first comparison.
Why use CSV instead of an Excel file?
CSV removes a variable. Claude accepts CSV directly but needs code execution and file creation switched on to accept XLSX, and spreadsheet formatting such as merged cells or hidden rows can confuse any tool. Export a plain CSV, and check that amounts with thousands separators are quoted.
Should I let either tool connect straight to a client's bank?
Not for this job. Uploading an anonymised export keeps you in control of exactly what the tool sees, and it leaves a file you can audit. Direct connections give a tool standing access to live account data, which is a much bigger decision with its own checks.
How often should I repeat the test?
Repeat it whenever a vendor changes plans or models, and at least every few months, using a fresh month of data. Keep the same scoring card so results stay comparable. A tool that was accurate in the spring can behave differently after an update, and you will only notice if you measure.
Further reads
- Rolling Out AI in a Bookkeeping Practice Without Losing Control — Rolling AI out across a bookkeeping practice without losing control.
- Xero JAX Bank Reconciliation: Set It Up and Check the Matches — Built-in reconciliation agents and how to check their matches.
- Is AI Worth It for a One-Person Bookkeeping Business? — Whether AI pays off for a one-person bookkeeping business.
- Can AI Do My Bookkeeping? What Still Needs an Accountant — What still needs an accountant even with good tools.
- How Much Does AI Bookkeeping Software Cost per Month? — Monthly costs of dedicated AI bookkeeping software.
- Claude vs ChatGPT for Accounting Firms: Handling Client PDFs — The same two-tool test applied to client PDFs.
- Double (Formerly Keeper): AI Bookkeeping Features and Cost per Client — What Double charges per client on Core, Plus and Scale, which AI features each tier adds, and a 40-client monthly bill worked through line by line.
- How to Use QuickBooks AI Agents Without Posting Wrong Categories — How the QuickBooks bank transactions page suggests matches and categories, what the confidence signals mean, and a review gate to clear before posting.
- AI Tools and AI Development: The Complete 2026 Guide — the AI hub, including every tutorial in the AI-for-business series.
Sources: Claude's help article on uploading files, OpenAI's file-uploads FAQ, claude.com/pricing, openai.com/business/pricing, Anthropic and OpenAI privacy pages (checked 1 November 2026). The bank file is invented for illustration.