Negotiation is pretty basic if you remember that the winner is the one with the most patience and knowledge. In this type of negotiation the goal is for both the hiring company and prospective employee to win.
You have to decide how much patience you have during this process, and I will help you with the knowledge gathering part.
How low can you go?
You have to know what you are worth and the lowest point you are willing to go for compensation. This is your baseline, the point where you will accept no less. This includes benefits like insurance, wage, vacation, etc. Once you draw this line, then everything above is gravy.
In a previous job negotiation, I set my baseline only a little higher than what I was compensated in the last job. I set it this low since they were cutting jobs and I needed to get out of there before my department was cut (side note: it is easier to get a job if you already have one). Though, I was sure to negotiate more because the responsibilities of the new job were greater, thus it was worth more pay.
When deciding your baseline, think of things other than pay. Consider compensation such as lifestyle along with pay. What if you could work from home but you would earn 5% less than you are now? Would you make that up in gas? I know if I worked from home 1 day a week I would have an extra 2 weeks in drive time which I could spend with my family. Brainstorm on this and decide what is valuable to you in your situation.
Building your baseline should not be arbitrary or based on your bills. It should be based on your market value or what is typically offered for the responsibilities of the role. Therefore, if the industry average for a computer programmer is $70,000 per year then your pay would most likely fall into the $60,000-$80,000 range. In very limited circumstances you may be higher or lower but this is rare.
In a previous job change, the hiring company wanted to calculate my salary on a percentage increase from my previous job. I did not agree to this because my compensation should be based on my market value and the job responsibilities. The new job responsibilities were different then the old job responsibilities, therefore the pay should not be related.