If all of your clients always pay your consulting fee in a timely fashion, consider yourself blessed. Who among us that has been consulting for any length of time has not had at least one customer that stretched the limits of their agreement when it comes to payday? Oh, that first check arrives right on time — maybe even early. Then they let one slip a day or two past the due date. If you don't object, next thing you know they're a week overdue, then eventually a month or even more.
When you allow your client to pay you late, you are essentially financing their business at no interest. Did you mean to do that? Of course not.
Why do companies let payments slide? How could they do that to us poor, struggling independents? Let's face the facts: your client is a business, not a human being. The job of everyone in that business is ultimately to make money for the company, not to keep us consultants fat and happy. If they can stretch out a payment without interest, they'd be stupid not to do so. What you as a consultant need to do is to can that "can".
First of all, you need to have a contract that stipulates payment terms. If you don't have it in writing with their signature on it, how can you expect them to honor your agreement? "Did we say something about when payment is due? I can't recall..." forms a typical response. If your terms aren't formally stated, then they will be informally followed. It doesn't matter how chummy you are with your client — good fences make good neighbors, and you don't want to encourage anyone to trample on your income. You probably want to review your contract with a lawyer, but for starters there's a good sample contract at the 'Lectric Law Library.
Second, if your client abuses your terms you must object. Your first warning shot doesn't even need to sound like one. "Hello, I just wanted to make sure that your payment wasn't lost in the mail, since it is now five days late." Many clients will gather from this cordial reminder that you take timely payment seriously. For repeat offenders, state unemotionally that all work will cease until payment is received. That almost always does the trick, unless they have no further need of your services anyway. If someone stiffs you for good, then get your lawyer to send them a letter. Most companies will go ahead and pay rather than risk legal action and the bad publicity it creates.
I've often had clients that tried to pull my heartstrings. Smaller companies really are often on a tight budget. They may not really be faring any worse than the big guys, but they can't just run up a big debt to cover their operations either. So, they're looking for ways to cut back and stretch cash, and then they see your invoice lying there waiting to be paid. Naturally, we consultants like to be helpful to our clients (it's what we do), but you have to make it clear to your customer that your services do not include financing (unless you really do want to let them pay interest).
Which brings us to a final point: incentives. Negative incentives rarely work. Unless you charge an exhorbitant late fee, your client is likely to look at any penalty as a reasonable interest rate for additional financing. Plus, penalties leave a bad taste in everyone's mouth. Try a reward for a good payment practices instead. Maybe you'll knock 5% off if paid within 10 days (and naturally you'll build that extra 5% into your fee). People like to achieve rewards more than they like to avoid punishment, as we learn from Behavioral Psychology. Another finding of Behaviorism is that intermittent rewards work better than consistent ones. A strategy that's worked well for me is to give a "one-time only" out-of-the-blue customer appreciation credit to a client that has paid their bill on time for a long time, like a year or more. It's not included in our agreement, so it's unexpected and perceived as a heartfelt "Thank you for being such a good client." It tells them how important timely payment is to me, and furthermore how important their continued business is to me.