How do you feel about giving away free licenses (original price: $2000 ) to universities, charities and open source projects of your software to spread the word?
We have been doing this with our engineering software (costing >$30K/user) for a long time now but with mixed success. We learned several things in the process:
After 10 years, looking back at how we've handled universities, we find that we're doing a lot better in the countries where we put a lot of effort into our educational program 10 years ago than in those countries where we just started recently. It definitely make a long term difference.
In general, it's a good idea to discount products and services to non-profits as a way to build goodwill and a potential user base. Plenty of software companies do this for Universities so that they get students used to the software for future sales.
Don't demand anything. That just makes it seem unauthentic. You should really want to help the non-profit because you feel compelled to.
A price discount is much better than giving it away for free. You could do a trial period and then a discount but my experience with free software to non-profits (which is limited), underscores your point about them being interested.
Olalonde makes a good point about the potential market for your software. You need to consider that before discounting or giving stuff away.
Giving away software is a mixed bag, and you have to decide where you should give it and where you should discount it. For example, your local animal shelter is severely understaffed and underfunded, so giving them the software is fine. Princeton, while technically a non-profit, has a truly ridiculous amount of money, so discounts for them. One rule of thumb is that you should never sell at full price to a non-profit because a) they'll find someone else who's willing to undercut you, and b) it makes you look like a dick.
You can't demand anything from them even if you give it away, but you're well within your rights to ask them to publicly thank you. Sort of the way this works is that you give them the software unconditionally and say, "By the way... if you could write something in your newsletter about this..." However, if they don't, you can't hold it against them. Every non-profit gets regular donations from the least likely places, and $2,000 isn't a lot compared to what Microsoft gives them.
Selling at $25 may not be a great idea because, like Jarie said, it kind of underscores your point, and it also cheapens your product. Ideally, you'd like to sell it either at cost or slightly below. If you drop the price by 50%, it says, "Even though they're selling at a discount, it still costs a lot of money to develop". Selling at $25 says, "Some guy wrote this in his garage and he's just looking to make a quick buck." It also puts you in the same price category as open-source software but without community support.
If you do this at all, make it free rather than a reduced price.
Why? Because when something is free the recipient will generally be kinder about things like demanding tech support, features, and live video demos. When someone has paid, even a small amount, there's a psychological difference where now you "owe" them something.
Others have mentioned the benefits, but one I did not see was that you can get great tax write-offs doing this. Even if you did it for no other reason it is worth it for that.
The tax write-offs of course are subject to compliance with your jurisdictional regulations. Like Jason points out - most universities will not qualify, but most non-profit/charity organizations do qualify. They must be willing to provide documentation for you if you want to be able to stand up to an audit/other scrutiny. If they are getting value from the product I don't see why they wouldn't provide it.
From the comments it sounds like your software wouldn't be very useful to university students and not to many non-profits either.
If this is the case, I say don't do this. You don't get goodwill if people don't actually use and talk about your software.
Furthermore you'll get feedback that's probably incorrect. That is, they'll have feedback that's right for them, but since they're not your target audience, it's not correct for your market.