Borrowing from @Codestrife's answer here
The rustling leaves usually indicate that there are pokemon near that area. Going and walking around near that area gives you a higher chance to encounter Pokémon.
Keep an eye out for rustling leaves, hinting at where critters may be
lurking and simply hang out in a suspected region for the increased
chance of an encounter. - Source
Therefore, the reason you don't always see Pokémon in rustling grass is because there is only a higher chance to encounter them there and not a guaranteed chance of encountering them. You just have bad luck when you don't encounter them.
You are eligible to claim the "Defender Bonus":
- Once every 21 hours
- If you have at least 1 Pokémon in a gym at the time.
One you have claimed your bonus, you will need to wait 21 hours before claiming it again.
You can gain additional bonuses if you have 1 Pokémon in other gyms as well (you can assign 1 Pokémon to multiple gyms, but you can't have multiple Pokémon in the same gym), which will increase your reward. However, this still is only available once every 21 hours, from the time you last collected your "Defender Bonus".
- Adding Pokémon to new gyms does not reset the clock
- Losing a Gym does not reset the clock
- Changing the time on your phone does not reset the clock[citation needed], as all user information is stored on the servers.
Therefore, the only "strategy" I can suggest is to
- Maintain your gym, so you can maintain your defender bonus
- After the countdown ends, add Pokémon to as many gyms as you can, then claim your bonus, before you lose the gym.
The Old Defender bonus was replaced with an automatic reward system, granting a player 1 coin/10 minutes a Pokémon was active in a gym (raids will place a gym "on hold", and Pokémon will not claim coins in this period, or lose health over time); to a maximum of 50 coins per day, that resets at midnight, and is automatically claimed when Pokémon are kicked out a gym.
This means that if you have 1 Pokémon in a gym for 8 hours and 20 minutes (500 minutes) you will gain the max 50 coins. Any other Pokémon that are in gyms in the same 24-hr period that you claimed this reward will no longer reward you with coins.
Best Answer
That depends partially on your play style - If you are just collecting Pokemon to fill out your Pokedex and "catch 'em all", then you may never need to use an Up-Grade on more than one Porygon.
If, however, you catch a Porygon with better stats, you may want to Up-Grade and train THAT one into a Porygon2 as well.
Also, Pokemon Go only has up to Gen3 Pokemon in-game currently, as more Pokemon are added over time, there may be more Pokemon to use these evolution items on. While there is certainly no reason to keep every evolution item you get (backpack space is limited, after all), it might be worthwile to keep at least one of each on-hand.