Install any skill in seconds. Free to start, no credit card required.
Get Started Free →Chase an overdue invoice and actually get paid — a firm-but-friendly escalation ladder that protects the client relationship until it's clear the relationship is the problem. Use when asked to chase an unpaid invoice, my client hasn't paid, write a payment reminder, or how do I get a late-paying client to pay. Produces a staged sequence of messages (gentle nudge → firm reminder → final notice → next steps) timed to the overdue days, with late-fee and work-pause options and a note on what to keep
.claude/skills/mohitagw15856-late-invoice-chaser/SKILL.md| Test case | Without → With | Effect | Δ tokens | Δ turns |
|---|---|---|---|---|
| case-08 | ✗→✓ | ▲ Improved | 82% | 0% |
| case-09 | ✗→✓ | ▲ Improved | -14% | 0% |
| case-12 | ✗→✓ | ▲ Improved | 47% | 0% |
| case-16 | ✗→✓ | ▲ Improved | 143% | 0% |
| case-18 | ✗→✓ | ▲ Improved | 55% | 0% |
Freelancers and small businesses lose more to unpaid invoices than to bad pricing — and the reason is usually awkwardness, not the client's cash flow. A calm, escalating sequence removes the awkwardness: each message is warmer than you feel and firmer than the last, so you get paid without torching a good client — and you have a clean paper trail if it comes to that.
Ask for these if not provided:
Send schedule | When | Step | Tone | |---|---|---| | Due +1–3 | Gentle nudge | Assume oversight | | Due +7–10 | Firm reminder | Clear, specific pay-by | | Due +14–21 | Final notice | Consequences named | | Due +30 | Next steps | Formal, factual |
1 · Gentle nudge > Warm one-liner, invoice re-attached, amount + new pay-by]
2 · Firm reminder > Invoice #, amount, days overdue, specific date, payment methods]
3 · Final notice > Clear pay-by, the lever: late fee / paused work / held deliverables — as policy]
4 · Next steps > Factual: what happens next — formal demand / small claims / collections — with a final chance to resolve]
Keep for the record: invoice · signed terms/agreement · delivery proof · every message + reply.
| Case | Status | Duration (ms) | Turns | Tokens | Tool calls | ||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Without | With | Δ | Without | With | Δ | Without | With | Δ | Without | With | Δ | ||
case-01 | fail→fail | 25,883 | 23,761 | -8% | 1 | 1 | 0% | 3,377 | 4,177 | +24% | 0 | 0 | — |
case-02 | fail→fail | 26,837 | 23,211 | -14% | 1 | 1 | 0% | 3,712 | 4,138 | +11% | 0 | 0 | — |
case-03 | fail→fail | 30,929 | 22,690 | -27% | 1 | 1 | 0% | 4,501 | 4,176 | -7% | 0 | 0 | — |
case-04 | pass→fail | 12,503 | 12,141 | -3% | 1 | 1 | 0% | 2,230 | 3,067 | +38% | 0 | 0 | — |
case-05 | pass→fail | 18,378 | 20,094 | +9% | 1 | 1 | 0% | 2,254 | 3,652 | +62% | 0 | 0 | — |
case-06 | pass→pass | 16,912 | 26,052 | +54% | 1 | 1 | 0% | 2,054 | 4,779 | +133% | 0 | 0 | — |
case-07 | pass→pass | 20,590 | 17,499 | -15% | 1 | 1 | 0% | 2,442 | 3,392 | +39% | 0 | 0 | — |
case-08 | fail→pass | 17,640 | 13,716 | -22% | 1 | 1 | 0% | 1,875 | 3,408 | +82% | 0 | 0 | — |
case-09 | fail→pass | 11,592 | 3,357 | -71% | 1 | 1 | 0% | 1,864 | 1,608 | -14% | 0 | 0 | — |
case-10 | pass→pass | 22,279 | 18,515 | -17% | 1 | 1 | 0% | 3,022 | 3,419 | +13% | 0 | 0 | — |
case-11 | pass→pass | 18,644 | 11,981 | -36% | 1 | 1 | 0% | 2,190 | 3,224 | +47% | 0 | 0 | — |
case-12 | fail→pass | 16,893 | 21,522 | +27% | 1 | 1 | 0% | 2,796 | 4,100 | +47% | 0 | 0 | — |
case-13 | pass→pass | 11,362 | 19,012 | +67% | 1 | 1 | 0% | 1,898 | 3,717 | +96% | 0 | 0 | — |
case-14 | fail→fail | 12,818 | 16,426 | +28% | 1 | 1 | 0% | 1,214 | 3,193 | +163% | 0 | 0 | — |
case-15 | fail→fail | 15,010 | 12,865 | -14% | 1 | 1 | 0% | 2,441 | 3,516 | +44% | 0 | 0 | — |
case-16 | fail→pass | 12,742 | 13,651 | +7% | 1 | 1 | 0% | 1,488 | 3,621 | +143% | 0 | 0 | — |
case-17 | fail→fail | 20,520 | 16,295 | -21% | 1 | 1 | 0% | 2,824 | 3,276 | +16% | 0 | 0 | — |
case-18 | fail→pass | 13,497 | 21,805 | +62% | 1 | 1 | 0% | 2,257 | 3,503 | +55% | 0 | 0 | — |
case-19 | pass→pass | 14,952 | 16,010 | +7% | 1 | 1 | 0% | 1,734 | 3,637 | +110% | 0 | 0 | — |
case-20 | pass→pass | 23,775 | 21,584 | -9% | 1 | 1 | 0% | 2,685 | 3,564 | +33% | 0 | 0 | — |
case-21 | pass→pass | 17,234 | 14,382 | -17% | 1 | 1 | 0% | 2,931 | 3,626 | +24% | 0 | 0 | — |
case-22 | fail→fail | 18,018 | 23,181 | +29% | 1 | 1 | 0% | 2,961 | 3,773 | +27% | 0 | 0 | — |
DecimalAI ran this skill against gemini-3.6-flash twice over the same eval suite — once with the skill loaded and once without — and compared the two runs case by case. 22 cases were attempted. The headline lift of +14 percentage points is the difference between those two pass rates over the 22 comparable cases. 2 cases got worse with the skill loaded, and they are included in that figure.
Without the skill loaded, the model failed this case. With it loaded, the same prompt on the same model passed. This is one improved case from the latest verified run; every case, including any that regressed, is in the table above.
Other measured skills in the registry, with their headline benchmark lift.