I think that the most important feature of Nagios is that you can write your own plugin, so you are able to create your monitoring system based on what you need.
For example, I'm using a backup system that writes in a file when it's done. If this file is empty it means that the backup fails: well i've written a Nagios plugin to check this so i can be sure if a backup is ok or not.
Improvements to My Organization
We're managing servers and services that needs constantly monitoring so I've implemented a monitoring system Nagios-based to alert me when something bad happens. For example, if a server goes down this system sends me a notification When a service becomes critical, it notifies me so i can check. This improve our time to handle problems and can make us proactive to customers.
Room for Improvement
I think that the community needs to concentrate development to get a standard GUI (Adagios is a side project) and gives the user a better notification system. For my system, I've developed the notifications because it basically just sends you an email.
Use of Solution
I tested Nagios at university for seven years, and have been using it intensively for three years.
It has no particular needs or configuration to works well. Actually i'm using it in a virtual environment with a Debian-based OS.
There have been no issues with the stability.
We have had no issues scaling it.
Customer Service and Technical Support
I haven't had to use it. Technical Support
I haven't had any need to use it.
Nagios setup is very simple. You can find some problem during plugin configuration or host configuration if you don't use a GUI like Adagios. If you use both it's easy to setup and configure your host and services.
I implemented it in-house.
The ROI is absolutely linked to time. You can save a lot of time using Nagios monitoring because otherwise you need to check all of your services or system one by one.
Other Solutions Considered
There are several alternative to Nagios like Icinga (which is a 2.0 Nagios son), Observium, and LibreNMS. If you need only an SNMP monitoring system or you need real time graph Observium is your choice but Nagios is a complete solution.
The only advice is to be patient and creative because you can control everything you can need with Nagios.