Assuming here that you don't need help with GA/GTM installation and you've got your tenants' permission to do so, here's my take on GA-side setup to get the analytics you want. There's no way to avoid some individual GA setup per domain, but for a relatively small number of sites you can share a Property but have separate GA data using View filters. There's a limit of 25 Views per Property, which is why the number of tenant sites mattered to my answer.
Each domain will use the tracking ID of the shared Property, and you'll create a View for each domain that has a filter of the Predefined type that includes only traffic to the correct hostname.
The result will be a View that only knows about data to the appropriate domain.
[If you would like a commingled View in which you can still tell the difference between sites, you could use a Custom Advanced filter to extract the Hostname (request field A, Hostname
(.*)) and the Request URI (request field B, Request URI
(.*)), and output the concatenation (
$A1$B1, or maybe
/$A1$B1 since GA likes things that look like directories).]
You can't share goals exactly - they are View-specific - or removed URL parameters, site search settings, or bot filtration, but you can set up a "template" View with the shared definitions and copy it for each site-specific View, adding the domain-specific filter after copying. If you want to add other filters or goals after the fact, you can pull in filters from other Views in the Add Filter screen, and use the View-level "Share Assets" screen to generate a link that will allow you to import specific goals to other Views.
If you install Google Tag Manager on the sites instead of GA directly (which is recommended in any case), you can share event definitions as well. They will get sent to the Property and your filters will have them show up in the appropriate Views. Your ability to share triggers will be limited by how alike the markup of the various tenant sites is, but the fact that you can have multiple triggers for the same tag will allow you to send the same event data to GA even if the details of the event happening vary from site to site.