Hey @ochranakorona, thanks for the question!
Yes the way you have done it is good but there’s a couple options you can do:
1. You could restrict it to just guests, this would be done by setting the role restrictions on the coupon
2. There is a better way which would cover your use case where “if the user had registered an account but not bought anything could still get the coupon”… to do this you’d need to test the user’s Total Customer Spend (which is a Cart Condition available in Premium). This would then let you test both if the user is new and if they have spent $0.
For more info and comparison of features please see here: https://advancedcouponsplugin.com/pricing/