I have many layers in my map that I want to publish as individual services. Meaning they all have their own rest end point, and are not grouped into the same hosted feature service. I cannot use ArcGIS Server to complete this task. Each item will need it's own metadata and tags in the future.

What is the best way to publish these items? Some are group datasets, too. I would publish those as a single hosted feature service so they remain under the same metadata and tags and rest end point.

Should I individually publish them through the "Publish a Service" tool? Should I publish a map package and then publish the data through online? Should I create layer packages? Should I create and ArcPy script like this -> Overwrite existing map service in ArcGIS Server 10.1 (through ArcPy) ? What is the best way to increase efficiency, conserve credits, and ensure that the data is transferred properly?

This is more of a discussion than a true question, but I want to know the opinions of the community? Many of my clients cannot afford server and we work strictly with cloud-hosted services. Perhaps there is a tool I am not aware of to help increase efficiency when publishing large amounts of data?