There are several threads on SB to get some "tips" on diving tipping from. You might look those up. One day I'll figure out how to make a link to other threads.
My suggestions from what I've learned/gleaned and decided to do through the years
1. Tip both your DM (dive master) and boat captain.
2. If doing multiple days of diving, tip each day: I have asked a couple DM's if they prefer to be tipped daily or at the end of the week and they told me that they prefer daily. During the week, there may be different boat captains and DM's and, even with best intentions, a larger tip at the end of the week may not make it to all of the people you dealt with. You may be at a place where someone takes care of your gear (rinse,hang, store) for the week and I admit to tipping that person at the end of the week and not daily (I guess I just wanted to be sure my gear was still in good shape by my last dives.)
3. *The following is only my suggestion (but others do the same)*. Tip a fixed amount (I tip a total of $10 each day: cheaper than some, more than others. Basically $5 a tank, so if I were doing a 3 tank dive, I'd tip $15.) If you feel you received above and beyond service, tip more. Likewise, if service wasn't great, do what you want. We all have our own preferences and different situations call for more planning, but for me, I prefer to carry only a certain amount of cash, so I try and have everything planned that might require extra cash (food, drink, above and beyond tip.)
* Just something to consider for multiple day diving: Some people (the ones whose posts I read in another tipping thread) tip a percentage of their total bill at the end of a week. The problem I see with this is that many dive ops give a lower dive rate for doing multiple days of diving, so in effect the tip would get smaller for each day of diving.
4. Know where you can put your tip. Most DM'S/captains will gladly take a tip from you, but there may be a tip bucket on the boat to put it in, or there may be a tip jar or dedicated tip/message box for each person who is on the staff in the dive shop.
5. Don't worry about what others do. Have been places where some people don't tip at all, but know it is appreciated. Recently dove in Dominican Republic where my buddy and I were the only ones to tip. The DM (a young native of the island) we had for 6 days was the most appreciative recipient of a tip I've ever seen. I got the feeling he didn't see many.
Regarding snorkeling, I've only done the snorkeling/party catamarans, some guided and some non-guided snorkeling, but have generally tipped anywhere from $10-20 for both my wife and I, depending on how busy I kept the bartender!