What’s the Best Accounting Software for Your Small Business? - Erin Armstrong

What’s the Best Accounting Software for Your Small Business?

by | Dec 30, 2019 | Accounting & Logistics

2017 UPDATE: my 2017 review can be found HERE.  If you’re truly interested in understanding the user experience, however, I would highly suggest reading (or at least skimming) this article to get a more thorough understanding. 

Once upon a time, the vast majority of small and medium sized businesses in the US used one of the desktop versions of QuickBooks® software (Pro, Premier, Enterprise, etc.) for their business accounting.

Over the last five years, however, there has been a trend toward cloud-based, online accounting software, with applications such as Xero, FreshBooks, and QuickBooks Online® gaining an increasing share of the market.

So the BIG question becomes:

What’s the best accounting software for your small business?

While you can find many articles about the general advantages of cloud-based, online accounting software applications over on-premise applications (easy access from multiple devices, automatic backups, increased security, ability to sync with different apps, etc.), less has been written comparing the actual functionality of the different specific accounting applications. Because of this, business owners often have a difficult time deciding which small business accounting software they should use.

In this article, I will compare the four top accounting software applications for small to medium sized businesses: QuickBooks (desktop versions), QuickBooks Online, Xero, and FreshBooks.

Instead of an exhaustive feature comparison chart (you can find that elsewhere), I will highlight the main advantages and disadvantages of each program that will make a real difference to you in terms of your daily business accounting.

This is important, because some of these applications have features that either don’t work well or are very difficult or time-consuming.

So as we look at each software application, I will try to show not only what functions are possible, but how easy different functions are to use.

I am a Certified ProAdvisor® for QuickBooks and QuickBooks Online, and a certified advisor for Xero and FreshBooks software. In addition, during the years when I ran my own bookkeeping company, I gained extensive, real-world experience with all of these programs.

Just a heads-up—this is a lengthy blog post with a heavy emphasis on the technical details. For casual readers or anyone who just wants to get to the bottom line, click here.

For the rest of you, let’s get started!

QuickBooks desktop versions (Pro, Premier, and Mac):

There is a reason that most professional bookkeepers and accountants use desktop versions of QuickBooks. Created in 1982, and then upgraded to a double-entry accounting system in 1994, QuickBooks has been the industry standard for years.

In this post, I will cover QuickBooks Pro, QuickBooks Premier, and QuickBooks Mac (I will not cover QuickBooks Enterprise, which has more advanced features). There are multiple different versions of each of these QuickBooks applications, but they all share the same basic features and functionalities.

The Good:

In terms of pure functionality, QuickBooks desktop software offers more features and options for customization than any other accounting applications. Let’s start with its reporting capabilities. The other top accounting applications have many standardized report options (such as Profit and Loss, Balance Sheet, or Accounts Receivable Aging reports). While these standardized reports can be tweaked a bit, they can’t compare with the flexibility that you get from the customized reporting options in QuickBooks desktop software. Why are customized reports important? Because they give you the exact information you need for your specific business or industry. Whether you need to track or compare sales to specific customers, product or service profitability, the payroll liability flow, payments made within a specific time period for a specific type of expense, loan re-payments made to vendors or shareholders, etc., QuickBooks desktop is your best bet. Another important functionality that QuickBooks desktop offers is the ability to track job costing. At this time, Xero and FreshBooks do not support job costing at all, and QuickBooks Online only offers a limited version. If you need to track job costing for your business, you will want to use QuickBooks desktop.

QuickBooks desktop software also has more shortcuts and time-saving features, making it the best choice for anyone who does heavy-duty bookkeeping tasks. This program offers keyboard shortcuts for almost every small task in both Mac & PC versions. This may not seem like that big of a deal, but if you’ve ever had to re-categorize hundreds of transactions—or if you find yourself in that position one day—you will be thankful that you don’t have to use your cursor constantly to click a box and agree to every transactional change. Another huge time-saving feature—that becomes a favorite of all of my clients—is the “Find” feature. By simply typing “ctrl” + “f” (or “command” + “f” for Mac users) a pop up window will allow you to type in exactly what you’re looking for. So if you’re looking for a $1250.00 debit that happened sometime last year, you can type that amount in this box, and it’s going to pull that number from every place it could possibly be in the file. While this doesn’t sound revolutionary, it is when we look at FreshBooks, Xero, or QuickBooks Online (all three have search features, but require you to search within specific registers—they will not search universally). Another time-saving feature of QuickBooks desktop software is the memorized transactions feature, which allows you to save templates, recurring transactions, and specific sets of data. (QuickBooks Online offers this functionality too, but it is not included with the basic version—you’ll have to upgrade to QuickBooks Essentials for an additional $17.00 per month.) So whether you are regularly running customized reports or re-categorizing hundreds of transactions, you will be able to do this work more quickly and efficiently with QuickBooks desktop software.

A final advantage of QuickBooks desktop software is that it has been the industry standard for so long that most accountants are more familiar with this software than any of the others. While you might be able to find an accountant who is comfortable working with another software, this might be an additional step that business owners want to avoid.

The Bad:

Let’s start with the obvious—if you use a desktop version of QuickBooks, you will have to keep your QuickBooks file on a single computer. Larger companies often store their QuickBooks files on local servers, allowing multiple people access to the same file from different workstations. For small businesses, however, setting up a local server is probably not worth the time and effort—especially since users still wouldn’t be able to access files from offsite. Also, since QuickBooks files aren’t hosted on remote servers, they are not automatically backed up. (Users can schedule regular backups with QuickBooks desktop versions, but they won’t have all of the data retrieval options available with cloud-based applications.) Another potential drawback for some clients is that QuickBooks desktop versions will not auto-sync with online bank or credit card accounts.

Another strike against QuickBooks desktop software is its interface. While QuickBooks’ layout continues to improve every year, QuickBooks Online, Xero and FreshBooks each have more intuitive interfaces. With QuickBooks desktop software, you will need to budget a little more time to learn how to use the system.


QuickBooks Pro, starting at $174.95
QuickBooks Premier, starting at $249.95
QuickBooks Mac, starting at $180.96

(Intuit recommends buying new software every 3 years.)

The Bottom Line:

You should use QuickBooks desktop software for your business if:

  • Your business has more than 100 transactions per month
  • Your business uses job costing
  • You want customizable reporting options
  • You need to perform heavy-duty bookkeeping tasks

You should consider moving to an online accounting system if:

  • Your business has fewer than 100 transactions per month
  • You want an accounting software that is intuitive and easy to learn
  • You need to access your file from different computers or devices

QuickBooks Online:

QuickBooks Online is a cloud-based, online accounting software application that was first launched in 2000 as part of the growing trend towards cloud computing and 24-7 access to data online. In 2013, Intuit rebuilt QuickBooks Online from the ground up so that it became more mobile & app friendly and more competitive with Xero’s growing popularity.

The Good:

If you want to move to an online accounting software system, QuickBooks Online is one of your best options. With this application, you can feel confident that your accounting records are safely backed up as well as accessible from any computer—or smart phone or tablet—you want to use. QuickBooks Online can also sync with a large number of different apps, which allows users to do some amazing things (such as automatically importing credit card payment data, using smart phones for time-tracking when out of the office, and even generating data for employee reviews). Two particularly useful features in QuickBooks Online are automated invoicing and automated receipts. These features allow users to set up recurring invoices that will be emailed to clients on set dates, and automated receipts that get generated when the client pays the invoice. (Xero and FreshBooks both offer these features, but QuickBooks desktop versions do not.)

The Bad:

While QuickBooks Online is one of the best online accounting software options, it suffers from the same weaknesses that affect all cloud-based accounting applications. To begin, it will take you far longer to complete many simple tasks in QuickBooks Online compared to QuickBooks desktop. A good example is “un-reconciling” an account (there are plenty of reasons why you might need to do this, the simplest of which is that you accidentally deleted a transaction after you already reconciled the account). To un-reconcile an account in QuickBooks Online, you have to manually clear each transaction one-by-one, which could take a long time if your business has hundreds of transactions per month. (With QuickBooks desktop, this task can be accomplished with one click.) To take another example, if your accountant tells you to re-categorize your car loan payments from expense line items to equity line items in your file, there is no easy way to make this change using QuickBooks Online. In QuickBooks desktop, it would be as simple as changing the line item, but in the online version requires several extra steps including making a journal entry and then deleting—and possibly un-reconciling—your original entry that was marked as an expense. Another thing that makes bookkeeping with QuickBooks Online more time-consuming is that the basic version does not allow users to set up recurring transactions (for example, monthly transfers from one account to another, monthly journal entries to account for inventory fluctuations, etc.). In order to set up recurring transactions, you are required to upgrade your account to the QuickBooks Essentials level (which will cost around $17.00 more per month). Finally, QuickBooks Online does not offer the same keyboard shortcuts that make QuickBooks desktop so time-efficient. For example, instead of being able to use “ctrl + delete” (or the “escape” button) to delete a transaction, you have to click on one button, and then a second button, and then a third button to confirm you want to delete the one transaction.

Another consideration for businesses considering moving to an online accounting software application is the amount of time it will take the application to sync and update. This can be a problem for all types of cloud-based applications, including QuickBooks Online. If you own a small business with very few monthly transactions, this will not be an issue for you. If, however, you have several hundred transactions per month, it can be annoying to stare at your computer screen for long periods of time waiting for your application to respond. I have already mentioned that one of the advantages of QuickBooks Online is the ability to sync with many different applications, but syncing creates some of the biggest lag times when using online accounting applications. A good example of this—that I have seen over and over in my business—is where coffee shops and restaurants have synced their QuickBooks Online applications with Square to accept payments. While this seems like a great time-saver, it can actually take a huge amount of time to process if you are dealing with a large number of transactions, because each transaction will create a delay in the application, and each one must be processed individually. In fact, many of my clients have had their QuickBooks Online applications brought nearly to a standstill because of the number of unprocessed Square payments in the queue. Imagine importing 1200 credit card / Square payments individually—with a 5 to 15 second delay after each one—and you will understand why I sometimes roll my eyes when I hear about the time-saving benefits of cloud-based accounting. Once again, if your business has very few transactions—say less than 100 per month—then this shouldn’t be a problem for you.


QuickBooks Online subscriptions start at $12.95 per month and go up to $39.95 per month.

The Bottom Line:

You should consider using QuickBooks Online for your business if:

  • Your business has fewer than 100 transactions per month
  • You need the flexibility and security of a cloud-based accounting system

You should probably stick with an on-premise QuickBooks system if:

  • Your business has more than 100 transactions per month
  • You need more customized reporting options than QuickBooks Online offers
  • You need to do heavy-duty bookkeeping tasks


Like QuickBooks Online, Xero is a cloud-based, online accounting software application. Xero is based in New Zealand, and was released in the United States in 2012. Xero is geared specifically toward small business owners, promising them an accounting system that makes sense to non-accountants.

The Good:

Like QuickBooks Online, Xero provides the obvious advantages of a cloud-based accounting application: automatic backups; easy access from a multitude of different devices; syncing with a huge amount of different apps (more than QuickBooks Online or FreshBooks); and automated invoicing and receipts for ongoing clients.

Xero differs from QuickBooks Online in that it is designed for small businesses that work closely—and regularly—with accounting professionals. Offering separate logins and data access for each user, Xero allows both business owners and their bookkeepers—or accountants—to log in at the same time and see the exact same information. (QuickBooks Online and FreshBooks also allow multiple people to work in a file at the same time, but Xero offers the best options for collaboration within a single file.) Xero encourages users to write notes on line items they do not know how to categorize, and then their accounting professionals can use these notes to help them make the actual categorizations. Depending on your personality, this kind of collaboration can be either great or annoying. On one hand, it’s nice that communication about accounting is actively encouraged and that so many controls are in place (presumably to protect the business). On the other hand, many small business owners are perfectly capable of keeping their own books, and don’t need to check in regularly with a bookkeeper or accountant.

The Bad:

Xero is designed as a bare-bones application that can sync with 3rd party apps for additional functions. As a result, there is a long list of features that Xero lacks (some big ones are job costing, 1099 tracking, time tracking, and recurring transactions). While you can find 3rd party applications for some of these missing features, in my experience, the integration is rarely seamless. Xero is also very limited in the way of basic data organization and reporting functions. As we have seen, QuickBooks Online has fewer options for customized reports than QuickBooks desktop. Xero, in turn, has far fewer options for reports than QuickBooks Online. Xero gives you several basic options for running an Income Statement, Balance Sheet, Aged Payables, Aged Receivables, etc., but you can only manipulate a few factors on any one of those reports. Xero also doesn’t allow users to organize their Chart of Accounts by making sub-accounts, which is a basic feature in both QuickBooks desktop and QuickBooks Online. In addition, because Xero does not allow users to hide or delete many of its default categories, any reports that you run are probably going to contain many more line items than you actually need. The end result is that most reports generated by Xero will contain at least some unnecessary, extraneous information.

As we saw earlier, Xero was designed for small business owners who intend to work closely—and regularly—with accounting professionals for their bookkeeping. While this arrangement works for many small business owners, for the ones who want to do all of their own bookkeeping, Xero might not be the best fit. Ironically, the reason for this is that Xero tries so hard to be user friendly that it actually creates more confusion for users who don’t have a firm grasp of accounting. For starters, Xero tries to use non-technical terms within the application in order to make it easier for non-accountants to understand. The problem is that they do this in a confusing and inconsistent way. For example, invoices are sometimes referred to in the application as “money coming in” and sometimes as “invoices,” and bills are referred to both as “money going out” and “bills.” Probably the biggest example of misleading terminology that Xero uses is its “reconcile” function. In accounting, reconciling means comparing and matching your accounting records with your official monthly statements from your bank or credit card company. It also involves making occasional adjustments to your accounting records to ensure that they are 100% accurate and in agreement with your official bank statements. (If your business is ever audited, that’s something the IRS will want to see.) With Xero, the reconcile function allows you to do the comparison part—by importing bank and credit card transactions—but it does not allow users to resolve any discrepancies between their files and the official statements that they receive from their banks and credit card companies. As anyone who has used any accounting software knows, errors frequently occur when importing bank or credit card transactions, such as transactions entered twice, missed days, etc. So with Xero, users are left with discrepancies in their file that get recorded as “Rounding.” There is a complicated work-around for resolving rounded discrepancies, but someone has to be really familiar with the Xero in order to do this. Finally, the process for tracking sales tax payable with Xero is very confusing and requires several extra steps. For all of these reasons, if business owners want to use Xero for their bookkeeping, they need to be working with an accounting professional who is certified in Xero and familiar with Xero’s confusing terminology and reconciling process.

Like QuickBooks Online, Xero loses its edge compared with QuickBooks desktop when dealing with large numbers of transactions in an account. Xero users experience lag time and non-responsiveness with their applications when dealing with large numbers of transactions. (In my experience, though, Xero has less lag time than QuickBooks Online, probably due to Xero’s reduced options and functionality). What can really slow Xero users down is that the application can’t automatically categorize transactions imported from bank and credit card accounts. If you have used any version of QuickBooks, you know how much time automatic categorization can save. For non-QuickBooks users, here’s what I’m talking about: Let’s say you regularly go to Office Depot to buy office supplies, and when your accounting application imports your credit card or bank transactions, it recognizes the Office Depot purchase and automatically categorizes it as “office supplies.” All you have to do is accept this categorization with one push of a button. With Xero, you have to type in every vendor and categorize every line item. Another time-consuming element of Xero surfaces whenever you need to manually enter an expense that the application missed when it imported credit card or bank transactions. There is simply no easy way to do this. Xero won’t allow you just to enter an expense and reconcile it. Instead, you have to make a journal entry to account for the expense, and even then there is no way to show the expense as being paid from the bank account (or credit card). Finally, similar to QuickBooks Online, when you need to un-reconcile an account, you have to manually undo each transaction (in QuickBooks desktop, it’s as simple as one click).


Xero subscriptions start at $9.00 per month and go up to $30.00 per month.

The Bottom Line:

You should consider using Xero for your business if:

  • Your business has fewer than 100 transactions per month
  • You need the flexibility and security of an online accounting software system
  • You will be working closely with an accounting professional (an accountant or certified bookkeeper) who is certified with Xero

If you want a cloud-based accounting application, you should probably still use QuickBooks Online if:

  • You need more customized reporting options than Xero offers
  • You want to do the bookkeeping yourself (without regular help from a Xero-certified accounting professional)


FreshBooks is a cloud-based, online accounting software application that was first launched in 2003. It was created by a small business owner who was frustrated by the lack of good invoicing software applications available. It has seen a surge in popularity in the last few years among small business owners.

The Good:

Out of all of the accounting software options we have reviewed, FreshBooks has the best invoicing features. The invoices are visually appealing and can be paid directly by clicking a button imbedded in the invoice itself. My clients who do their invoicing through FreshBooks tend to receive payments much quicker than sending them via other software systems (we’re talking 1-3 weeks quicker). You can set up payments through PayPal, Stripe, Authorize.net, and many more, which gives both you and your clients more options. FreshBooks also syncs with a variety of different apps (although less than Xero or QuickBooks Online), which can help users improve their invoicing and time-tracking capabilities.

The Bad:

Many people promote FreshBooks as the solution to small business accounting. Unfortunately, this is not the case. FreshBooks does offer superior invoicing features, but it is not a full accounting software system, and your business will not be able to keep all of the accounting records it needs simply by subscribing and setting up an account with FreshBooks. FreshBooks might be a good choice for your business if you plan on using it for invoicing or time-tracking. Just realize you will need to use an additional accounting software application in conjunction with FreshBooks in order to get a full picture of your business’ finances.

FreshBooks lacks a number of basic accounting features. Let’s start with the fact that you can’t reconcile any account. As we have seen, reconciling means comparing and matching your accounting records with your official monthly statements from your bank and credit card companies. It also involves making occasional adjustments to your accounting records to ensure that they are 100% accurate and in agreement with your official bank statements. (If your business is ever audited, that’s something the IRS will want to see.) FreshBooks assumes that when users import bank and credit card transactions into their files, their accounts will be accurate. As we have seen, however, errors frequently occur when importing bank and credit card transactions, such as transactions entered twice, missed days, etc. FreshBooks does not allow users to reconcile their accounts, so there is no way to correct these different errors and discrepancies. The end result is that users cannot run accurate reports that can be used for tax or investor purposes. For example, if your company runs a Profit & Loss report using FreshBooks, there’s absolutely no way to guarantee that this report will be 100% accurate without being able to reconcile your company’s accounts. Another major feature that FreshBooks lacks is the ability to create Balance Sheets, and use liability and equity accounts. Balance Sheets are crucial to all businesses, because you need to take into account equity, liability, capital contributions, draws, etc., in order to get a clear picture of how your business is doing.

Another failure of FreshBooks as an accounting software is that it assumes every debit from your bank or credit card accounts should be categorized as an expense. This ignores the fact that some payments should be categorized as liabilities (such as equipment rental), owner’s draws (money taken from the business by the owner for personal use), payments to zero-out payroll liabilities owed, payments toward sales tax payable, repayment of business loans received, etc. If you are forced to classify something that is not an expense as an expense, this can definitely throw off your Profit & Loss report.


FreshBooks subscriptions start at $19.95 per month and go up to $39.95 per month.

The Bottom Line:

You should consider using FreshBooks for your business if:

  • You plan to use it primarily as invoice software
  • You plan to use it in conjunction with a full accounting software application
  • You want a better invoicing option than other applications offer

So What is the Best Accounting Software for Your Small Business?

2017 UPDATE: please note this article and section was written in 2015. My more recent accounting software review can be found here. SPOILER ALERT: the best accounting software is no longer a desktop version of QuickBooks, but instead, QuickBooks Online.  I do, however, think there’s value in reading (or at least skimming) this older article if you’re truly interested in understanding the user experience as well as limitations, etc of certain software.

In spite of the trend toward cloud-based, online accounting software, for the majority of my clients, I still recommend purchasing a desktop version of QuickBooks.

Why Desktop QuickBooks?

Simply put, QuickBooks is the most powerful accounting software application on the market, and it gives you the most accurate, detailed, and personalized reports. Desktop versions of QuickBooks are also far easier to use when working with very large files, especially when you are dealing with hundreds or thousands of entries at a time. Using a desktop version of QuickBooks is a necessity if you use job costing, and it will make your life easier if your business has a large number of monthly transactions, multiple employees, or needs to create custom reports. An added bonus of QuickBooks desktop versions is that they are cheaper in the long run than their online counterparts. It is obvious to everyone in the accounting field that cloud-based accounting applications are going to dominate the market at some point in the future, but right now, QuickBooks desktop is still the best choice for most small to medium sized businesses.

If desktop versions of QuickBooks have so many advantages, should you even consider using an online accounting software?

The answer is yes—if you have the right type of business.

If you are a consultant or a solopreneur with a service-based business, then you should probably be using a cloud-based accounting system. We have already looked at the obvious advantages of the cloud-based applications (easy access from multiple devices, automatic backups, increased security, ability to sync with different apps, etc.). So as long as there are no complicating factors for your business that would necessitate a desktop version of QuickBooks—such a large number of monthly transactions, numerous bank or credit card accounts, needing to create customized reports, job costing, etc.—it only makes sense for you to move your bookkeeping to the cloud.

If you have decided to move your small business to an online accounting software, your real options are QuickBooks Online and Xero.

As we have seen, Xero has some definite drawbacks:

  • Limited options for generating different kinds of reports
  • Very poor data organization (e.g., no sub-accounts)
  • Confusing—and sometimes misleading—terminology
  • Limited ability to reconcile accounts
  • Inability to automatically categorize transactions

For these reasons, I end up recommending QuickBooks Online to most of my clients who want to move their small business bookkeeping to the cloud. QuickBooks Online offers more detailed reports and better data organization options than Xero. QuickBooks Online also does a better job of accounting for sales tax which is significant if you have a product based business.

In spite of Xero’s drawbacks, for some small businesses, Xero might still be the best fit. If you own a small business where a number of people—you, your bookkeeper, your accountant, etc.—need regular access to your online file, then Xero might be a better choice. Xero was designed for business owners and accounting professionals to work closely and regularly with each other, so it offers separate logins and data access for each user. But because of Xero’s confusing and unique terminology (for a good example, see my paragraph above on the quirkiness of Xero’s reconcile function), I only recommend Xero to business owners who will be working closely with accounting professionals who are certified with Xero.

As we have seen, FreshBooks doesn’t offer the ability to reconcile accounts, which means that it cannot produce accurate Profit & Loss reports. Additionally, FreshBooks classifies all debits from your accounts as expenses, when in fact they might be liabilities, owner draws, etc. In addition, FreshBooks cannot produce Balance Sheet reports, which are crucial for businesses. Business owners might consider using FreshBooks for invoicing and time-tracking (FreshBooks has the best invoicing features of all of the applications we have examined). But it is important to realize that FreshBooks is not a complete accounting software system, and needs to be used in conjunction with an accounting application that can produce accurate and complete reports.

2017 UPDATE: My 2017 software review can be found HERE.

Over to you:

What has your experience been with these softwares? Any features you absolutely love or hate? Comment below!


Wishing you fulfillment & financial success,

Erin Armstrong

Erin Armstrong is a Business Advisor, Chief Financial Officer, Tax Strategist and licensed Enrolled Agent who’s on a mission to financially empower business owners. Her unique, comprehensive approach integrates all the financial aspects of your business (such as accounting practices, tax strategy, profitability, budgeting, & cash flow) with an emphasis on developing a positive money mindset so you can move forward in a confident, proactive and empowered way. Find out more about Erin here.

Back to Blog Index


Please enter your email below -- then check your inbox!

Thank you for subscribing! Please check your email to confirm your subscription.


Please enter your email below 
and then check your inbox.

Thank you for subscribing! Please check your email to get your Checklist of the Top 73 Tax Deductions for Small Business Owners.


Please enter your email below--then check your inbox!

Thank you for subscribing! Please check your inbox for your email from erin@erinarmstrong.com.



Please enter your email below
and then check your inbox. 

Thank you for subscribing! Please check your email to confirm your subscription.


Please enter your email below and then check your inbox.

Thank you for joining the waitlist! Please check your email to confirm your subscription.