Hi Chris,
Thanks for writing in. It is matter of tradeoffs and subtile optimizations after a certain point. Just batching vs not batching you will see a huge payoff, and to optimize further group the modifications within a batch request by user, not property or profile.
Never put more then one Google Analytics account user permission update in a batch request, this will fail.
Basically it boils down to how many profiles or properties are you updating?
if you have 3 users and 10 profiles, by all means it will best to put all the requests into one batch request. just be sure group by user
user/ account/ property/ profile
sue xxxx UA-xxxx-1 ga:1
sue xxxx UA-xxxx-1 ga:2
...
sue xxxx UA-xxxx-1 ga:10
ali xxxx UA-xxxx-1 ga:1
ali xxxx UA-xxxx-1 ga:2
...
ali xxxx UA-xxxx-1 ga:10
liz xxxx UA-xxxx-1 ga:1
liz xxxx UA-xxxx-1 ga:2
...
liz xxxx UA-xxxx-1 ga:10
If you have more then 300 changes you will need to split up the requests somehow. and if you optimize for users first it will be more efficient.
The overhead of splitting up each user into a separate batch request will probably be greater then the payoffs you get by grouping by user if you are doing a smaller number of updates. The example didn't really specify how many requests were being made so that could probably be clarified.
-Matt