Skill Tracer
Skills › Knowledge Work Plugins › review-reputation › gotchas.md

gotchas.md

164 lines · small-business/skills/review-reputation/reference/gotchas.md at 2574e29

Open on GitHub
1# Gotchas — review-reputation
2

Gotchas — review-reputation

Raw lines 1 to 2
3## Gotcha: Posting a public response without approval
4
5**Why it matters:** A review response is permanent, public, and attributed to
6the owner by name. It is read by every future customer who finds the review.
7There is no version of "we'll fix it next run" that undoes it.
8

Gotcha: Posting a public response without approval

Why it matters: A review response is permanent, public, and attributed to the owner by name. It is read by every future customer who finds the review. There is no version of "we'll fix it next run" that undoes it.

Raw lines 3 to 8
9### ✗ Bad
11Draft eight responses, post them all, then show the owner what went out.

✗ Bad

Draft eight responses, post them all, then show the owner what went out.

Raw lines 9 to 12
13### ✓ Good
15Present each draft next to the review it answers and get a yes on that one
16before posting it. Approve one at a time — a batch approval on eight public
17responses is how the wrong one goes live.
19---

✓ Good

Present each draft next to the review it answers and get a yes on that one before posting it. Approve one at a time — a batch approval on eight public responses is how the wrong one goes live.


Raw lines 13 to 20
21## Gotcha: Blending rating averages across platforms
23**Why it matters:** Google's 4.3 and Yelp's 4.0 describe different populations
24of reviewers. An average of the two is a number that exists nowhere, and the
25owner will repeat it to a customer or put it on a truck.

Gotcha: Blending rating averages across platforms

Why it matters: Google's 4.3 and Yelp's 4.0 describe different populations of reviewers. An average of the two is a number that exists nowhere, and the owner will repeat it to a customer or put it on a truck.

Raw lines 21 to 26
27### ✗ Bad
29> Your overall rating is 4.2 across 45 reviews.

✗ Bad

Your overall rating is 4.2 across 45 reviews.
Raw lines 27 to 30
31### ✓ Good
33> Google: 4.3 (34 reviews), down from 4.6 last quarter.
34> Yelp: 4.0 (11 visible). Different reviewer pools — not averaged.
36---

✓ Good

Google: 4.3 (34 reviews), down from 4.6 last quarter. Yelp: 4.0 (11 visible). Different reviewer pools — not averaged.

Raw lines 31 to 37
38## Gotcha: Treating a partial web scrape as a complete pull
40**Why it matters:** Public review pages paginate, truncate, and reorder. A
41report built on the first page reads as the whole picture, so the owner
42concludes there are no new complaints when there are three on page two.

Gotcha: Treating a partial web scrape as a complete pull

Why it matters: Public review pages paginate, truncate, and reorder. A report built on the first page reads as the whole picture, so the owner concludes there are no new complaints when there are three on page two.

Raw lines 38 to 43
44### ✗ Bad
46> Yelp reviews: 6

✗ Bad

Yelp reviews: 6
Raw lines 44 to 47
48### ✓ Good
50> Yelp (web, partial): 6 — page shows most recent only
52Then ask for an export once. It takes the owner two minutes and fixes every
53run afterward.
55---

✓ Good

Yelp (web, partial): 6 — page shows most recent only

Then ask for an export once. It takes the owner two minutes and fixes every run afterward.


Raw lines 48 to 56
57## Gotcha: Ranking quiet customers by silence alone
59**Why it matters:** A list sorted by longest gap fills with annual customers
60who are perfectly happy and one-time buyers who were never coming back. The
61owner works the top of the list, finds it worthless, and stops using it.

Gotcha: Ranking quiet customers by silence alone

Why it matters: A list sorted by longest gap fills with annual customers who are perfectly happy and one-time buyers who were never coming back. The owner works the top of the list, finds it worthless, and stops using it.

Raw lines 57 to 62
63### ✗ Bad
65Sort every customer by days since last order and hand over 200 names.

✗ Bad

Sort every customer by days since last order and hand over 200 names.

Raw lines 63 to 66
67### ✓ Good
69Measure each customer against their own median interval, then rank by past
70value. Fifteen names the owner will actually call beats two hundred they
71won't. Put anyone who left a bad review and then went quiet at the top
72regardless of value — they said what was wrong and left anyway.
74---

✓ Good

Measure each customer against their own median interval, then rank by past value. Fifteen names the owner will actually call beats two hundred they won't. Put anyone who left a bad review and then went quiet at the top regardless of value — they said what was wrong and left anyway.


Raw lines 67 to 75
76## Gotcha: Offering a discount the owner never authorized
78**Why it matters:** A win-back message that promises 20% off is a commitment
79the owner has to honor once it lands. Drafting it before asking turns a churn
80problem into a margin problem, and the owner finds out when the customer
81redeems it.

Gotcha: Offering a discount the owner never authorized

Why it matters: A win-back message that promises 20% off is a commitment the owner has to honor once it lands. Drafting it before asking turns a churn problem into a margin problem, and the owner finds out when the customer redeems it.

Raw lines 76 to 82
83### ✗ Bad
85> Hi Dana — we've missed you. Here's 20% off your next service.
87Nobody agreed to 20%.

✗ Bad

Hi Dana — we've missed you. Here's 20% off your next service.

Nobody agreed to 20%.

Raw lines 83 to 88
89### ✓ Good
91Ask what is on the table before drafting: an offer, a plain note, or a call
92from the owner. Draft only inside that answer, and say plainly when a call
93beats a coupon — an email to someone who spent USD 9,000 reads as a mailing list.
95---

✓ Good

Ask what is on the table before drafting: an offer, a plain note, or a call from the owner. Draft only inside that answer, and say plainly when a call beats a coupon — an email to someone who spent USD 9,000 reads as a mailing list.


Raw lines 89 to 96
97## Gotcha: Arguing with a reviewer in public
99**Why it matters:** The audience is not the reviewer. It is the next customer
100reading the exchange, deciding how this business behaves when provoked. A
101correct, well-evidenced rebuttal still loses that reader.

Gotcha: Arguing with a reviewer in public

Why it matters: The audience is not the reviewer. It is the next customer reading the exchange, deciding how this business behaves when provoked. A correct, well-evidenced rebuttal still loses that reader.

Raw lines 97 to 102
103### ✗ Bad
105> Our records show the technician arrived within the scheduled window and our
106> policy clearly states parts orders take 5-7 business days.

✗ Bad

Our records show the technician arrived within the scheduled window and our policy clearly states parts orders take 5-7 business days.
Raw lines 103 to 107
108### ✓ Good
110Correct one factual point, offer a real contact route, and stop. Under 60
111words. If the review breaks platform rules, explain the removal path to the
112owner honestly — including that most requests are declined — rather than
113promising it will come down.
115---

✓ Good

Correct one factual point, offer a real contact route, and stop. Under 60 words. If the review breaks platform rules, explain the removal path to the owner honestly — including that most requests are declined — rather than promising it will come down.


Raw lines 108 to 116
117## Gotcha: PayPal rate limits on dispute queries
119**Why it matters:** PayPal's disputes API throttles aggressively on date windows with many disputes. Silent retries burn the user's time with no feedback.

Gotcha: PayPal rate limits on dispute queries

Why it matters: PayPal's disputes API throttles aggressively on date windows with many disputes. Silent retries burn the user's time with no feedback.

Raw lines 117 to 120
121### ✗ Bad
122Retry 3× automatically with no feedback. User sees a spinner for 30+ seconds before an error.

✗ Bad

Retry 3× automatically with no feedback. User sees a spinner for 30+ seconds before an error.

Raw lines 121 to 123
124### ✓ Good
125On the first rate-limit error, skip PayPal, add `PayPal: rate-limited — not included` to the Sources section, and continue with the remaining connectors. Mention that the user can try again with a narrower date window.
127---

✓ Good

On the first rate-limit error, skip PayPal, add PayPal: rate-limited — not included to the Sources section, and continue with the remaining connectors. Mention that the user can try again with a narrower date window.


Raw lines 124 to 128
129## Gotcha: Verbatim quotes paraphrased or summarized
131**Why it matters:** The owner needs to see the actual customer words — not Claude's interpretation. Paraphrase destroys the credibility of the report.

Gotcha: Verbatim quotes paraphrased or summarized

Why it matters: The owner needs to see the actual customer words — not Claude's interpretation. Paraphrase destroys the credibility of the report.

Raw lines 129 to 132
133### ✗ Bad
134**Theme: Slow shipping** (8 signals)
135> Customers reported that deliveries arrived later than expected.

✗ Bad

Theme: Slow shipping (8 signals)

Customers reported that deliveries arrived later than expected.
Raw lines 133 to 136
137### ✓ Good
138**Theme: Slow shipping** (8 signals)
139> "Ordered 2 weeks ago and still nothing — this is unacceptable." — [Gmail]
140> "Package was 10 days late and support never responded." — [Zoho Desk]
142---

✓ Good

Theme: Slow shipping (8 signals)

"Ordered 2 weeks ago and still nothing — this is unacceptable." — [Gmail] "Package was 10 days late and support never responded." — [Zoho Desk]

Raw lines 137 to 143
144## Gotcha: HubSpot returning 0 tickets treated as an error
146**Why it matters:** Test portals and new accounts legitimately have 0 tickets. Surfacing a warning creates noise and erodes trust.

Gotcha: HubSpot returning 0 tickets treated as an error

Why it matters: Test portals and new accounts legitimately have 0 tickets. Surfacing a warning creates noise and erodes trust.

Raw lines 144 to 147
148### ✗ Bad
149> ⚠️ HubSpot returned 0 tickets. Check your connection or permissions.

✗ Bad

⚠️ HubSpot returned 0 tickets. Check your connection or permissions.
Raw lines 148 to 150
151### ✓ Good
152Record `HubSpot tickets: 0` in the Sources section and continue. Only flag a connector issue if authentication itself fails.
154---

✓ Good

Record HubSpot tickets: 0 in the Sources section and continue. Only flag a connector issue if authentication itself fails.


Raw lines 151 to 155
156## Gotcha: Gmail keyword list too narrow
158**Why it matters:** Customers don't use standard complaint keywords. A 1-star experience often surfaces as "took forever" or "never again," not "disappointed."

Gotcha: Gmail keyword list too narrow

Why it matters: Customers don't use standard complaint keywords. A 1-star experience often surfaces as "took forever" or "never again," not "disappointed."

Raw lines 156 to 159
160### ✗ Bad
161Search only for: `refund cancel unhappy`

✗ Bad

Search only for: refund cancel unhappy

Raw lines 160 to 162
163### ✓ Good
164Use the full seed list in `sources.md`, which includes phrasings like "took forever" and "never again." Let theme extraction filter signal from noise — over-inclusion is cheaper than a missed theme.

✓ Good

Use the full seed list in sources.md, which includes phrasings like "took forever" and "never again." Let theme extraction filter signal from noise — over-inclusion is cheaper than a missed theme.

Raw lines 163 to 164