Toon Shader with Outline help

Hey guys, I’m relatively new to coding shaders and I haven’t been able to find much with my problem (unless my Google skills are dying).

Anyways, so I have a game that will slowly spawn more and more of a character. I would say anywhere from 30-45 on the screen at a time (relatively simple character with animation, below 300 vertices and 300 triangles, for sake of batching).
However, we want to have the toon shader with outline effect on these characters, and because the built-in toon shader with outline has 2 passes, it will not batch. This is intended for iOS and Android, so any optimizations would be nice.

Does anybody know of a way to get the same Toon Shader with Outline effect without using 2 passes so I can batch it? Maybe find a way to spoof the outline effect by removing light along the edges? Not sure
Is there a way to batch despite the multi-pass shader?

Thanks for the help!

I can make an outline with one pass on a shader and do the toon shading with one pass on another shader.

Would it be more efficient to have one gameobject with the 2 pass toon shader with outline, or to have a parent object with the 1 pass outline shader and a child using the 1 pass basic toon shader (no outline) to simulate the same effect? This will allow everything to batch…but involves twice as many objects.

Basically, if it’s just the gameobjects moving around, the choice is between 20 gameobjects with 40 draw calls (using the built-in toon shader with outline on 20 visible characters) OR 40 gameobjects with 2 draw calls (using a pair of gameobjects using separate shaders to simulate the same effect).