Is it better to focus on improving existing features or adding new features?
This is not a technical question, but perhaps more of a business question relating specifically to web applications so I'm not sure if this is the right community to ask the question in, but I'm hoping for some insight nonetheless.
I have a web application that's used by well over 300 daycares to manage day to day administrative tasks such as child attendance, staff time sheets, family profiles, emergency medical, invoicing, registrations, etc.
Now I have a list of requests from my customers, some of which are to improve existing features, and some of which are to introduce brand new features and I'm trying to determine where my time and effort is best spent.
For example, currently you can create an invoice for a family, but some of my clients want to be able to create two separate invoices for parents who are divorced (currently the work around is to create two separate families in the system, one for each parent). Similarly, you can track a government subsidy which is automatically deducted from the invoice, but some of my clients want to be able to track multiple different kinds of subsidies to deduct from the invoice. These would be enhancements to existing functionality.
However, I'd like to introduce new features as well, such as an API integration with OneDrive for document storage, or a daily report feature that allows educators to share with parents what the child's day was like.
I'm a one man show so I want to spend my time wisely. So I'm basically looking for opinions and expertise here and so my question is; am I likely to attract more customers (and keep existing customers happy) by adding more features, or by improving existing features?