Please see the the post here for a deeper explanation of clearvars().
Variable expiration can be set within the Report Suite Mgmt admin section, and you can set the expiration to be on a hit (effectively making it a prop).
Depending on your business requirements, it might be sufficient to just use a prop (or hit-level expiration variable). The main point of having variables persist are to help determine which actions on your property are leading up to a success even (in this case event 30). Unless there are other success events (like maybe user registration), there might not be a need to attribute the Merit button to any other events. Even if there are other success events, you could store this in both a persisting variable as well as a hit expiration variable, and use them each for different reporting requirements.