We want to implement a WordPress multi site installation for a network of dealers of a certain product. (Think car dealership.)
Exactly how much can be customized on the individual installations?
We want to use multi site as there are over 100 installations and we don't want to maintain the updates individually, but we also need to have unique content on each. The theme will be the same, but we'd like to customize text, photos, colors, contact forms, and the ability add extra pages, and additional features that may arise.
Does anyone have any insight as to what is safe to customize on a multi site network and what might be risky or too difficult?
I run my own sites in a network installation. You have the same possibilities to customize the sites but you will have the advantage that you can enable plugins network wide. But if you want, you can just enable a plugin per site. So as long as it's data stored in the database, you can customize whatever you want. So let the theme use all the benefits of the WordPress Customizer.
What I did for my own sites is to have all plugins of WordPress.org still in the plugins folder and the code I wrote in special foders in mu-plugins. I wrote some custom logic to load the code.
You can safely do quite a lot of things. The problem is when code can behave differently in different scenarios. So when you update a plugin, it can work good on one site but not on the other. However, I haven't experienced that myself.
If you need more in depth help, then let me know.
The quick answer is everything you're asking for is possible and fairly easy to implement. You're scenario and desire to keep things scalable on a large network is the main purpose for WPMS. We've built over a dozen client networks some with more than 700 installations on one network. We have built robust tools like the neversettle.it/ns-cloner-pro which allow you to clone, copy, update, migrate, etc. with one click inside your network.
With MS you can run an admin level codebase for all sites while maintaining unique content as well as unique functionality and design if you choose. With domain mapping you can also have a custom domain per sub-site if desired as well. I.e. instead of having dealerA.yourdomain.com and dealerB.yourdomain.com you can have dealerA.com and johnscardealerB.com
Once you have correctly configured your network and have tools like our Cloner the possibilities are endless.
We run multiple Wordpress Multisites and they are very customizable. Assigning custom domains to a Wordpress site is not supported out of the box, but with a domain mapping plugin, you can do it. We have a multisite deployment with 50 sites running on it and all of the sites have their own domain names. The backend url is even mapped so the client does not have to look at your domain. If you have any other questions, let me know. I have been working with Wordpress Multisite since it was Wordpress MU.