Turn monthly account analysis statements into a single spreadsheet of service lines with volumes, unit prices, and charges. Built for treasury teams and controllers who need to see what a bank relationship actually costs. Start free, no credit card.
Upload your bank statement
Drop file here or click to upload
PDF, JPG, PNG, BMP, HEIC, TIFF, MT940
Uploading...
Every month your bank sends an account analysis statement listing each treasury service you used, the volume, the unit price, the resulting charge, and the earnings credit your balances generated to offset it. Most companies receive it as a PDF, which cannot be sorted, compared across months, or checked against a pricing schedule. Upload those statements here and each service line comes back as a row with the service description, AFP code where the bank prints one, volume, unit price, and total charge, so you can price test a bank relationship in a spreadsheet instead of reading it page by page. Last updated July 2026.
The information is all there. It is just delivered in a format built for filing rather than for analysis, and it changes shape from bank to bank and from year to year.
Account analysis statements are most commonly downloaded as PDFs from the bank portal. A PDF cannot be filtered by service, totaled by category, or compared month over month without retyping it first.
Banks can turn on EDI 822, BSB, TWIST, or camt.086 delivery going forward, but they generally cannot reissue prior periods in a new format. Historical months stay as whatever you were given at the time, which is usually PDF.
AFP Service Codes are the six character standard for identifying bank services, but banks vary in whether and how consistently they print them. Some statements carry only a proprietary bank service code and a description.
Two banks will bill an identical service under two different descriptions, so a like for like comparison needs a mapping step. That step is impossible until both statements are rows.
Banks revise pricing and reclassify services on a regular cycle, so a mapping that was correct last January quietly stops matching. Catching that requires reading every month, not just the annual summary.
A single corporate account can carry dozens of billed services, and a group with many accounts and many banks multiplies that fast. Nobody checks that volume by eye.
The statement, flattened into the columns a fee analysis actually needs, from the documents you already hold.
Service description, bank or AFP service code where printed, volume, unit price, and total charge, each in its own column instead of running across a printed page.
Convert a full year of statements together and get a single date ordered file, which is what you need to spot a unit price that moved mid year.
Average ledger balance, average collected balance, the earnings credit rate, and the earnings credit allowance come across so you can test the offset rather than take it on trust.
Statements from different banks convert into the same column layout, which is the precondition for comparing pricing between relationships.
An .xlsx workbook for building the analysis, or a CSV to load into a treasury management system or your own model.
Nothing connects to your bank. You upload a statement you already have and download a spreadsheet.
The sequence treasury teams use before a pricing conversation with a bank.
Upload the account analysis statements for the period under review, one bank at a time, and get back one sheet of service lines per relationship.
Tip: Twelve months is the usual review window.
Group the lines by service, then compare volume and unit price across months and across banks. A unit price that changed without notice shows up immediately.
Tip: Map to AFP codes so banks compare like for like.
Multiply volume by the contracted unit price and compare to what was billed, then check the earnings credit allowance against your average collected balances.
Tip: Differences are your negotiating agenda.
Anyone accountable for what a banking relationship costs, and anyone asked to prove it.
Review pricing across a multi bank structure, prepare for an RFP, and check that a negotiated schedule is being applied.
Understand where treasury cost is concentrated and whether idle balances are earning enough credit to be worth holding.
Load a client history quickly when the client can only produce PDFs, which is the normal starting position on a first engagement.
Test that billed services match approved pricing and that the account analysis has been reviewed rather than filed.
Account analysis is the monthly reconciliation a bank produces for a commercial customer showing the services used, what each one cost, and the credit earned on deposit balances that offsets those costs. It exists because commercial accounts are priced per transaction rather than at a flat rate. The statement is issued monthly to corporate account holders and is the only document that shows unit pricing, so it is the basis for every pricing negotiation.
Three blocks, in roughly this order. A balance summary, a service charge detail, and a settlement. The balance summary carries average ledger balance, average deposit float, and average collected balance, each calculated by dividing the cumulative daily figure by the number of days in the period. The service detail lists every billed service with its volume, unit price, and extended charge. The settlement applies the earnings credit allowance against total charges and shows what you actually pay.
| Statement field | What it means | Why it matters in a review |
|---|---|---|
| Average ledger balance | Daily book balance averaged over the period | Starting point, but not what earns credit |
| Average deposit float | Deposited items still in collection, averaged | Large float means slow availability, which is negotiable |
| Average collected balance | Ledger balance less float | This is the balance the earnings credit is calculated on |
| Reserve requirement | Portion the bank must hold at the Federal Reserve | Reduced to zero percent in March 2020, so check it is not still deducted |
| Earnings credit rate | Negotiable rate applied to collected balances, often tiered | One of the two levers in any pricing negotiation |
| Earnings credit allowance | Dollar credit available to offset the month's charges | Compare to total charges to see if you are over or under compensating |
| Service code and description | Bank code, and an AFP code where the bank prints one | The key that lets two banks be compared line for line |
| Volume and unit price | Items processed, and the price per item | Multiply and compare to the contracted schedule |
The standard formula is the collected balance multiplied by one minus the reserve requirement, multiplied by the earnings credit rate, multiplied by the days in the period divided by 365. Written out: EC = CB x (1 - RR) x ECR x (D/365). Because the Federal Reserve reduced reserve requirements to zero percent in March 2020, the reserve term should no longer be reducing your credit. It is worth checking that your statement reflects that, since legacy pricing setups have been known to carry the old deduction forward.
AFP Service Codes are six character alphanumeric codes maintained by the Association for Financial Professionals that give every treasury service a standard identifier. They have been the reference standard for account analysis since 1986. Their value is comparison: when two banks both tag a wire transfer with the same code, you can put their unit prices side by side. Banks vary in how completely they apply the codes, so part of any fee review is mapping unlabeled lines back to the standard yourself.
You should, and more than a hundred US banks offer it. The EDI 822 account analysis transaction set carries the same balance and service charge detail in a machine readable structure, and BSB, TWIST, and camt.086 do similar jobs. The catch is timing. Banks can enable a new delivery format going forward but generally cannot reproduce closed periods in it, so the history you want to analyze today is almost always still sitting in PDFs. Convert the back years, switch on the electronic feed for the future, and you get a continuous data set instead of a break in the middle.
Not fraud. The recurring findings are mundane and worth money anyway: services still being billed after the underlying account or product was closed, a unit price that drifted off the negotiated schedule at a repricing, duplicate charges where a service is billed at both the account and the group level, volume based tiers that were never applied because the bank never reset the tier, and an earnings credit rate that stopped tracking the market. None of these show up in a total. They show up when volume times unit price is compared to the contract, line by line, which is a spreadsheet job.
The analyzed fee settles either as a direct debit to the account or as a separate invoice, and either way it has to land in the general ledger correctly. Once the statement is in rows you can allocate charges to the entities or cost centers that generated them rather than dumping the whole amount into one bank charges account. If you are also rebuilding the underlying transaction activity, the bank statement analyzer handles the deposit and withdrawal side, and transaction categorization codes those lines before they reach the ledger. Treasury groups that receive statements as BAI2 or ISO 20022 files can read them with the BAI to Excel converter and the camt.053 converter. If the entity keeps its books in QuickBooks, the same rows can be pushed across with a CSV to QBO converter rather than being keyed twice.
Account analysis is the monthly statement a bank issues to a commercial customer showing every treasury service used, the volume and unit price of each, the total charges, and the earnings credit generated by deposit balances to offset them. It exists because commercial accounts are priced per item rather than at a flat monthly rate.
A bank statement lists the transactions that moved through the account. An account analysis statement lists the services the bank provided and what it charged for them. They cover the same month and the same account but answer different questions, and most banks deliver them as separate documents.
Upload the PDF statement and each billed service comes back as a row with description, service code where printed, volume, unit price, and total charge, plus the balance and earnings credit fields from the summary. Download it as an .xlsx workbook or a CSV.
The earnings credit rate is the rate a bank applies to your average collected balances to generate a credit that offsets service charges. It is negotiable, usually tiered by balance level, and it is one of the two things worth renegotiating in any banking relationship, the other being unit pricing.
No. AFP Service Codes are the six character industry standard and many banks print them, but application is inconsistent and some statements carry only a proprietary bank code and a description. Mapping the unlabeled lines to the standard is part of any multi bank comparison.
Yes, once both statements are converted into the same columns. Group by service, map descriptions to a common standard, then compare unit prices at similar volumes. The comparison is only meaningful at the service line level, because headline totals reflect different volumes.
Yes, and it is the usual reason people arrive here. Upload the monthly statements for the period you are reviewing and they come back as one continuous sheet, which is how a unit price change mid year becomes visible.
No. This converts statements into structured data. What you do with it, whether that is a spreadsheet model, a bank fee module in a treasury system, or a consultant engagement, is a separate decision. The conversion step is the same either way.
Analyze the transaction side of the account.
Read BAI2 files your bank already sends.
ISO 20022 XML statements into rows.
Reconcile the account the fees sit in.
Volume conversion for finance teams.
From the same family of tools
Get started converting bank statements to spreadsheets.
USD
per month
billed as
$288 yearly
Choose speed vs accuracy when extracting
| Base AI Faster | 2,500 pages |
| Pro AI Best accuracy | 500 pages |
Scale statement conversion across your team with automation.
USD
per month
billed as
$888 yearly
Choose speed vs accuracy when extracting
| Base AI Faster | 10,000 pages |
| Pro AI Best accuracy | 2,000 pages |
Enterprise-grade bank statement conversion and controls.
USD
per month
billed as
$ yearly
Choose speed vs accuracy when extracting
| Base AI Faster | pages |
| Pro AI Best accuracy | pages |