In-house development would require a dedicated team to handle Push issues on an ongoing basis. Or the company will have to put up with low delivery rates. Doing so means cutting costs slightly, instead of significantly as Push notification offers. After all, the higher the Push delivery rate, the lesser the SMS messages you would send and the greater your savings. But you must be prepared to face the fact that it will literally take you more than a year to reach the 90% delivery rate or pass it.
You'll also need a team to support Push notification, because it’s not enough to just improve your delivery rates only once. If at some point you stop improving the quality of your Push service, the delivery rate will eventually begin to drop without any alternative. The reason is simple – new devices are constantly appearing, new OS versions are coming out, and new features are being introduced into Push. It takes continuous work by your team to maintain Push's quality and high delivery rates.
In our opinion, this is the most unpromising option, because you'll have to commit significant resources for development and support. Besides, while the development and debugging are going on, you could save much by implementing an off-the-shelf solution. It makes more sense for the customer to focus on business tasks and not get involved in development and maintenance of such specific, niche software.