It's tough to decide where to leave this reply, and this seems like a good place to address a few things I've seen in the replies to my comment.

Usually, my advice is "don't share you current or desired salary", but the one exception I've discussed with some people is when they're concerned they'll be low-balled. In those cases, I've suggested it might be better to just disclose your desired salary.

I've been rethinking this lately. I think a better tack might be to ask the company to share the salary range they're offering for the position. (You're only doing this if you're concerned you'll go through the interview process and get an offer so low you can't even counter with anything reasonable.)

In this case, you have virtually nothing to lose: either they'll tell you the range and you'll know if you're wasting your time, or they'll refuse and now you're both refusing to disclose the "desired" salary component. In the latter case, you can choose to continue with the process or not, depending on your general feeling about the opportunity.

The more I think about it, the more I suspect you should _never_ reveal your desired salary because it can basically only cost you money. When you do reveal your desired salary, you're basically guessing and gambling. You're guessing at the range they're offering, and gambling that you don't undershoot and cost yourself money. (See this clip on why I think it's so important to protect the few pieces of information you have in a negotiation: https://youtu.be/ndrY2UI-fyU TL;DR, you have only two or three unique pieces of information that the company doesn't have; the company has oodles and oodles of information that you don't have; they have a significant informational advantage in your negotiation and this is bad for you, but it's worse if you give away the few pieces of unique information that you have.)

This is a worse gamble than simply interviewing to see what they're best offer is, IMO. If you go all the way through the interview process and find they can't afford you, you wasted a few hours of interview time. If you guess and gamble by disclosing your desired salary, you're risking thousands of dollars of base salary over several years. Odds are, the opportunity cost of your time isn't anywhere near the potential downside of guessing wrong with respect to the base salary they're willing to pay.

(I'm going to sleep on this, but it feels right) So, my suggestion is don't disclose your desired salary, even if you're afraid their offer will be way too low or if the recruiter says they won't continue without it. If you're dealing with a very persistent recruiter OR you're afraid they can't afford you, ask them to tell you the salary range they're offering so you can tell them if it meets your requirements. If they won't tell you, then you can choose to continue and possibly get a low offer, walk away, or the recruiter may end the conversation (this is rare, in my experience, but I'd be open to seeing data to change my mind).

All of these outcomes are preferable to the alternative, which is risking thousands (or tens of thousands) of dollars of base salary by guessing at their range and gambling by disclosing your desired salary.

The bottom line is the company has something you need: a job. BUT you have something the company needs: skills and experience that can help them make money. Don't be fooled into perceiving a salary negotiation as a one-sided affair.