SKILL.md
Freelance Rate Skill
New freelancers price by dividing their old salary by 2,000 hours and wondering why they're broke by March. The employer was silently paying for benefits, taxes, tools, sales time, and dry spells — and now all of that lives inside the rate. This skill derives the rate backwards from target income through honest utilization, so the number arrives with its own justification attached — which is exactly what you need when a client asks why you charge it.
What This Skill Produces
- Required revenue — target income + self-employment tax premium + business overhead
- Honest billable hours — working weeks × hours × billable %, with the billable % defended
- The rate — hourly and day rate, plus the multiplier vs naive salary÷2000
- The justification narrative — the same math in client-safe words, for the "why so much?" conversation
Required Inputs
Ask for these if not provided:
- Target pre-tax personal income — what they want to pay themselves, not what they hope to gross
- Business overhead — insurance, tools, accounting, coworking (default $12,000/yr, labeled)
- Weeks off — vacation + sick + admin-only weeks (default 6, labeled)
- Billable % — the honest one; 60% is a realistic default, 80%+ is a mature practice with full pipeline, 100% is a fantasy
Programmatic Helper
python3 scripts/freelance_rate.py --target 90000
python3 scripts/freelance_rate.py --target 90000 --billable-pct 55 --overhead 14000 --json
Deterministic. The tax premium default (8%) is a placeholder for the self-employment delta and varies by jurisdiction — set --extra-tax-pct to the user's real number or say it's the default.
Framework: The Utilization Honesty Rules
- Billable % is the make-or-break input — sales calls, proposals, invoicing, learning, and gaps between clients are all unbillable; freelancers who assume 100% have priced their own bankruptcy
- The employer's invisible spend is now yours — payroll-tax share, benefits, equipment, paid holidays: the reason market contract rates run 1.5–2.5× salary-equivalent hourly, and why that multiple is fair, not greedy
