Static batching

Hey guys, I need some advices about using static batching on mobile platform.
Static batching is something unity provided to improve performance, merging mesh together can reduce draw calls as we know, but I think batching is not always profitable, maybe for some game that the triangle count is not rich the batching is efficient but for some game which is vertices intensive batching is not a good idea , in my opinion, each batch needs to fill a dynamic buffer in runtime , if the count of buffers is large and the size of each buffer is large, the performance will be impacted, and in this situation maybe reduce batching is a better choice, for example, if the vertices count of one model is large enough then this model is not need to be batched, what we should batch is the small objects in the scene, so draw call count will be increased but the dynamic update of index buffers which are heavy will be reduced.
So what I want to know is should we always rely on batching or there are other policies to improve the performance of our game.
Thanks!

For mobile using a texture atlas is a huge deal.

1 big mesh using 1 big texture means unity only needs to draw once. Even if you had 1 big mesh but multiple different textures, unity would need to upload multipl objects to the gpu and make many more draws.

I would say texture atlases are much more important than model complexity.

Thanks,Juice. I agree with you, atlas is important cos the batching is dependent on it, but even if the scene is only one big mesh and only one atlas the performance may not be high cos every frame you would commit huge number of vertices to gpu but actually there is only ten percent even one percent of you mesh is inside the frustum of camera,so the other percent is wastful. Ps: I must point out that the frustum culling in unity is not perfect , in some case the culling is not accurate, AFAIK, the accurate culling is slower, but I think that at least unity should mention it.