I was searching for the answer on this question a year ago. Frankly speaking, there is a lot of information about it in the internet. Not everything makes sense unfortunately. :(
I made some research and requested from 20+ software development companies for the project I proposed to implement. I collected their proposals and reviewed them carefully. And I'd say the following sections must be included into a good project proposal.
- Nice Front page
- Project description with system architecture and other pictures
- Work scope breakdown into tasks and sub-tasks with man-hours estimation of each one
- Delivery schedule
- Budget calculation and payment terms
- Marketing information like portfolio samples and references
The most important for certain is #3. So important that I'll probably even write an article about it a bit later.
But remember that the more detailed dividing out the work scope is done, then the more correct estimation could be provided and the better impression it gives to the customer when he reads the proposal.
We also tried to find good software to automatically generate proposals for software projects and maybe some basic CRM.
We reviewed sw proposal, proposal pad, and a few others. I don't really want to advertise anyone of them so you can decide yourself which best suits your needs. We have been using such software and generally it makes our life easier. Our staff doesn't even need to think which sections should be included since the software has predefined fields which suit our needs.