An estimate and a quote are both sent before the work starts, but they carry different weight. An estimate says "roughly this much, and it could move." A quote says "this exact amount, and I'll honor it." Confusing the two changes what you're actually promising the person you're doing business with.
Send an estimate when the scope isn't fully known yet — a site visit turns up an unknown, a remodel is waiting on what's behind a wall, or the price naturally depends on hours worked or materials sourced as the job goes. Say clearly that it's an estimate, and note what could change the number.
Send a quote when you can commit to a fixed price because the scope is fully defined — a known list of parts and hours, or a fixed-fee project. Once a client accepts a quote, you're expected to hold that price unless the scope changes and you document the change.
Whether an accepted quote counts as a binding contract depends on local contract law and exactly what was agreed — in most places, a quote a client accepts in writing at least functions like an offer that's been accepted, the basic shape of a deal. Treat "the client accepted my quote" as a real commitment even if you never put the word "contract" on it.
Neither document is a bill. Once the client accepts an estimate or a quote, convert it into an invoice — same parties, same line items — and add a due date and payment terms then, since that's the point where you're actually asking to be paid.
Ready to write one? Try the free generator — no signup.