How to Price a Productized Service Without Inventing a Market Rate
You do not have a market rate until you have a floor and a fence. The floor is delivery time, review time, and tools you already pay for. The fence is in, out, and what triggers a new price.

You are about to put a number on a productized service. If the only source is a figure you saw somewhere else, you do not have a market rate. You have a rumor. A rate you can defend starts as a floor and a fence. The floor is the time to deliver, the time to review, and the tools you already pay for. The fence is what is in, what is out, and what triggers a new price. Until both are written, the number is a guess with a typeface.
Do this after fit, not before. The operating system is from qualified conversation to proposal. The printable fields live on the qualification to proposal card. The sentence a stranger can repeat, the name of the offer, is the sibling name a productized offer. This page does not rename the offer and it does not invent a going rate.
Productized means a fence, not a day rate in a nicer font
A productized service is a job a stranger can buy without a custom scoping novel. Same offer. Same in list. Same out list. Same trigger for a new price. If every proposal renegotiates what is included, you are not productized. You are writing custom quotes and calling the menu a product.
The naming sibling holds the unique value proposition (UVP) and the ideal customer profile (ICP). If those four lines are still a paragraph, stop. A price stuck to a blob teaches the buyer nothing except that you will negotiate. Fix the name first. Then come back and build the floor.
The floor is three lines you can point at
Write the floor before you write currency. This page will not convert hours into money, and it will not hand you a multiple. A multiple hides which line you skipped. If you do not know a line, write UNKNOWN. Do not estimate. An estimate becomes the cost you manage, and you will defend it in the next proposal as if you had measured it.
- Delivery time: hours to do this scoped job once. Include setup, handoff, and the last pass you always forget. If you have never done this fence, the line is UNKNOWN. A similar job from memory can sit in the margin labeled not this job. It does not fill the line.
- Review time: your review, plus the review rounds that are inside the fence. Name the count. An uncounted round is free labor, or it is a new price. If you leave the count blank, the buyer will assume review never ends.
- Tools you already pay for: seats, hosting, software this job consumes, invoices you can open. Not a tool you might buy later. Not a fraction you invented to spread an annual bill across imaginary future jobs. If the invoice is not in front of you, UNKNOWN.
You may set a currency price above that floor later, on your own numbers, off this page. You may not publish a price while a floor line says UNKNOWN and you have quietly replaced it with a hunch. The gap between floor and price is a decision. A gap you copied from a stranger is the market rate you still do not have.
Order matters. Floor, then fence, then one payment trigger, then the refusal list, then currency. If you pick the currency first, you will bend the fence until the job fits the number. That is how a productized offer becomes a custom quote with a fixed headline.
The fence is in, out, and the trigger for a new price
Scope is not a paragraph of enthusiasm. It is three columns. In is what they receive. Out is what this price refuses. The trigger is the event that opens a new number. Write the trigger as an event, not a feeling. Extra review round. Extra page. Extra stakeholder who can change the job. Rush that deletes the review time already on the floor.
| Line | Write this | What a price ignores |
|---|---|---|
| In | Named deliverables, a named round count, a named owner on your side | Every adjacent request becomes part of the package |
| Out | The jobs this price will not do | You discover the out list while you are already working |
| New price | The event that opens a new number | Can you just stays inside the old number |
Put the fence on the proposal artifact, the same dated PDF or scoped email the qualify path already requires. A slide that says we will align is not a fence. If they cannot accept or refuse the out list, you do not have a product. You have a conversation.
- One owner on your side: the person who answers inside the reply window you already promised. A team is not an owner.
- Change is an event: when the event happens, the old price stops. You do not keep working at the old number while you think about the new one.
- Rush is a trigger or a refusal: if the date deletes review time, it is not a favor. It is a different floor. Price it as new, or refuse it.
Pick one payment trigger and name what it fails at
Start, milestone, or done. Pick one for this offer. Do not offer all three and let the buyer assemble a fourth. Write one sentence on the proposal that says what this trigger fails at. If you cannot say the failure, you do not understand the trigger. You just like the cash timing.
- Start: payment before work. It fails when start is undefined, so you begin on a calendar hold with no artifact. It fails when the buyer needs a first slice before they will pay, and you have no smaller fence, so you either work free or you stall. It fails when you spend the money on tools you do not already pay for, which means the floor was wrong.
- Milestone: payment at a named gate. It fails when the gate is a mood. After discovery and phase two are moods. A gate is an artifact they can accept. It fails when review sits between gates and nobody owns the wait, so you keep working and the next payment never triggers. It fails when the middle milestone is the word alignment.
- Done: payment when the job is finished. It fails when done means until they are happy, so delivery time runs past any floor. It fails when a late no leaves you holding delivery, review, and tool use with no payment. It fails when you have no slack: you cannot float the whole job and still answer the next conversation inside the window you promised.
Say the failure out loud before you send. Start: if kickoff has no date, we have not started. Milestone: if the gate artifact is not accepted, the next block does not begin. Done: if done is not the in list, we are not finished, and we are also not working past it for free. One sentence. Then stop explaining.
The refusal list
A productized price needs sentences you will actually send. A refusal is not a negotiation tactic. It is how the fence stays a fence. If you discount the same price every time someone pushes, the public number was theater.
- No decision owner: they will not name who can say yes. You do not invent an ability to buy so the proposal can go out.
- No out list: they want whatever it takes inside one number. That is custom work. It is not this offer.
- Review deleted: the date removes the review time on the floor. Refuse, or open a new price. Do not quietly absorb it.
- Second offer, same price: a brand job stuffed into a site job, or the reverse. The naming sibling already split those. Do not glue them back together on the call.
- No slot: you cannot answer inside the reply window you already promised. A lower price does not create a slot. The constraint tree is how to choose a growth bottleneck before a channel. Capacity is often the constraint people try to solve with a discount.
Count proposals on the service business growth scorecard. The price does not live on that card. If you do not know how many proposals you sent, you do not know whether this price is being tested. Freeze that count on the 90-day growth baseline. UNKNOWN is an allowed answer. A guessed close rate is not.
Hypothetical, labeled
Hypothetical. The offer is one fenced build. Delivery time is written in hours. Review is one round, written in hours. The tool line says UNKNOWN because the invoice was not opened. You do not publish a currency price that afternoon. You open the invoice, or you leave UNKNOWN on the floor and you do not pretend the floor is complete. The fence says an extra page is a new price. The payment trigger is start. The failure sentence is on the proposal: if kickoff has no date, we have not started. What this does not prove: a correct price for your firm. It proves you can refuse to invent one.
If the fence will not stay still on a call, that is scoping, not a hunt for a market rate. Start at contact. Selected work on /work shows jobs with a visible edge. It is not a claim about your close rate.
Frequently asked questions
What is a floor if I cannot look up a market rate?
Three lines you can point at: time to deliver the scoped job, time to review it, and tools you already pay for. If a line is blank, write UNKNOWN. Do not estimate. A number you saw on another website is not a floor.
What is a scope fence?
What is in, what is out, and the event that triggers a new price. Extra rounds, extra pages, extra stakeholders, and rush are typical triggers. If the trigger is not written, the buyer will treat the extra as included.
Should I charge at the start, at a milestone, or when the job is done?
Pick one. Start fails when start is undefined and work begins on a vibe. A milestone fails when the gate is a mood word like alignment, so the next payment never arrives. Done fails when done means until they are happy, so delivery time can run past the floor. Write the failure in one sentence on the proposal.
What belongs on the refusal list?
No named decision owner. No out list. Timing that deletes the review time you counted. A second offer stuffed into the same price. A job you cannot answer inside the reply window you already promised. Those are refusals, not discounts.
Do I set the price before I know they are a fit?
No. Fit is who, job, timing, and ability to buy. The path is the qualified conversation to proposal. A price sent so you can learn the job is unpaid discovery with a PDF costume. The name and the unique value proposition (UVP) belong to the naming sibling, not to this page.