Context
Every card or action should relate to its context. With some situations or other cards, it's more (or less) useful. The player should have to evaluate the card, each time they draw it.
In Radlands, you choose three Camp cards. They do something, and also give you a few cards for your opening hand. Obelisk doesn't do anything, but gives you an extraordinary three cards. Obelisk did have a downside, though. It began the game already damaged. It was a strong camp, which was fine, but it had no context. It didn't matter what other camps you had. You always took the Obelisk. It was still a fun camp though, so I changed it to destroy itself. Now, it's a weak camp, but an amusing curiosity that you need to evaluate each time you draw it.
There should be no cards you always (or never) play.
However, the player shouldn't just be able to reduce this analysis down to a very simple formula.
My gangster game had a Machine Gun card. It cost some money to play, but would increase all your future damage by 1. What's the strategic analysis created by the Machine Gun? It boils down to whether the game is going to end soon, or go on much longer. If the game is about to end, you don't play this card. If the game will go on for a while, you do play this card, as it's a worthwhile investment. This card's strategic analysis is too easily resolved to a simple question, and the card was culled from the game. (If every card was long-term like this, this card would be appropriate for the game, as you'd have to compare them all with each other. That would be an interesting choice.)
Choices that simply resolve to "am I winning or losing" should also be culled, for the same reason.
Choice of timing
If a choice can be made now or later, both should be viable choices. There should be no card that you always play immediately. There's a lot of strategic depth in choosing timing, without added complexity.
My gangster game also had a Tank card. This card was like the Machine Gun card, but it instead doubled the amount of damage the player did. I made Tank work, by making it destructible. It had its own Health tokens, and protected the player's health. The Tank was discarded when it ran out of Health. This new Tank now had a second purpose — protecting the player, but the card's main ability now required much more strategy. You needed to choose when to play the Tank, because if you played it in the wrong context, other players would pummel you before your next turn, destroying your Tank before you got to use its double damage.
My gangster game also had a "you've found some money" card. You played it, and you got a dollar. There was never any reason to hold this card. You'd always play it, and always play it immediately. The card it became was Kidney Donation. It gained you two dollars, but also cost you two health. This card was super-simple, strategically interesting, was played only some of the time, was usually not played immediately, and was also humorous and relatable.