I have up to 60 draw calls and about 10k vertices. I have optimized my meshes so far. Batching is no solution for me because each object uses a different material (same shader and different texture). I don’t use getComponent and Find in my updates.
Increasing performance is all about eliminating bottlenecks. You can optimise your drawcalls, meshes, and textures all you want - if your bottleneck is caused by Physics calculations, it won’t have any effect whatsoever.
So you really need to begin by profiling your code- otherwise you’ll just be guessing.