Don’t do work for free for anyone. The fact that professionals need to be told this still is insane. If you’re not getting paid for it, do not do it. It may sound “greedy”, but you will be used and abused by clients if you do that.
Even charities pretty much always have a budget for stuff like artwork. It may not be much but it's telling that they're far more likely to talk money (and usually "this is our budget, what will that get us" talk) than a lot of for-profit businesses.