Use accrual accounting, unless you have a truly cash based business. Then you should still use accrual accounting.
When you use accrual accounting you are able to compare apples to apples.
If I pay an entire year of liability insurance at once, I need to see that expense spread out over the year to compare month to month on my P&L.
If I invoice a client today for work completed, my costs (time and other expenses) have already occurred. I need to see that income versus the expenses to earn that income over the same period to be able to see what my true profitability is.
As much as possible, you want to see your income versus expenses in moderately real time. Only then can you really see what you are earning and what you are spending well enough to make changes that truly impact your bottom line. Excuses are easier to make that obscure what you are truly seeing when you use cash accounting. Being honest and true and real in your financial data is the only way to start making great financial decisions. Accrual accounting is the only way to do that.
(This is about day to day bookkeeping, not tax accounting, before the hate mail starts to roll in.)