I have used few CMMS tools. In the end, my feelings are that like any other tool, best CMMS depends on user.
I have following reasons to justify my answer:
I have seen very good report through Macro based Excel files & very bad reports through MAXIMO or EMS
I have seen most of the tools fields empty for many reasons which basically doesn't give you information
I have seen wrong entries giving you wrong information.
They are made so heavy that people are not able to enter everything.
Generally CMMS is chosen based on many reasons sometimes out of even Maint Mgr scope like client want you to have particular system etc. There are following factors which makes any CMMS good or bad:
How you have implemented it. I would say a person who has a knowledge of hands on should be in the implementation team. A lot of exercise is required on reporting & expectation from CMMS so that implementing team can be able to incorporate them.
How users are trained: Most of CMMS fail because of this part. Either people are not trained, they are unwilling or don't like to enter everything. It shall be ensured that every level the fields are entered, counterchecked & saved. Responsibilities shall be very much given & followed.
How many reports are generated: Once you have the data, how you are using them, Is the data giving you expected results, if not, make changes that are required.
How it is AUDITED - In the end, even CMMS shall be audited. Generally I have seen people saying, " we are following all data & maintenance through XXXX & we don't need to audit. On the contrary, we must audit the reports & data otherwise the reports will be corrupt & will be useless.
In the last, I would say an old saying I read somewhere " In the hands of an expert, a stick is powerful than sword & in the hands of an novice, a sword is weaker than a stick"