Guide · Banking

How to read a bank statement (and decode every line)

A bank statement looks like a wall of dates, codes, and cryptic merchant names, so most people glance at the ending balance and close it. But a statement is only five parts and a handful of code families, and learning to actually read it is how you catch the two things that matter most: a charge that isn't yours, and the short, legally fixed window you have to dispute it.

19 min read · Updated 2026-06-25

A bank statement is the official monthly record of one account: every dollar in, every dollar out, and the balance at the start and end of the period. Your bank generates it, files its own copy, and uses it as the record of what happened, which is why reading yours matters. It's the one document that catches a charge you didn't make, a fee you didn't expect, or a subscription you forgot you were paying. It's also the backstop your lender, your accountant, and you fall back on when a number is in question.

You'll find it in your online banking or mobile app under a tab usually labeled Statements or Documents, where each month is a downloadable PDF; most banks still mail a paper copy if you ask. Whichever way you get it, save the PDF, because banks keep only a limited window of statements available online (more on that at the end).

The reason it feels unreadable is that banks pack each transaction into a terse line of codes and abbreviated names. But the document itself has a simple skeleton. Almost every statement, from any bank, is built from the same five parts, and once you can name them the page stops being a blur.

Hover or tap any line below to see what it does; the full section-by-section reference follows.

HeaderStatement period
The exact start and end dates this statement covers. Every figure on the page is bounded by that period.
HeaderAccount numbercheck it
Your account number, often masked to the last four digits, alongside the routing number and your bank's details.
SummaryBeginning balance
What you started the period with. It should equal last statement's ending balance.
SummaryDeposits and credits
Total money in over the period: paychecks, transfers in, and any interest or refunds.
SummaryWithdrawals and debits
Total money out over the period: card purchases, autopay bills, ATM withdrawals, and checks.
SummaryEnding balance
Beginning balance plus deposits minus withdrawals. A snapshot frozen on the closing date of the period.
SummaryAvailable vs. current balance
The current (posted) balance counts only settled transactions; the available balance subtracts pending charges and holds. Spend off the available number.
FeesFees
Service or maintenance fees, plus overdraft and returned-item (NSF) fees, ATM and wire fees. Federal rules require them itemized by type and totaled for the period.
InterestInterest earned
For an interest-bearing account: the interest you earned and the annual percentage yield earned (APY Earned), required by the Truth in Savings Act.
DetailOverdraft / returned item
An OD line means your balance went negative and the bank covered the payment; NSF means an item bounced and was returned. Both carry a fee.
DetailTransaction line
Line-by-line activity: date, description, amount, and often a running balance. This is where the cryptic codes and merchant names live, decoded below.
A sample checking statement for one month. Your figures and codes will differ, but the parts mean the same thing on every statement, from any bank.
The five sections of a bank statement and what each one shows.
SectionWhat it shows
1. Header / account infoYour name and address, your account number (often masked to the last four digits), the routing number, your bank's details, and the statement period: the exact start and end dates this statement covers. Every figure on the page is bounded by that period.
2. Account summaryThe period in five numbers: the beginning balance (what you started with, which should equal last statement's ending balance), total deposits and credits in, total withdrawals and debits out, and the ending balance. Some banks add an average balance.
3. Transaction detailThe line-by-line activity, usually date, description, amount, and often a running balance column. This is where the cryptic codes and merchant names live, and where you do the real reading.
4. FeesService or maintenance fees, overdraft and returned-item (NSF) fees, ATM and wire fees. Federal rules require fees to be itemized by type and dollar amount, and overdraft and returned-item fees to be totaled for the period and the year.
5. InterestFor an interest-bearing account: the interest you earned, the annual percentage yield earned (APY Earned), and the number of days in the period. The Truth in Savings Act requires these whenever a statement is sent.

The single most useful habit is to read the account summary first and the transaction detail second. The summary tells you the shape of the month in five numbers; the detail is where you go to explain anything in the summary that surprises you. The rest of this guide is mostly about that detail section, because that's where the codes are, that's where fraud hides, and that's the part no one teaches.

Decode the cryptic transaction lines

A transaction line is usually a date, a string of letters, a merchant fragment, and an amount. The letters aren't random. They come from a small number of code families, and once you know the families you can read almost any line. Here are the ones that cover the vast majority of what you'll see:

The common abbreviations and codes on a bank statement, grouped by what they describe.
CodeWhat it means
Card and cash
POS / POS DEBIT / PURCHASEA point-of-sale purchase with your debit card at a merchant, in person or online.
CHKCARD / CHECKCARD / DEBA debit-card transaction. A 'check card' and a debit card are the same thing; this often appears while the charge is still pending.
ATMA cash withdrawal from, or deposit to, an automated teller machine.
DDADemand Deposit Account, which is just the technical name for your checking account.
Electronic transfers
ACHAutomated Clearing House, the network behind most recurring money movement. ACH DEBIT is money pulled out (an autopay bill); ACH CREDIT is money pushed in (a paycheck).
EFTElectronic Funds Transfer, the umbrella term for moving money electronically between accounts.
DES: / INDN: / CO ID:Labels some banks put on the parts of an ACH payment: DES is the company's entry description, INDN is the receiving individual (you), and CO ID is the company's identification number.
How the payment was authorized
PPDPrearranged Payment or Deposit: a consumer payment, and the most common code you'll see. Both your paycheck and a recurring autopay bill arrive as PPD.
CCDCorporate Credit or Debit: a business-to-business payment. You'll mostly see this on a business account.
WEBA payment you authorized online or in a mobile app.
TELA payment you authorized over the phone.
Balances, fees, and adjustments
INTInterest the bank paid into your account.
NSFNon-Sufficient Funds: a payment was attempted without the balance to cover it, so the item was returned. Expect a fee, often $25 to $40.
OD / OVERDRAFTYour balance went negative. The bank covered the payment and may charge an overdraft fee, the difference from an NSF.
REVA reversal that cancels an earlier transaction.
HOLDFunds temporarily set aside (a merchant authorization or a deposit being verified), reducing your available balance but not yet a posted debit.

Two of those families do most of the confusing. The first is the ACH field labels. When you see something like DES:ACH PMT INDN:JANE SMITH CO ID:1234567890 PPD, you're looking at the raw parts of an electronic payment: a description, your name as the receiver, the company's ID, and a code (PPD) saying it was a standard consumer payment. Your bank labels these because the underlying network (the Automated Clearing House, run by Nacha) defines them; the labels are a feature, not a glitch.

The second is the TREAS 310 family, which sends a lot of people searching. The "310" simply means the payment came from the U.S. Treasury by electronic transfer, and the letters in front tell you the agency:

  • IRS TREAS 310 with the description TAX REF is a federal tax refund. If you see 449 instead of 310, the refund was reduced to cover a debt you owed, per the U.S. Treasury's Bureau of the Fiscal Service.
  • SSA TREAS 310 is a Social Security payment (retirement, disability, or survivor benefits).
  • VACP TREAS 310 is a Department of Veterans Affairs compensation or pension payment.
  • DOEP TREAS 310 is a Department of Education payment, commonly a student-loan refund.

The deposit usually lands a few days before any letter explaining it, which is exactly why people see the code first and go looking. Read the agency prefix and you already know what it is.

What is this charge? Read the descriptor before you panic

The most-searched question about a bank statement is some version of "what is this charge?" The honest answer is that the most common reason a charge looks fraudulent is that it shows the payment processor's name, not the store's. A huge share of small businesses route card payments through an intermediary, so what the card network sees, and what lands on your statement, is the platform rather than the shop. The pattern to learn is PROCESSOR* MERCHANT: a processor prefix, an asterisk, then the seller's name (often truncated). Once you know it, you can decode most "mystery" charges yourself. The same descriptors show up on your credit card statement, where the decoder works identically.

Common payment-processor descriptors and the real merchant each one hides.
DescriptorWhat it really is
SQ *<seller>Square. The business after the asterisk is where you actually paid (a coffee cart, a market stall). Square caps the name at 20 characters, so it's often cut off.
TST* <restaurant>Toast, a restaurant point-of-sale system. The restaurant's name follows; Toast is only the processor.
PAYPAL * / PP*<merchant>A PayPal-funded payment. PP*AMAZONMARK is an Amazon purchase paid through PayPal, truncated to fit a 22-character limit.
APL* / APPLE.COM/BILLApple billing: the App Store, iCloud+, Apple Music, or Apple TV+. Apple can bundle several subscriptions onto one line.
AMZN MKTP USAn Amazon Marketplace purchase, whether sold by Amazon or a third-party seller. Amazon uses several different descriptors across its services.
GOOGLE *<service>A Google charge: PLAY for apps and in-app purchases, SERVICES for YouTube Premium or Google One, ADS for advertising.
DD *DOORDASHA DoorDash food-delivery order.
PADDLE.NET / FS* / FSPRG.COMA software reseller (Paddle or FastSpring) that is the legal seller of record for an app or subscription, so its name shows instead of the product's.

There's a deeper reason these are hard to read: your bank, or the card issuer, can override the descriptor a merchant set with its own internal "friendly name," and as the payments company Stripe states plainly, the merchant has no control over that mapping. So the cleanest decoder won't catch everything. When the prefix doesn't resolve it, walk the rest of the checklist before assuming theft:

  • A free trial that converted. The single most common "gray charge" is a free trial that silently became a paid subscription. The California Attorney General's office flags these as a deliberate pattern, not a billing error.
  • A recurring charge under a parent-company name. The app you subscribed to may bill under the name of the company that owns it, or a reseller like Paddle. The amount and timing usually give it away.
  • A pending charge sitting next to a posted one. A single purchase can briefly appear twice (once pending, once posted) and then resolve to one. More on that in the next section.
  • A tiny, unexplained charge. An out-of-nowhere amount under a dollar, or a $0 authorization, can be "card testing," where someone with a stolen card number runs a small charge to see if it works before attempting something bigger. A few merchants and billers also run small verification charges, so it isn't automatically fraud, but an unexplained micro-charge is worth a hard look.

This name-versus-reality problem is one of the things software is genuinely good at: when Granite reads a statement, it pulls each transaction into a clean record, so a line you can search and label beats squinting at a 16-character fragment. If a charge survives all of the checks above and you still don't recognize it, stop decoding and treat it as possible fraud (the dispute section below has the clock you're working against).

Why your balance is three different numbers

Here's the confusion almost everyone hits: your banking app shows one number, your statement shows another, and the amount you can actually spend is a third. None of them is wrong. They're measuring different things.

  • The statement's ending balance is a snapshot, frozen on the closing date of the statement period. The moment the period ends, it stops changing.
  • Your current (or posted) balance counts only transactions that have fully settled.
  • Your available balance is what you can actually spend right now: the posted balance minus pending charges and holds. Spend off this number, not the others.

The gap between them is created by the two-step way card payments work. When you tap your card, the merchant places an instant authorization hold that lowers your available balance, sometimes for an estimated amount. A day to three days later the transaction settles: the real amount is pulled, the hold drops off, and the charge posts for good. In between, your available balance reflects the hold and your statement won't show the charge at all.

This is why a few situations reliably surprise people. A restaurant terminal often authorizes about 20% over your bill to leave room for a tip, so the hold looks too high until it settles to the real total. A gas pump may pre-authorize well above your fill-up (Visa and Mastercard set a $175 ceiling on fuel pre-authorizations in 2022) and release the excess once the actual sale clears. Hotels and car-rental companies hold for the stay plus a deposit, and that hold can take days to fall off after you check out. A check or other deposit you just made can also show as "pending" while the bank verifies it, which is a separate kind of hold from a merchant authorization. In every case the money mostly resolves on its own within a few days; the statement is simply the settled, after-the-fact view.

Why the same charge looks different at every bank

Compare a statement from Chase, one from Wells Fargo, and one from a small credit union, and the identical Netflix or insurance payment can look completely different on each. This isn't sloppiness; it's the absence of a standard.

An electronic payment carries several separate fields: a company name, an entry description, a company ID, and your name as the receiver. There's no rule for how a bank turns those fields into the single line you read, so each bank concatenates and labels them its own way (some add the DES:/INDN:/CO ID: tags, some don't). On top of that, the fields are short and fixed-length. The company-name field is only 16 characters, so longer names get truncated in confusing ways, and the optional longer field that could carry a clean, human-readable description often never reaches you at all. Finally, as noted above, your bank may swap in its own "friendly name" from an internal database.

The practical takeaway: don't trust the rendering, read the parts. A charge that's unrecognizable at one bank is often obvious once you spot the truncated company name or the processor prefix. It's also the reason a tool that normalizes every statement into the same fields is useful: a payment to the same company reads consistently no matter which bank's layout it arrived in.

Reconcile it to your own records

Reading a statement and reconciling it are two different things, and reconciling is the step that actually catches problems. Reconciling just means proving that the bank's record and your own record agree. The old phrase was "balancing your checkbook," and the math hasn't changed even though the checkbook has:

  1. Start from the statement's ending balance. That's the bank's official figure for the close of the period.
  2. Add any deposits you've made that aren't on the statement yet (money in that hasn't posted).
  3. Subtract any payments you've made that haven't cleared yet (checks you wrote, charges still pending).
  4. Compare the result to your own running balance. If the two match, the month is clean. If they don't, the difference is a thread to pull: a charge you didn't record, a duplicate, a fee you didn't expect, or a transaction that isn't yours.

You don't need a paper register to do this. The point is the cross-check: a number that doesn't tie out is the earliest signal that something is wrong, and it's a far better fraud detector than scanning the list and hoping a bad line jumps out. If you keep your receipts where you can match them to charges, reconciling also tells you which line goes with which purchase, which is what turns a statement into usable records at tax time. The hard part has always been having every piece in one place: this period's statement, last period's, and the receipts behind the lines. That's the work software removes: ask Granite what you paid a given company across the year and it totals the matching lines and cites the statements they came from, so you're checking against something instead of from memory.

Spot fraud, and the clock to dispute it

This is the part of the statement worth real attention, because the stakes are concrete and the deadlines are fixed by law. The Federal Trade Commission reported that U.S. consumers lost more than $12.5 billion to fraud in 2024, up 25% from the year before, and that more was lost through bank transfers and cryptocurrency than every other payment method combined. Check fraud is climbing too: banks filed more than 680,000 suspicious-activity reports for check fraud in 2022, nearly double the prior year, according to the Financial Crimes Enforcement Network. Your statement is the place those problems show up first, and how fast you act decides how much you're protected.

For a debit card or any other electronic transfer, the rules come from federal Regulation E. Your maximum liability for unauthorized use depends on how quickly you report it:

Your maximum liability for unauthorized debit-card charges under Regulation E, by how fast you report.
When you report itMost you can be liable for
Within 2 business days of noticing the card lost or stolenUp to $50
After 2 business days, but within 60 days of the statementUp to $500
More than 60 days after the statement was sentUnlimited, for unauthorized transfers that happen after the window closes

The number that matters most is 60 days: that's your window, counted from the day the statement showing the problem was sent, to report an unauthorized electronic transfer and keep full protection. Miss it and you can be on the hook for losses that pile up afterward. Once you do report, the bank generally has 10 business days to investigate and tell you the result, and if it needs longer it usually must put the disputed money back in your account provisionally while it finishes. This is why reading the statement on time is itself a protection: the clock starts whether or not you opened it.

One distinction trips people up, so it's worth stating plainly: not every dispute runs on the same rules.

  • A debit card, ACH, or ATM transfer is covered by Regulation E, with the 60-day-from-statement window above.
  • A forged or altered paper check is governed instead by the Uniform Commercial Code, which puts a duty on you to examine your statement promptly and sets a hard one-year outer deadline to report an unauthorized signature or alteration, after which you can't recover regardless of fault. (The UCC is enacted state by state, so the details can vary where you live.)
  • A credit-card charge follows yet another law, Regulation Z, with its own 60-day billing-error window and a $50 liability cap. Credit and debit feel the same at the register, but their dispute rights are not identical.

Reporting itself is simpler than the rules around it. Call the number on the back of your card or use your bank's in-app dispute button, name the transactions you don't recognize and the amounts, and ask for it in writing if the bank doesn't start one for you (keep a copy, and follow up if you don't hear back within the investigation window). The date you report is the date the clock measures, so do it the day you spot the charge rather than waiting until you're certain.

None of this is legal advice, and your bank's own agreement may give you more protection than the legal floor. But the instinct to build is simple: review each statement within a couple of weeks of getting it, and report anything you don't recognize right away rather than waiting to be sure. The deadlines reward the people who read on time.

How long to keep bank statements

Once you've read and reconciled a statement, it still has a job to do. As a rule, keep ordinary statements for about a year, and keep any statement that supports a tax return for roughly seven, because it documents deductible expenses, business income, or charitable gifts you may have to prove. Hold statements tied to a major purchase, a loan application, or an open dispute until that matter is fully closed. For where bank statements sit among everything else, how long to keep important documents has the full retention table.

The practical catch is that most banks only keep your statements available online for a limited stretch, often a year or two, after which you may have to request older ones or pay a fee. So the safe move is to download the PDFs as they arrive rather than assuming they'll always be a click away. A statement also carries your account number and a month-by-month map of your spending, so it isn't a document to leave in an email inbox or a shared drive, which is why Granite encrypts every document at rest.

That's the whole document: five parts, a few code families, three balances, and one deadline. Granite reads and files the statements you already have, pulls every transaction into something you can search, and answers questions about your own money with a citation back to the line. It isn't your bank and can't dispute a charge for you, and it isn't accounting software, but if you run a one-person business off your checking account, Granite for solo businesses keeps the statements next to the invoices and receipts behind every line. The deposits on the statement, by the way, started life as a line on your pay stub; read both and they check each other.

FAQ

Reading a bank statement, answered

What do the codes on my bank statement mean?
Most fall into a few families. POS, CHKCARD, and CHECKCARD mark a debit-card purchase. ACH and EFT mark an electronic transfer (ACH DEBIT is money pulled out for autopay; ACH CREDIT is money pushed in, like a paycheck). ATM is a cash machine. On an electronic transfer your bank may label the underlying fields: DES is the company's entry description, INDN is the receiving individual (you), and CO ID is the company's ID number. A three-letter code like PPD, WEB, or TEL describes how the payment was authorized (in writing, online, or by phone). INT is interest paid to you, NSF means an item bounced, OD means you overdrew, and HOLD means funds are temporarily set aside but not yet a posted charge.
What is this charge on my bank statement?
Before assuming fraud, check whether the name is just a payment processor instead of the store. A charge reading SQ* is a Square seller, TST* is a restaurant on Toast, PAYPAL* or PP* is a PayPal-funded purchase, APPLE.COM/BILL covers App Store, iCloud, and Apple subscriptions (sometimes several on one line), AMZN MKTP is Amazon Marketplace, and GOOGLE* is Google Play or a Google subscription. The seller's name usually follows the asterisk, often truncated. Other common culprits are a free trial that converted to a paid subscription, a recurring charge under a parent-company name you don't recognize, or a pending authorization sitting next to the real charge. If it's genuinely none of yours, treat it as a possible fraud and contact your bank.
How long do I have to dispute a charge on my bank statement?
For a debit card or other electronic transfer, federal Regulation E gives you 60 days from the date the statement showing the error was sent to report it and keep full protection. Report a lost or stolen debit card within two business days of noticing and your maximum liability for unauthorized use is $50; report after that but within the 60-day window and it can rise to $500; wait beyond 60 days and you can be on the hook without limit for unauthorized transfers that happen after the window closes. Once you report, the bank generally has 10 business days to investigate. The rules differ for paper checks (governed by the Uniform Commercial Code, with a one-year outer deadline) and for credit cards (governed by Regulation Z). The practical rule is simple: read the statement and report anything wrong within 60 days.
Why doesn't my bank statement balance match the balance in my app?
Because they measure different moments. Your statement's ending balance is a snapshot taken on the closing date of the statement period. The balance in your app is live and usually shows two numbers: the current (posted) balance and the available balance, which is the posted balance minus any pending charges and holds. A gas-station or hotel hold, a card purchase that hasn't settled, or a deposit still being verified will make your available balance, your current balance, and last month's statement ending balance three different numbers, all correct.
What does TREAS 310 mean on my bank statement?
It's a payment from the U.S. Treasury sent by electronic transfer; the letters before TREAS tell you which agency. IRS TREAS 310 with the description TAX REF is a federal tax refund (you'll see 449 instead of 310 if the refund was reduced to cover a debt you owed). SSA TREAS 310 is a Social Security payment, and VACP TREAS 310 is a Department of Veterans Affairs compensation or pension payment. The deposit often lands a few days before any letter explaining it.
What is the difference between a pending and a posted transaction?
A pending transaction has been authorized but not finalized, so the amount can still change and it hasn't permanently moved money yet; it does reduce your available balance. A posted transaction is complete and settled, and it's what appears on your statement. Most card purchases post within one to three business days. This is why a restaurant might show a charge about 20% higher than your receipt for a day (the tip was pre-authorized) before it settles to the real total, and why a pending charge can briefly look like a duplicate of one that has posted.
Why does the same subscription look different on different banks' statements?
Because there's no standard for how a bank turns the underlying payment data into the one line you read. An electronic payment carries separate fields (a company name, a description, an ID), and each bank joins and labels them its own way. The company-name field is only 16 characters, so longer names get cut off in confusing ways, and your bank's own database may swap in a 'friendly name' the merchant can't control. So the same Netflix or insurance charge can read cleanly at one bank and look like gibberish at another, with neither being wrong.
How long should I keep bank statements?
About one year for ordinary statements, and roughly seven years for any statement that supports a tax return (it documents deductible expenses, business income, or charitable gifts). Keep statements tied to a major purchase, a loan, or a dispute until that matter is fully closed. Most banks only keep your statements available online for a limited window, so download the PDFs rather than assuming they'll always be there. See how long to keep important documents for the full table.

Keep reading

Related from Granite

Let Granite read your bank statements for you

Drop in a statement and Granite reads it, pulls out the account, the period, the balances, and every transaction, and files it by account automatically. Ask what you paid a particular company this year and get the total with a citation to the lines it came from. Free for your first 25 documents.