Why QuickBooks Is Not a Business Tool

While many, many "businesses" choose to run off of QuickBooks, it is hard to see QB as being a business class tool in any sense. There are many reasons for this, some are critical, others just add fuel to the fire.

So let's break some of this down.

Development: For all intents and purposes, development of QB stopped decades ago. This isn't just apparent from looking at the app which is frozen in the Windows 95 era, but has been told to me directly by an insider source. The company doesn't actively maintain, refactor or update the core product, just the fluff surrounding it. While they do have developers and would address code breaks, this is a major concern and the software is walking a fine line between active and abandonware. It's ghost ship software.

Client Server Architecture: In 1995 Client/Server architecture was all the rage and mostly made sense. By 1999 this was no longer the case for new software. Not that C/S stops working or has no place, ever, but in the mid to late 1990s was the inflection point where software was able to take advantage of vastly more modern paradigms easily and all competent developers were aware of the new architectures and were capable of taking advantage of them. So by almost two full decades ago, Intuit was either knowingly maintaining an outmoded design or incapable of updating their software (see concern above.) QuickBooks is ideally suited to this modern paradigm as well, so while exceptions exist where C/S still makes sense, QB did not even in the 1990s. And for reference, C/S was already being taught as legacy in intro to programming books by ~1997.

Shared DB File Instead of Server: This is the database equivalent of using a SAN as a NAS because you didn't understand storage basics. QB does this with databases. This is beyond unacceptable. This has never been considered a business level approach. This is not something that changed a few decades ago, this has been the case since the advent of networking. You simply don't share database files. From the day that IBM and Oracle introduced the very first relational databases, a server arbitrated access to it. What QB does here is an indication that they lacked even the most rudimentary development competence when designing the initial product and have failed to fix a flaw so great that it should be banned by IT policies. It's a basic IT, as well as, SE best practice violation. It's not reasonable to overstate how bad this is and why IT "software ban policies" should exist everywhere and be enforced. Basic software quality tests would catch QB and keep it from being deployed as clearly it was never designed for use in any business environment. So avoiding QB in a business would simply be IT agreeing with the developers who made it, in that sense.

Fragile: QB's database format isn't just bad architecturally, but it is a known fragile implementation that breaks often. This leads to many outages and sometimes dataloss. They've avoided moving to more solid technologies.

No Reasonable Backup: In order to back up QB you have to lock the database (the same as shutting QB down) and do a full backup from withing QB. This means that either IT can't take QB backups, or IT has to have accountant level financial data access and work as an end user to take QB backups. QB can be automated to do this, but because of the C/S nature that is highly unreliable and in no way acceptable as a business backup practice. QB cannot be backed up through any normal IT process, nor any business class specialty process. This is primarily done, obviously, because once customers have critical data in the system and realize that they cannot protect QB on their own, they will pay for Intuit's extortion data protection service that counts on the fact that IT has no reasonable means to take a backup of the system.

Bad Support: Intuit famously has terrible support and does not take care of their customers.

Each of the above is a stand alone reason to not consider QB viable in any business, of any size, except for the C/S point which is there because it is needed to explain the other problems. But is a huge issue on its own. The below are additional points as to why it is bad.

It's cumbersome and poorly designed.

It's outrageously expensive not being even remotely on par with free systems.

It only runs on Windows and Mac for no good reason. Limitations without value.

It requires both clients and server to be maintained online for data integrity reasons. Every attached workstation is a potential point of failure. The IT needs around this are absurd.

It's slow and fails easily.

It is complex to maintain and unnecessarily difficult to deploy without benefit.

It has no roadmap or expectation of working well in the future.

It's inefficient to use and wastes accounting and IT time.

It's embarrassing to use and can demoralize staff.

It's architecture and licensing make it extremely limited in use and lacks basically accessibility features that would be assumed and obvious with any normal accounting product.

Financial systems from a company that is not trustworthy nor friendly. An illogical combination.

Accountants cannot continue working during normal maintenance like backups.

When Microsoft discontinued their QB competitor, they said that there was no value in their or any product in this category. You can literally do a better job, a vastly better job, using Excel with templates than QB or SBA could do.

For the record, using Excel instead of QB fixes every critical issue, except for the client/server architecture point which was less critical already. That's the degree to which QB is bad, it is not even close to the quality and features and power of just using a good spreadsheet application. Excel will use an enterprise RDBMS, Excel is very actively supported and developed, can be backed up live, etc. Excel fixes a great number of the bullet point minor issues, too.

And none of us would seriously consider using Excel. That's how bad QB is.

So the only question I have is what would be a reasonable alternative for a Fortune 100 company to use?

QB isn't even possible to use for a company of any size. Never has been. It's always been a hobby to tiny business tool. So the idea of a QB alternative really isn't a thing. Xero, Wave, Sage, PeachTree, Excel and others are the more business class tools for the SMB market. The enterprise almost entirely uses ERP systems like SAP or bespoke accounting systems.

QB is designed for shops of one bookkeeper and shipping files to an accountant. It will go larger but was never designed for more than a single user working from a single desktop. That's the scale intended by the developers when they laid it out (reading back on their design that handles nothing else with any grace.) Enterprises have hundreds or thousands of bookkepers and many internal accountants. QB wouldn't even be possible.

Scott,
What do you mean by this statement? I only ask because I want to understand better.

Context: We are talking about relational data. This is a broader question, but in this case we will focus on this style of data.

A database file is a database. It's literally a file or group of files, nothing more. Whether you use QB, Access, SQL Server, MySQL, Oracle DB whatever... your database is either one file or multiple files; but it is files on disk. That's all.

A database server (Relational Database Manage Server or RDBMS) is a server that connects to one or more databases, arbitrates access and security, ensures integrity and shares access to that databases data over a network connection to one or more client systems (applications.)

To compare this to normal storage, a database is like a disk. Just a normal 1TB SATA disk. And an RDBMS is like a NAS. You put a disk into a NAS and suddenly the NAS can share it on the network, can enforce security access to it, can make sure that only certain files are written, etc. If you just attach a plain SATA disk to two computers at once, they have no security, no controls, no safety. Databases are identical here (we could go deeper into the theory of filesystems being databases to get really interesting if we wanted.)

So what we have with QB is just a database file. It's shared over SMB protocol on a mapped drive, which does no arbitration. So any machine that connects to it can mess with the file any way it wants - delete it, corrupt it, modify it, etc.

If you replaced that file with something like MS SQL Server, then you would connect to the RDBMS, not the database file itself, and the RDBMS could make sure that only one system was modifying things at a time, that only allowed users were making allowed changes, that relationships in the database were maintained and so forth. All of the power of an relational database comes from the RDBMS, almost nothing comes from the file on disk. THis is why people spend their time talking about RDBMSs, like MySQL and SQL Server and not about on disk file formats that they use, like ISAM and MDB. One matters a lot, the other very, very little. The "driver" that allows an RDBMS to talk to a given on disk DB format is called a Database Engine.

Ok thanks a lot for the reply and explanation. I understand the basics of relational databases but I just didn't know what Quickbooks used and what you meant by sharing a database. Thanks for explaining. I see now why I did not understand and it is because I never thought of any business just using a file to control everything and not the rdbms. That is just really weird and I don't get why they still do it that way. For an analogy, wouldn't that be something like having a couple thousand desktops in a place and not using a server of any kind for administration?

For an analogy, wouldn't that be something like having a couple thousand desktops in a place and not using a server of any kind for administration?

Not quite, because in theory desktops work just fine on their own without a server. The RDBMS isn't for administration, it's for arbitration. It's more like hundreds of users sharing a single workstation without different accounts. So you have to trust all other users not to mess with your files. And you have to trust that they will leave sticky notes saying what files they have been working on and if they can be changed or not. And they have to trust that you will honor their sticky notes.

I work at employer where theyve been using QB since 2002! We are migrating off it end of the year.
The list of Scott's issues with this software is long, and almost complete.
As someone who has to support this, these things make me angry:

Each workstation, upon opening the company file, downloads the entire gd company file over the network. Same when closing. And it seems to have a max dl/ul speed of about 20mbps, even on a uncongested gbps network.
The software suite needs to be installed on the server, for some reason. The server cant just hold the data. Here is snip of their OS support page.
WTF? No 2008/2012/2016 support? So most installations (here when i started and other places) use user desktops for the server. Oh, and Server 2011 huh?

Updating to a new version will almost break it, requiring a call to their helpdesk, which only operates from 9-5 M-F, unless youre on Enterprise.

On the flip side of things I can't even convince my own accountant to use something else. What choices do I have? In a small town you may not be able to find an accountant that is willing to consider something else.

On the flip side of things I can't even convince my own accountant to use something else. What choices do I have?

I would never use an incompetent accountant like that. If they don't care about doing their job well, or your company, why would you trust them to be your accountant? That's crazy. Fire them, of course.

@scottalanmiller Can you tell me how I find a competent accountant in Auburn, NY that doesn't use QuickBooks? I've talked to six accountants that were recommended by other professionals and they all insist on it. BTW - who is your accountant now and what to do they use? What about your accountant before that?

@scottalanmiller Can you tell me how I find a competent accountant in Auburn, NY that doesn't use QuickBooks? I've talked to six accountants that were recommended by other professionals and they all insist on it. BTW - who is your accountant now and what to do they use? What about your accountant before that?

Why do they need to be in that town? Can't you use an accountant who lives in NYC? not that you want to, fees would be to high. :P

@scottalanmiller Can you tell me how I find a competent accountant in Auburn, NY that doesn't use QuickBooks?

There is no competent one that requires QB, the two concepts cannot overlap. So if you believe no competent accountant exists in Auburn (that's absurd, though, of course they do) then why would you be looking in Auburn? That makes no sense. Accountants have no reason whatsoever to be local. Probably no reason to even be in your state, but you are in an enormous state so finding one is trivial. I live in Texas and my accountants are in a town of 4,500 people in rural NY. So state doesn't likely matter for you, either.

In little villages, I've had no issue finding people who don't require QB. Both accounting and bookkeeping firms. No clue how you are finding those problems in Auburn, but that's not your key problem.

@scottalanmiller Can you tell me how I find a competent accountant in Auburn, NY that doesn't use QuickBooks? I've talked to six accountants that were recommended by other professionals and they all insist on it. BTW - who is your accountant now and what to do they use? What about your accountant before that?

Why do they need to be in that town? Can't you use an accountant who lives in NYC? not that you want to, fees would be to high. :P