Hey Brian @bdolan2532,
Based on my personal experience, this “customiseable product templates” approach isn’t easy even with a fullcode stack.
In the ideal world you have some “platform core product”, which you iteratively enhance based on customer requirements, adding features one by one, enhancing product functionality more and more.
The reality is that usually you have scarce resources and you need to decide which feature to implement first. Moreover, features could be mutually exclusive, or they may be specific to just one customer, or they may lead the core product to the path you don’t like, diluting its client value.
At the same time there is a pressure from another side - pricing. If you position your product as a “customiseable template”, the client expects to have relatively low price for it. The beauty of software sales is that each extra copy costs 0 to produce, so product sales can scale massively, therefore leading to economies of scale and low prices for each copy.
But if you need to customise the template for each customer individually, you will have to cover your customisation labour costs (uncomparable to the license price). So you will have to explain to the customer why the product costs is X and customisation costs are 100X (to make breakeven), or you will lose money on customisations.
Adalo makes this case even more difficult.
In the fullcode stack you can have one “main” code branch, where you keep the up-to-date product version. And if your engineers are skilled enough, they can incorporate client-specific changes in a way that there will be no need to keep separate code branches for each client. Why this is important: when you make a change in the product, you would like to have it available for all your clients (imagine you have 100 installations), and you don’t want to update each client individually.
But in Adalo code branches concept does not exist. So if you have developed some app template, and made separate apps for each of your clients based on this template, you will have to update every client app manually when you’d like introduce new app changes.
The possible solution is not to sell product, but a service (I mean that you are not selling a cheap template but a service of app development in a real estate). The company won’t be scaleable because services doesn’t scale well, but at least you can get decent money from a client: they understand that they’re paying for custom development.
I can’t find the article/book which I’ve read on this subject - it resonated with my personal experience greatly - but you can try searching google with keyword like “software startup should I customize my product for a large client?”, and first few articles on Medium and Reddit are quite interesting to read.
Just my 2 cents
Best,
Victor.