Library › Money
Negotiate a bill or dispute a charge
Prepare to lower a recurring bill or dispute a wrong charge. Builds a fact sheet from the user's bills, a phone script with a clear ask and walk-away point, and a written dispute message. Use when the user wants to lower a bill, cancel-or-negotiate, or dispute a charge with a provider.
Partly self-tested · prep only, outcome untested
What "self-tested" means: our own AI agent ran this skill against the fictional demo files and we published its real output, failures included. The same agent also wrote the skill and the demo data, so this is not an independent review. Check results yourself before you rely on them.
Drop the folder into your agent's skills directory (e.g. ~/.agents/skills/ or ~/.claude/skills/), or paste SKILL.md into any chat assistant. Demo files included:
demo/bills.md
Test record
| Field | Value |
|---|---|
| Status | Partly self-tested: prep materials only; real-world negotiation outcome untested |
| Version / date | v1.0 test: 2026-10-13 (no failures in this skill were scheduled for the Oct 14 fix round; re-labeled only) |
| Model / agent | Grok Bot (the same agent that wrote the skill and the demo data, so this is not an independent test) |
| Input | demo/bills.md: fictional internet customer whose promo ended, plus a wrong $12.99 equipment fee after the modem was returned |
| Method | Grok Bot followed SKILL.md. Afterward, every fact in the script was checked against the demo file. Nobody called a company; that can't be tested honestly with fictional providers. |
Real output
Fact sheet - Customer since March 2022 (about 4.5 years). - Price went from $55.00 → $89.00 (+$34/mo) after the promo ended Aug 31, 2026. - Wrong charge: equipment rental of $12.99 on the Sep 2026 bill. The modem was returned Jul 18, 2026 (receipt #CW-RT-55821). - Competitor seen: Summit Fiber, 300 Mbps, $60/mo for 12 months (new customers).
Ask / fallback / walk-away - Ask: $60/mo for 12 months, the $12.99 removed, and a refund for September. - Fallback: $65–70/mo plus the fee removed and refunded. - Walk-away: switch to Summit Fiber (Riley confirmed they're willing).
Phone script
"Hi, I've been a Clearwave customer since March 2022. My promo ended and my bill went from $55 to $89. I also see a $12.99 equipment charge, but I returned the modem on July 18; my receipt number is CW-RT-55821. First, please remove the $12.99 and refund it for September. Second, Summit Fiber is offering 300 Mbps for $60 a month for 12 months. I'd rather stay. Can you match $60 for 12 months?"
If they say "that's the standard rate": "I understand. Could you transfer me to the loyalty or retention team? I'm deciding this week whether to switch." If they offer something in between: "Thanks. Can you do $60? If not, I could accept [fallback] for 12 months with the equipment fee refunded." If they say they can't find the modem return: "I have receipt CW-RT-55821 from your store on July 18. Can you note that on my account and escalate? I'll also send it in writing." Close: "Great. Can you confirm the new price, how long it lasts, and the refund amount, and give me a reference number? Please send that by email too."
Written dispute (for the portal or email, not sent)
Subject: Incorrect equipment charge, account [account #] Hello, my September 2026 bill includes an equipment rental charge of $12.99. I returned the rented modem at your store on July 18, 2026 (return receipt #CW-RT-55821) and have used my own modem since. Please remove this charge, refund the $12.99, and confirm no further equipment charges will appear. I'd appreciate a response within 10 business days. Thank you, Riley
Call log: Date | Rep name | Reference # | Offer made | Agreed price & term | Refund amount | Follow-up date
Known failures / limits
- Outcome untested. Whether a script like this actually lowers a bill can only be learned from real calls by real customers. Future versions should collect anonymized, opt-in reader results.
- "Deciding this week" is a light time-pressure line that isn't in the user's facts. It's true only if the user is in fact deciding soon; v1.1 should make it a
[confirm]placeholder. - The competitor offer is for new customers, and the existing provider may say so. The script doesn't prepare a reply for that pushback.
- Self-test bias: the same agent wrote the demo and ran the test.
The skill file
---
name: negotiate-a-bill
description: Prepare to lower a recurring bill or dispute a wrong charge. Builds a fact sheet from the user's bills, a phone script with a clear ask and walk-away point, and a written dispute message. Use when the user wants to lower a bill, cancel-or-negotiate, or dispute a charge with a provider.
license: MIT
metadata:
library: TriedSkills
job: Negotiate a bill or dispute a charge
version: "1.0"
---
# Negotiate a bill or dispute a charge
## Inputs
Recent bills or statements (amounts, dates, line items), how long the user has been a customer, any competitor offers they've actually seen, and their goal (a target price, or removal of a specific charge).
## Steps
1. Build a **fact sheet**: current price, previous price, when it changed, the disputed line items with dates, and account tenure. Use only facts from the user's documents.
2. Set the **ask** (a specific number), a **fallback** (an acceptable compromise), and a **walk-away** (what the user will do otherwise, e.g. switch). Confirm the walk-away is something the user is actually willing to do.
3. Write a **phone script**: opener, facts, the ask, responses to the 3 most likely pushbacks, and a close that confirms the change in writing. Include "ask for the retention/loyalty department" for cancellations.
4. Write a **written dispute message** (under 200 words) for any wrong charge: dates, amounts, what was expected, the requested fix, and a reasonable response deadline.
5. Add a **call log template**: date, rep name, reference number, what was agreed.
## Guardrails
- **Truthful only.** Never claim a competitor offer, hardship, or promise that the user didn't give you.
- No threats or legal claims. Keep it firm and polite.
- The user makes the call and sends the message. The agent doesn't contact companies.