Don't Rely on Your "Available Balance"
Many financial institutions engage in a practice where they will reflect your "Available Balance" but can not recognize transactions that come in after the end of the business day, or checks. Available balance generally reflects the money you have in your account available to you, but a common trigger of overdraft fees occurs when the transaction is actually posting (moving from a "pending" status to "posted"). Banks generally place a hold on your money for 3 business days if it's a credit purchase, and if the bank doesn't receive receipt of payment by then, they will release the money back into the account. However, when a credit purchase is made, the merchant has much longer than that to collect payment. Therefore, it is not uncommon to see transactions being withdrawn days after they were made, therefore throwing off the expected available balance.
Balance your checkbook. If overdraft fees are a problem for you, then you're probably cutting it a little close in your budget, perhaps living from paycheck to paycheck. Not only will balancing your checkbook help you avoid overdraft fees, but it'll also give you a firm knowledge of how much money is in your account, which helps you prevent bounced checks and detect errors from your bank. The banks will even provide these free of charge to you, and most offer online banking that electronically calculates for you.
Try the Envelope System
Create a budget and divide your spending habits into several categories. Put the cash allotted for each category into an envelope for that category. Use the cash in the envelopes and once you run out of cash, that's it. Don't go to the ATM, don't use the credit card, don't use the debit card, don't write a check. Discipline yourself to stick to the budget. It might take a few months to get it down, but once you do, it's a sure-fire way to avoid overdraft fees. With this system, you simply can't spend money that you don't have.
Create an Artificial Buffer
Decide on a certain amount that you will always have in your account, and never dip into. Let's say that amount is $100. You keep an eye on your actual balance and when it gets to $100, you stop spending. Period. You pretend that you've run out of money, and you never touch that $100. If your account has a minimum balance to avoid monthly fees, keep that amount "hidden" in your account and pretend it isn't there. Actually subtract it out of your checkbook so that the balance you see is what you can spend.
Research Overdraft Protection
If you have trouble keeping track of your expenses in relation to your actual balance, you may want to look into an overdraft protection program in which your main account is linked to a secondary account (like your savings account, or a line of credit). If your main account is overdrawn, money can be pulled from the secondary account and you don't get slapped with an overdraft fee. But, the effectiveness of this depends on two things:
You must have enough money in the secondary account to ensure that IT doesn't get overdrawn. The overdraft protection program might have its own monthly fees. Are they worth it? Beware because some banks charge a fee each time you dip into your overdraft account, albeit less than an insufficient funds fee.
Opt-out of Overdraft Fees Altogether
Overdraft fees are actually supposed to be a service to you because it allows you to spend more money than you have at the time of purchase, so when you make a purchase, you don't get declined (or so that your checks don't bounce,) and you are spared the embarrassment. But that "declined status" may be worth the $30 to you... Ask your bank about opting out of that service. You might have to fill out a little paperwork, but once it's done, you won't have any more overdraft fees. What will happen is that when you try to spend money that you don't have, your card will be declined on the spot. If you go this route, it'd be wise to avoid using your checkbook - they can't be declined, and bounced check fees can be just as bad as overdraft fees. However, opting out of overdraft protection is not 100% effective. There are certain transactions such as purchasing gas from a gas station, where the gas station simply debits a nominal amount such as $1.00 from your account immediately and debits the true value of the transaction several days later, by which time your account may not have enough to cover the transaction, and your bank has to pay the money to the gas station so your account gets an overdraft fee regardless.
Use a Bank With a Line of Credit Instead of an Overdraft Protection Program
Some banks provide a line of credit that can be used if you go over your available balance. Typically a finance charge is applied to the amount of credit used, but it can be significantly less than an overdraft fee, resulting in a charge of a few cents instead of several dollars. Or, ask your bank if you are eligible for any credit cards to link to your account, oftentimes they offer lower interest rates than others.