Since the setup of a new site also has some technical side (dns, licenses, users...) we tend to do it manually.
But did you know you can assign objects to a site in bulk? As going into each individual object can take a lot of time. But using the Bulk assigner in the Site application this could be done within minutes.
You can do custom tables, search indexes, smtp server, modules, users, page types and relationship names
So not automatic, but relatively quick and gives you more control.