Planning guide · Not legal advice

They asked for a tiny job. Here’s the floor.

A $40 logo nudge. An $80 “quick CSS tweak.” Production might be eight minutes. Setup, the thread, the invoice, and the context-switch still leave the week. Type their offer, your hourly floor, and N — the smallest hours you will treat as a job. Default N is 1 hour so the comparison is visible. Change it. It is an example, not a rule.

$0
Minimum fee
Verdict
N × floor
Their offer

Copy-paste sentence (floor vs their offer):

Next money on this hub:

The tiny number still opens the laptop

Inbound “quick tweak” money in 2026 still clusters in a $40–$80 band. The production minutes look cheap. The rest of the hour does not: find last year’s files, reread the thread, write the yes, cut the invoice, switch off the job that was already paying. Those are not extra hours on a live quote. There is no live quote. There is an offer, and there is the cost of accepting it.

The hourly floor you already built on the hub calculator is take-home math — income, billable weeks, a tax buffer you set. This card does not clone that buffer and does not run a 50-state tax engine. Labels here are USD so the arithmetic stays readable. Switch currency on the hub if you invoice in something else.

Minimum fee is a max(), not a percent

Minimum fee = max(their offer, N hours × hourly floor). If their number already beats N × floor, their number is the fee. If it does not, the floor product is the fee — or you walk. That is the whole comparison.

N is the smallest block of hours you will treat as a job. This page starts N at 1 hour so you can see a full turn of the math. That 1 is a worked example. It is not a law, not a guild hour, and not “what serious freelancers do.” Type 0.5 if your smallest block is a half hour. Type 2 if the reread plus the invoice always eat that. The card will not invent a percent of a day, a percent of a future quote, or a claim about what most people charge.

Worked example: $75/hr × 1 hour vs a $40 ask

Preset: $40 ask vs 1 hour at $75. Floor $75. N 1. 1 × $75 = $75. Their offer $40. max($40, $75) = $75. Verdict: below. The $40 ask is a no unless they meet $75.

Second preset: they offered $120. Same floor, same N. max($120, $75) = $120. Their number already clears. You can take the tiny job at $120, or you can decide the scope is actually a project quote and price the real work. Clearing the floor does not obligate you to say yes to a bad brief.

Third preset: you treat the smallest job as 2 hours. 2 × $75 = $150. They offered $80. max($80, $150) = $150. $80 is a no. You typed the 2. This page did not.

This card is not the other money cards

Nothing cancelled. Hours already worked vs a deposit is the kill-fee keep / unpaid gap — a different week, a different comparison. Do not paste a cancel sentence onto a $40 inbound tweak.

There is no original quote to add hours onto. Extra hours on a live job are the change-order add-on. If they already hired you and then asked for more screens, go there. If they pinged a brand-new $40 fix, stay here.

If they already hired you, the quote already included revision rounds, and they want another pass on the same file after those are used, that is not a $40 inbound tweak. Price that rework on the revision-round card — hours this extra pass × floor — not a max() against a tiny offer.

The calendar is not the fight. Same hours squeezed into Friday is the rush-job card. A tiny job with a normal deadline is still a tiny job. Price the floor first; rush only if they also stole the days.

They already named a dollar. That is not a free look. A look before anyone signs is unpaid discovery. If they want you to open the files for $0, that card. If they offered $40 to do the thing, this one.

Send the sentence before you open the files

Name N. Name the floor product. Name their offer. Say whether it clears. Copy from the card so the dollars match.

Skip guilt, fake scarcity, and “serious clients don’t ask for $40.” Those lines turn a max() into a lecture. If the brief is actually a real project, stop using this card and build a number on quote a project. If you do not trust the hourly floor yet, rebuild it on how to set a freelance rate — income, billable hours, tax buffer you set — then come back and type N.

This is planning math, not a contract

Educational only — not legal, tax, or collections advice. We do not invent a required minimum percent, a statutory small-job fee, marketplace micro-gig rules, or a 50-state tax engine. Confirm live terms in whatever agreement you already use. Typing numbers here does not create a contract and does not make $40 into $75.

The math is: their offer, hourly floor, N hours you type, N × floor, minimum = max(offer, N × floor), one yes/no verdict, one email-sized sentence. USD labels on this page; currency and tax buffer live on the hub.

Rate calculator Quote a project If they cancelled a live job If they asked for extra hours Set the hourly floor Same file, extra round

Rebuild the floor on the hub if billable weeks moved. A tiny inbound offer gets a max() on this card. A cancel keeps hours vs deposit on kill-fee. Extra hours on a live quote live on change-order. Another pass on the same file after included rounds is the revision-round fee. A real brief still wants a project quote, not a $40 yes.

FAQ

How do I set a freelance minimum project fee for a tiny job?

Minimum fee = max(their offer, N hours × your hourly floor). N is the smallest block of hours you will treat as a job. Default N is 1 hour as a worked example you can change — not a rule. Planning math, not a contract.

Why is a $40 or $80 quick tweak still a no at a $75 hourly floor?

Opening the files still costs setup, a thread, an invoice, and a context-switch. At $75/hr, 1 hour × $75 = $75. max($40, $75) = $75, so a $40 ask is below the floor. Change N if your smallest block is not 1 hour.

Is a freelance minimum fee a percent of a day rate or of a future quote?

Not on this page. There is no official 25%, 50%, or any other percent here. The comparison is their offer vs N hours × floor. You type N. This card will not invent what most freelancers charge.

Is this the same as a kill fee, change order, rush job, or unpaid discovery?

No. Kill fee = hours already worked vs a deposit after they cancel. Change order = extra hours on a live quote. Rush = same hours, fewer days. Unpaid discovery = a look before a contract. This card is an inbound tiny job with a named dollar offer and no live scope.

Is this minimum-fee math a contract, tax engine, or legal advice?

No. Educational planning only — not legal, tax, or collections advice. USD labels here so the arithmetic is readable. Set live currency and a tax buffer on the hub. This page does not clone a 50-state tax table. Typing numbers here does not create a contract.