These three words get used interchangeably on job sites and they are not interchangeable on paper. The difference is how firmly you are bound to the number, and that difference is worth real money the first time a job goes sideways.
The actual difference
A quote, once accepted, is generally an offer that has been taken up — you are on the hook for that price for that scope. An estimate is a projection, which is why it has to carry its assumptions on its face to mean anything.
When to send an estimate
When you genuinely cannot see the work. Anything behind a wall, under a floor, or dependent on a third party's schedule. Insurance work. Anything where the client has not decided the finish level yet.
An estimate that is going to hold up needs three things a quote does not: a range rather than a single figure, the assumptions it rests on written down, and a statement of what would change it. An estimate with a single hard number on it is a quote wearing a different hat, and it will be read as one.
When to send a quote
When you have measured, you know the finish, and nothing material is hidden. Most residential work after a proper site visit falls here.
The trade-off is real: a quote wins more jobs because clients can compare it, and it costs you money when you have measured badly. That is the deal. The exclusions list is how you keep the deal fair.
When it is a bid
When someone else set the terms. Commercial and public work usually comes with bid documents that specify the format, the deadline, the bond requirements and the terms you are accepting by submitting. Read those before you price anything — the terms often move the number more than the takeoff does.
A bid is also usually irrevocable for a stated period. That is not a formality. Check the withdrawal terms before you send.
Label the document as what it is
Put the word at the top, in the header, where nobody can miss it. Then behave consistently with it: do not call something an estimate and then refuse to move on the number, and do not call something a quote and then add a line at the end.
The client's memory of which one you sent will be generous to them. The document's header is the only version that gets to be right.



