Prize raffles work well at events where everyone comes in, sits down, has a table to set their ticket so it doesn't get lost, and has nothing else to pay attention to except someone calling out a number.
Prize raffles work miserably at come and go events where people are milling about losing their tickets in the bag they're using to carry 800 other handouts.
It's very annoying to be at an otherwise fun event when someone is yelling over a speaker at you, "This is the third time we're calling for 1000892137! If you have ticket 1000892137 please come get your prize! That's 1000892137! Does anyone have 1000892137? Check your pockets people! 1000892137! Someone has to have 1000892137! Who has 1000892137? Okay, well... 1000892137 I guess you're out of luck. We're going to draw a new number! Ready everyone? Ready? 1... zero zero zero... 892... 093! Okay now who's got 1000892093! 1000892093? 1000892093? Surely someone has 1000892093... Dammit people this is for a MINI SAILBOAT, and we have 35 to give out!"
I've always thought it'd be fun to just call out one or two digits and play the odds on multiples. I've never had a chance to test this out, but if you give out 1000 tickets, do the math... 10 people will have 37 as their last two digits. 100 people will have 7 as their last digit. Just say "the first person to make it up here with 7 as their last digit gets this prize!" and see what happens. This might make the come-and-go event work somewhat okay because you'd hope that the last 100 or so people haven't totally lost their ticket, maybe? I've suggested this at several events but the speaker always doesn't get what I'm saying, they're blankly staring out in the crowd for 1000892093 to come through for them after all.