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.
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
How to Download Your Bank Transactions as a CSV (2026)
Step-by-step instructions for Chase, Bank of America, Wells Fargo, Capital One, Citi, US Bank, PNC, and Discover, plus what to do if your bank isn't listed.
Read moreHow to Clean Up Your Bank CSV for Tax Prep (2026)
Messy CSV exports with cryptic transaction descriptions? Here's how to clean, normalize, and categorize your bank data step by step.
Read moreHow to Download Credit Card Transactions as a CSV (2026)
Step-by-step instructions to download transactions from Chase, Amex, Capital One, Citi, Discover, and Apple Card as a CSV file for self-employed tax prep.
Read moreHow to Organize Bank Statements for Your Accountant (2026)
Your accountant said 'send me your bank statements.' Here's exactly what they need, what format to use, how to organize everything, and how to avoid a surcharge for messy records.
Read more