Skip to main content

Bank CSV Guide

How to Combine Multiple Bank CSVs Into One Spreadsheet for Taxes (2026)

You downloaded your bank transactions. And your credit card transactions. And maybe a second credit card. Now you have three or four CSV files and they all look different. Here's how to get them into one spreadsheet so you can actually do your taxes.

Agnė, founder of Categorize My Expenses
Written by Agnė

Key Takeaways

  • Most self-employed people have 2 to 4 accounts (checking, savings, one or two credit cards). Each one produces a separate CSV with different column layouts.
  • Before combining files, normalize each CSV to three standard columns: date, description, and amount. Add a fourth 'Source' column so you know which account each transaction came from.
  • Watch for inter-account transfers (checking to savings, credit card payments). These appear in both files and will inflate your totals if you don't remove or flag them.
  • The combined file is just the starting point. The real work is categorizing each transaction into Schedule C lines, which is what takes most people hours.

If you're self-employed, chances are your financial life is spread across multiple accounts. A checking account for deposits. A credit card you use for most business purchases. Maybe a second credit card. Maybe a savings account you dip into occasionally.

Each of those accounts gives you a separate CSV file when you download your transactions. And each file has different column names, different column orders, and different formatting conventions. One bank puts the date first, another puts it third. One uses negative numbers for purchases, another uses separate debit and credit columns.

Before you can make sense of your finances for tax purposes, you need all of those transactions in one place, in one consistent format. This guide walks you through exactly how to do that.

Why You Need One Combined File

Your accountant doesn't want four separate spreadsheets. Your tax software doesn't either. What you need for Schedule C is a single, complete list of every transaction from the tax year, so you can sort them, categorize them, and calculate your totals.

When transactions are scattered across multiple files, problems creep in. You miss deductions because you forgot to check the second credit card. You double-count a transfer that shows up in both your checking and savings accounts. You lose track of which file you already reviewed and which one you haven't.

One file, one view, one pass through your transactions. That's the goal.

The Column Problem

The biggest obstacle to combining CSV files is that every bank uses a different column layout. There is no standard. Here's what you'll typically see:

Chase

Transaction Date, Post Date, Description, Category, Type, Amount

Bank of America

Date, Description, Amount, Running Bal.

Capital One

Transaction Date, Posted Date, Card No., Description, Category, Debit, Credit

American Express

Date, Description, Amount

Four banks, four different formats. You can't just paste them into one spreadsheet because the columns won't line up. You need to normalize each file first so they all share the same structure: Date, Description, Amount, Source.

Step-by-Step: Combining Your CSVs

Here's the process for merging multiple bank and credit card CSV files into a single spreadsheet. You can do this in Excel, Google Sheets, or any spreadsheet tool.

1. Open each file and identify the relevant columns

Open every CSV you downloaded and find the three columns you actually need: the transaction date, the description (or merchant name), and the amount. Every bank includes these, but they're often buried among extra columns like post date, running balance, card number, or internal category.

2. Delete the columns you don't need

Get rid of running balance, card number, post date (you only need transaction date), and any bank-generated category column. Those categories (like “Shopping” or “Entertainment”) don't map to Schedule C lines and will only add confusion.

3. Rename headers to match across all files

Standardize every file to the same three column headers: Date, Description, Amount. It doesn't matter what the bank called them. “Transaction Date” becomes “Date.” “Merchant Name” becomes “Description.” Consistency is what makes the merge work.

4. Fix amount formatting

This is where things get tricky. Some banks use negative numbers for purchases and positive numbers for deposits. Some (like Capital One) put debits and credits in separate columns, so you need to combine them into a single Amount column. Credit cards may show purchases as positive numbers, which is the opposite of what checking accounts do. Pick one convention (negative for money going out, positive for money coming in) and apply it consistently across all files.

5. Add a “Source” column to each file

Before you merge, add a fourth column to each file labeled “Source.” Fill every row with the account name: “Chase Checking,” “Amex Business,” “Capital One Venture,” and so on. Once everything is in one spreadsheet, you'll need to know where each transaction originated. This is especially important when you're tracking down transfers or reconciling totals.

6. Copy all rows into one master spreadsheet

Create a new spreadsheet with the headers: Date, Description, Amount, Source. Then copy all the data rows from each normalized file into this master sheet. Don't copy the headers from each file, just the data. Sort the master sheet by date when you're done so everything is in chronological order.

Watch Out for Transfers and Duplicates

Once you've combined files from multiple accounts, you'll almost certainly have duplicate entries that need to be removed. These aren't bugs. They're the natural result of inter-account transactions showing up in both files.

Credit card payments

When you pay your credit card bill from your checking account, that payment shows up as an outgoing transaction in your checking CSV and as an incoming payment in your credit card CSV. It's the same money moving from one account to another. If you don't remove both entries, your expense totals will be inflated.

Bank-to-bank transfers

Moving money from checking to savings (or vice versa) creates the same problem. One account shows it as a withdrawal, the other shows it as a deposit. Neither is income or an expense. Both entries should be removed or flagged as “Transfer” so they're excluded from your tax totals.

How to spot them

Sort your combined spreadsheet by amount. Look for matching dollar amounts with opposite signs on the same date (or within a day or two). A $2,500 outgoing from Chase Checking and a $2,500 incoming to the Amex on the same day is almost certainly a credit card payment. Flag or delete both rows.

Using Excel Power Query (The Faster Way)

If you're comfortable with Excel, Power Query can automate most of the merging process. Put all your CSV files into a single folder, then go to Data → Get Data → From Folder. Select the folder, and Excel will combine every CSV in it into one table. You can then use the “Combine & Transform” option to map columns across files, rename headers, and filter out rows you don't need.

The advantage is that Power Query remembers your steps. If you need to add another CSV later (maybe you forgot an account), you just drop it in the folder and refresh the query.

If you use Google Sheets instead of Excel, there's no equivalent to Power Query. The manual approach works: open each CSV in a separate tab, normalize the columns, then copy all rows into a master sheet.

The Real Challenge Starts After Merging

Combining your files is necessary, but it's not the hard part. Once you have one master spreadsheet with 500 to 1,500 transactions, the real work begins. You still need to:

  • Mark each transaction as business or personal
  • Assign a Schedule C category to every business expense
  • Handle mixed-use expenses (phone, internet, car) with proper percentage splits
  • Calculate totals by category for your tax return

Even at 10 seconds per transaction, 800 transactions means over two hours of tedious, repetitive work. And that assumes you already know which Schedule C line each expense belongs on.

These related guides cover the individual steps in more detail:

Skip the merging. Upload each CSV separately.

Categorize My Expenses handles multiple files from different banks. Upload each CSV as-is (no need to normalize columns or merge files), and every transaction gets categorized into Schedule C lines automatically. Upload once and the AI handles it. $39.

Disclaimer: This article is for educational purposes only and does not constitute tax, legal, or financial advice. Tax rules change, and individual situations vary. Consult a qualified tax professional for advice specific to your situation. Categorize My Expenses is a financial data organization tool. It is not a tax preparer and does not provide tax advice.

Related Guides