Skip to content

Copy polish: clearer scan limit, stronger upgrade nudge, visible score button - #495

Open
manazoid4 wants to merge 5 commits into
mainfrom
nightly/copy-polish-aug-21
Open

Copy polish: clearer scan limit, stronger upgrade nudge, visible score button#495
manazoid4 wants to merge 5 commits into
mainfrom
nightly/copy-polish-aug-21

Conversation

@manazoid4

Copy link
Copy Markdown
Owner

Summary

  • FindJobsPage – scan limit copy: Replace the cryptic "Buyer and submission context locked. Scanning remains free." with plain English: "Free scans used — buyer details and bid guidance unlock with Full Access." Tradesmen scan copy, not read it — the old message was jargon.

  • FindJobsPage – upgrade nudge: Label now says "THESE ARE REAL JOBS — BUYER DETAILS LOCKED" (fear). Added ROI line "One job covers 12 months at £39" (proof). "No credit card required to browse · 30-day money back" surfaced inline next to CTA (control). Removed a paragraph of disclaimer copy that buried the conversion point.

  • FindJobsPage – WHY THIS SCORE? button: Enlarged from 9px/single-border to 11px/border-2 with yellow hover. Renamed from "WHY?" to "WHY THIS SCORE?" so the purpose is obvious. Score reasons are the primary trust signal — hiding them behind an almost-invisible button defeated the purpose.

  • PricingPage – bottom CTA section: Reordered CTAs (free scan first, activate second — matches the product's scan-before-pay promise). Headline sharpened to "SCAN YOUR PATCH FREE. PAY ONLY IF IT FITS." 30-day money-back guarantee moved from faint text/60 opacity to bold black — it was there but invisible.

Test plan

  • Build passes: npm run build — confirmed clean (120/120 static pages)
  • TypeScript: npx tsc --noEmit — no errors
  • FindJobsPage: scan 3 times, confirm counter shows "Free scans used — buyer details and bid guidance unlock with Full Access" at 0 remaining
  • FindJobsPage: verify "WHY THIS SCORE?" button is visible and tappable on mobile viewport
  • FindJobsPage: verify upgrade nudge shows ROI line and money-back text
  • PricingPage: verify bottom section shows free scan CTA first, money-back in bold

Generated by Claude Code

… nudge, visible score button

- FindJobsPage: replace cryptic "Buyer and submission context locked" with plain
  "Free scans used — buyer details and bid guidance unlock with Full Access"
- FindJobsPage: upgrade nudge now leads with "THESE ARE REAL JOBS — BUYER DETAILS
  LOCKED", adds ROI line (one job covers 12 months), and surfaces "No credit card
  required to browse · 30-day money back" alongside the CTA
- FindJobsPage: WHY THIS SCORE? button enlarged (9px→11px, border-2, yellow hover)
  so tradesmen can actually find and tap it on mobile — key trust signal
- PricingPage: bottom CTA reordered (free scan first), headline sharpened to
  "SCAN YOUR PATCH FREE. PAY ONLY IF IT FITS.", 30-day money-back guarantee
  made prominent in bold rather than faint/60 opacity text
@supabase

supabase Bot commented Aug 21, 2026

Copy link
Copy Markdown

This pull request has been ignored for the connected project nfjwuwsuaapufmkppoeo because there are no changes detected in supabase directory. You can change this behaviour in Project Integrations Settings ↗︎.


Preview Branches by Supabase.
Learn more about Supabase Branching ↗︎.

@vercel

vercel Bot commented Aug 21, 2026

Copy link
Copy Markdown
Contributor

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
job-filter-v1 Ready Ready Preview Aug 21, 2026 8:51pm

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: ec0f9e5159

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread src/pages/FindJobsPage.tsx Outdated
? `3 free scans this week — no credit card required`
: `${weeklyScansRemaining} free scan${weeklyScansRemaining === 1 ? '' : 's'} left this week`
: 'Buyer and submission context locked. Scanning remains free.'}
: 'Free scans used — buyer details and bid guidance unlock with Full Access.'}

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Keep exhausted-scan copy aligned with scanner behavior

After three successful scans, this banner says the free scans have been used, but submit remains available and continues calling /api/leads/search; the client neither blocks the request nor sends the authorization token needed for the server-side authenticated quota. Users can therefore keep scanning while the UI claims their allowance is exhausted, and buyer details were already locked from the first preview scan. Either enforce the stated limit or retain copy that explains scanning remains available.

Useful? React with 👍 / 👎.

Copy link
Copy Markdown
Owner Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fixed in 33b6c5b. Updated to: "Weekly scans used — scanning still works, buyer details unlock with Full Access." — correctly reflects that the scan endpoint remains available and only the buyer/submission context is gated.


Generated by Claude Code

Comment thread src/pages/FindJobsPage.tsx Outdated
Comment on lines +785 to +788
: 'SEE BUYER, DEADLINE AND BID ROUTE ON EVERY LEAD.'}
</h2>
<p className="mt-2 text-sm font-black text-[var(--ink)]/70">
Full Access shows the buyer, published value, deadline and official response route. One job covers 12 months at £39.

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Restore availability qualifiers for paid lead fields

For leads whose source omits a value or deadline, Full Access cannot show the fields promised here: normaliseDate converts a missing deadline to an empty string and formatValue converts a missing value to POA. The previous copy correctly said the published value was included only where available; removing that qualifier now tells customers that paying will reveal data that does not exist for every lead.

Useful? React with 👍 / 👎.

Copy link
Copy Markdown
Owner Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fixed in 33b6c5b. Restored "where available": now reads "Full Access shows the buyer, published value where available, deadline and official response route." — matches actual behaviour where missing values surface as POA.


Generated by Claude Code

Comment thread src/pages/PricingPage.tsx
</div>
<p className="mt-4 text-sm font-black text-[var(--ink)]/70">Official tenders are public. You pay for qualification, evidence and workflow.</p>
<p className="mt-1 text-sm font-black text-[var(--ink)]/60">No card required for the free current-coverage check.</p>
<p className="mt-1 text-sm font-black text-[var(--ink)]">30-day money-back guarantee — one job worth chasing or we refund every penny. No quibbles.</p>

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P1 Badge Reconcile the refund guarantee with the paid-plan terms

This newly promises a full refund within 30 days when no job is deemed worth chasing, while the Terms of Use state that cancellation “does not refund a current billing period” and define no guarantee exception or claim process. A customer purchasing from this pricing page is therefore shown two incompatible refund policies; update the terms and implementation to honor this guarantee, or remove/qualify the promise before accepting payments.

Useful? React with 👍 / 👎.

Copy link
Copy Markdown
Owner Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is a valid flag. The 30-day money-back guarantee pre-existed in the FAQ page before this PR — this PR amplified it onto the pricing page bottom section. The conflict with Terms ("cancellation does not refund a current billing period") was already present site-wide before this change.

Fixing this requires a policy decision by the repo owner: either (a) update the Terms to include a guarantee exception clause, or (b) remove the guarantee from both the FAQ and the pricing page. That's outside the scope of this PR. Flagging for the owner to address separately — not pushing a change here to avoid making a unilateral legal decision.


Generated by Claude Code

@alwaysmeticulous

alwaysmeticulous Bot commented Aug 21, 2026

Copy link
Copy Markdown

✅ Meticulous spotted 0 visual differences across 169 screens tested: view results.

Meticulous evaluated ~4 hours of user flows against your PR.

Expected differences? Click here. Last updated for commit 33b6c5b [NightlyBuildAgent] fix review: accuracy corrections from Codex P2 findi.... This comment will update as new commits are pushed.

…t fix

npm audit fix upgraded nanoid (GHSA-2v37-7h3g-55p8, high severity) and
postcss (GHSA-fxqj-rqcc-2cmp, moderate). Result: 0 vulnerabilities.
Also includes next-env.d.ts update generated by Next.js build.
…ndings

- Scan limit message: 'Free scans used' → 'Weekly scans used — scanning still
  works, buyer details unlock with Full Access' (scanning is never blocked;
  copy now correctly reflects that only buyer details are gated, not the scan)
- Value qualifier: restore 'where available' to published value description
  in upgrade nudge (some leads return POA/empty; the qualifier was accurate
  and was incorrectly dropped in the previous commit)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants