There are three main areas that a freelancer needs to negotiate a good deal to ensure the best chances of satisfying the client and to be profitable:
Often, and especially those who don't understand the technicalities of the service you offer, clients have unrealistic expectations for how long it should take to deliver the solution they are hiring you to provide. Having a specific focus on the timeframe element will allow you to persuade the client to offer a delivery schedule that is more realistic to achieve. This is because it doesn't put you under pressure in a way that risks late delivery. It also avoids the project interfering with the time you have committed for other work you may be involved with.