I've never worked for Google, but here's some thoughts on your offer. These may all be obvious to you, but for the benefit of everybody..

0. You have an opportunity of real power to shape your financial future in the small window between when an offer is made and when an offer is finalized. These negotiations commonly take a few days. In those days, your effective hourly rate for your strategizing and execution of the negotiation is far far higher than what you earn as a software engineer.

1. I hope you've taken everybody's boilerplate negotiating advice and not put yourself in a hard position over money. Did you tell them early in the process exactly what you're currently making? Or exactly what you want? If so, next time don't do that. Even if somebody tries to button you down, just finesse it a bit. "Dollar amount isn't the most important thing, yadda yadda" and ask them to give you the range they're considering to ensure you two are in the same ballpark.

2. Accept this fact: It's OK to earn 10's-of-percent and/or 10's-of-thousands of dollars more than your previous job. In fact, compared to other professions with similar skill requrements I think software engineers are underpaid as a whole and we all should work to fix that.

3. Never accept any offer on the spot. Remember that companies, even Google though certainly to a lesser extent, are making best-guesses about how much to offer somebody. There is a range there. You probably have not maxed it out on their first letter. Tell them you sleep on all big decisions and you'd call back tomorrow.

4. Ask for more of something. They have a lot of perks, but it could be options or base salary. If you cannot get them to budge in those, move on to other benefits like signing bonus, vaca time (this matters less at Google and the myriad other tech companies here that have open-ended vacation policies)

5. It's OK to give back some things (signing bonus for example) in exchange for a higher base rate, but obviously don't offer that up at first.

6. Show humanity. You're negotiating with another human. And only one of you his your own wallet on the table. Suppose for the sake of argument you've been making $110k as a mid-level engineer at a startup. That is low, but you've been there for a few years, you've earned a lot more experience. Their offer is $130k. Show humanity, something like "First, i'm thrilled (almost giggling) that you've made this offer. And we're allllmost there. Obviously it's a competitive market and when I look at where I'm at now, and my experience, well I just don't want to feel like I'm taking a step backwards. I need to do what's best for my family and my thinking is currently in the $145-150k range." This has the benefit of being true. We all do have these anxieties. You just are bringing them into the discussion.

If you ever told them you make exactly $110k then obviously you have to be a little more careful how you word this plea (and seriously, don't share that info next time, you don't have to share it). But doing what's best for your family, and a need to not feel like you're taking a step backwards, are powerful human emotions that can help you from looking like a craven opportunist. Even if your family right now is your dog and your girlfriend.

They will probably counter on something. They will NOT revoke the offer because you had the nerve to ask for more. That maybe happens in less demanding, less skilled jobs. But you're a professional making 6-figures. Having a little savvy isn't a bad thing. And if for any crazy reason they did, then you definitely did not want to work there anyway. Obviously a seed-round startup has different economic realities, but that's not who you're working with here.

I could talk for hours about this, and I also think you shoul d read a bit about basic negotiation strategy. And as always YMMV. But these general concepts have served me and my family very well.