Thanks for the help guys!
The problem is, my pawn is moving too fast for it to trigger such a thin checkpoint. I was able to fix this with a line trace.
I start by setting the pawn’s current location, then I wait one tick and it’s location again, to a separate variable. Then I draw a line between the two points and see if it goes through a checkpoint. This tells me if the pawn went through a checkpoint between ticks.

