Sprite Batching

Hello, I am attempting to create my own Sprite Batcher for my game. Though I am having trouble understanding how they work. I understand their implementation, but not how they actually work. How do they manage vertex data and actually render the sprites? I have tried looking at Matt’s examples but I cannot figure anything out. Could someone shed some light on the matter?