Taps are defined gestures and also have single and double-taps. Basically, after the first tap, the engine cannot know yet if you want to perform just a single tap, or a double-tap. So it has to wait for a brief moment to see if you perform a second tap. That brief waiting period can make it feel a little bit laggy and wonky, which can be totally fine depending on the usecase.
"Is touching object" fires instantly, because It doesn't have to wait for anything. You probably need to add a "Trigger once" though.
Most likely that solves your issue, but we don't know for sure. There could still be an issue with your eventlogic.