Back when “hardware transform and lighting” was a new thing, “number of draw calls” was a real concern, because the API overhead was high, and the shader switching cost on the hardware was high. The suggestion from graphics card vendors was to stay at 1000, and never go over 10,000.
These days, especially when using Direct3D12, Vulkan, or Metal, “draw calls” are much less of a problem. 100,000 draw calls is fine.
That being said – it’s always a good idea to use hierarchical instances static meshes, to bake your assets to a single material rather than a dozen sub-materials, and to keep the number of shader combinations small. (Always use material instances, and only use a small number of master materials)
In the end, Time-per-frame is what matters. If your time-per-frame on your target hardware is lower than “1000/target-frame-rate” milliseconds, then you’re good.