A toilet can flush away some massive stuff but a cigarette butt can swirl around in a urinal for days. Why don’t even the smallest solid objects get flushed down a urinal?
Insufficient volume of water, mostly. If you took a bucket of water and dumped it into the urinal, the cigarette butt would vanish.
The urinals I’m familiar have small drain holes, because they aren’t intended to deal with solids. They’re designed to only pass liquid.
Urinals generally only use 1 gallon per flush, whereas a toilet in a public restroom will use 3-5 gallons. They are designed for convenience and water-saving, not to flush away trash.
Note that even in a toilet, a cigarette butt tends to float around after a flush, mainly because of its light weight and expert buoyancy. Sometimes requires the force of a bucket full of water to drown it.
The waste pipe is also somewhat smaller in diameter.