CodingIdeas.ai

RepLens — AI Sales Call Analyzer for Diarized Transcripts

Paste or upload any diarized sales call transcript and get a Claude-powered breakdown of rep performance, objection handling, talk ratios, and next-step recommendations in under 30 seconds. Built specifically for sales managers and coaches who are drowning in call recordings but need actionable intel fast.

Difficulty

intermediate

Category

Sales Enablement

Market Demand

High

Revenue Score

8/10

Platform

Web App

Vibe Code Friendly

⚡ Yes

Hackathon Score

🏆 8/10

Validated by Real Pain

— sourced from real search demand

Organic Searchreal demand

Sales professionals are actively searching for a way to use Claude AI to automatically analyze and extract coaching insights from diarized sales call transcripts, indicating unmet demand for an AI-powered call review tool that works on existing transcript exports.

What is it?

RepLens accepts diarized transcripts from Fireflies, Otter, Gong exports, or manual uploads and runs them through Claude to produce a structured scorecard covering talk-to-listen ratio per speaker, objection patterns, buying signals detected, competitor mentions, and a prioritized coaching checklist with exact timestamps. Sales managers stop re-listening to 45-minute calls and instead read a 1-page AI summary they can act on in minutes. The product integrates with Zapier so new transcripts from Fireflies or Otter auto-trigger analysis and email the scorecard to the manager's inbox before their morning standup. Monetized on a per-seat SaaS model targeting small-to-mid sales teams of 3–15 reps where Gong is overkill at $1,200 per seat per year. The free tier allows 5 lifetime analyses with no credit card required, creating a frictionless trial path that converts at roughly 15% based on a 'calls remaining' nudge sequence. At full run-rate a solo founder can operate this profitably on under $150 per month in infrastructure until 500-plus daily analyses.

Why now?

Claude's 200k context window means a 45-minute diarized transcript — typically 8,000 to 12,000 tokens — fits in a single API call with room for detailed structured output instructions, making reliable JSON scorecard generation cost-effective for the first time. Fireflies and Otter have also crossed mainstream adoption among SMB sales teams, meaning transcript exports are already sitting in managers' inboxes as an unanalyzed asset waiting for exactly this tool.

  • Diarized transcript ingestion: paste raw text or upload .txt or .docx files from Fireflies, Otter, or Gong exports — Claude identifies speakers automatically even without explicit labels using contextual turn-taking analysis
  • Structured scorecard output: talk-to-listen ratio per speaker, top 3 objections raised with verbatim quotes, buying signals detected with timestamps, competitor mentions flagged, and a 5-point prioritized coaching checklist with exact line references
  • Manager email digest: after each analysis Resend fires a formatted HTML scorecard to the manager's inbox within 60 seconds so they never need to log in to stay informed — includes a one-click link to view the full scorecard in-app
  • Zapier webhook trigger: connect Fireflies or Otter so every new transcript auto-queues for analysis with zero manual upload — setup takes under 5 minutes using the provided Zap template

Target Audience

Sales managers at SMBs with 3–15 reps, sales coaches charging $200–$500 per session, and RevOps leads at seed-to-Series A startups who can't justify Gong pricing.

Example Use Case

Sarah manages 6 SDRs and uploads their Monday call transcripts every Tuesday. RepLens emails her a coaching digest by 9am — she identifies that 4 of 6 reps never ask for a next meeting, fixes it in her 1:1s, and closes 2 more deals that month.

User Stories

  • As a sales manager, I want to paste a Fireflies transcript and get a talk-ratio and objection breakdown in under 60 seconds, so that I can coach my rep in tomorrow's 1:1 without re-listening to a 40-minute call.
  • As a sales coach, I want to upload a client's call transcript and receive a timestamped coaching checklist, so that I can deliver higher-value sessions and justify my $400/hour rate with concrete AI-backed evidence.
  • As a RevOps lead, I want new Fireflies transcripts to auto-trigger analysis via Zapier and email me the scorecard, so that I get a weekly digest of team call quality without any manual work.

Done When

  • Core analysis: done when a pasted 5,000-word diarized transcript returns a valid scorecard JSON with talkRatio, minimum 2 objections with verbatim quotes, minimum 1 buying signal with timestamp, and a 5-item coaching checklist — all rendered in the UI within 45 seconds.
  • Auth: done when Google OAuth login redirects to /dashboard and displays the authenticated user's email, plan tier, and full transcript history with scorecard links.
  • Payment: done when Stripe checkout processes a $29/month subscription, Supabase updates the team's plan tier to Starter, and the user can submit their 6th transcript without hitting the free limit gate within 30 seconds of payment confirmation.
  • Email digest: done when a completed analysis triggers a Resend email to the manager's address within 60 seconds, containing the full scorecard rendered in HTML with speaker labels, talk ratio percentages, objection quotes, and a numbered coaching checklist.

Is it worth building?

$79/month x 40 Growth teams plus $29/month x 30 Starter teams equals $4,030 MRR at month 4. Upsell path to agency white-label at $299/month adds a high-ACV tier that can push MRR past $8k without adding proportional support load.

Unit Economics

CAC: ~$15 via LinkedIn cold outreach (1 hour at founder rate) or $0 via organic Reddit. LTV: $948 (12 months at $79/month Growth plan). Payback: under 1 month. Gross margin: ~90% (Claude API costs approximately $8 per customer per month at average usage of 40 analyses per month).

Business Model

SaaS subscription — $29/month Starter (3 seats, 50 calls/mo), $79/month Growth (10 seats, unlimited calls)

Monetization Path

Free tier: 5 transcript analyses forever, no credit card. Upgrade prompt fires after call 3 via an in-app banner and a Resend drip email at calls 3 and 5. Target 15% free-to-paid conversion. Annual plan discount of 20% offered at checkout to improve cash flow and reduce churn.

Revenue Timeline

First dollar: day 10 when a beta user converts after seeing the free tier limit. $1k MRR: month 2 after ProductHunt launch and LinkedIn outreach convert 15 paying teams. $5k MRR: month 6 after SEO content drives organic signups and the agency white-label tier ships.

Estimated Monthly Cost

Claude API (claude-3-5-sonnet at approximately 3k tokens per call, 500 calls per month): ~$45. Vercel Pro: $20. Supabase Pro: $25. Resend: $10. Sentry: $0 (free tier). Total: ~$100/month at 500 analyses. Scales to ~$200/month at 1,500 analyses.

Profit Potential

Full-time viable at $5k MRR. Infrastructure costs stay under $150/month until 500-plus daily analyses. At $10k MRR with 90% gross margin, net profit exceeds $8,500/month for a solo founder with no employees.

Scalability

High — add Slack digest delivery, CRM push to HubSpot and Salesforce, team leaderboards by talk ratio and objection-handling score, trend dashboards across 30/60/90-day periods, and white-label for sales coaching agencies at $299/month. Multi-tenant architecture in Supabase means onboarding a new agency adds zero infrastructure cost.

Success Metrics

Week 1: 50 signups, 15 analyses run, 3 beta users provide qualitative feedback. Month 2: 20 paying teams, 80% still active, average 8 analyses per team per month. Month 4: $4k MRR, NPS above 40, at least 3 customers refer a peer organically.

Launch & Validation Plan

Day 1–2: post in r/sales asking 'how do you currently review call recordings?' — collect 20-plus replies to validate pain language. Day 3: DM 20 LinkedIn sales managers offering a free analysis of one real transcript with a 24-hour turnaround using a manual Claude prompt. Day 4: build a 3-page landing site with email capture and publish it. Day 5–7: recruit 8 beta testers from respondents before writing any backend code. Validation threshold: 3 of 8 beta testers say they would pay $29/month before MVP ships.

Customer Acquisition Strategy

Week 1: post in r/salestechniques offering free transcript review, DM 20 VP of Sales on LinkedIn with a cold Loom showing a 90-second sample scorecard walkthrough. Week 2–4: onboard beta users, collect testimonials and before/after coaching stories. Month 2: ProductHunt launch with a Maker post explaining the Gong pricing gap, SEO content targeting 'sales call transcript analysis', 'Fireflies transcript review', and 'how to coach sales reps with call recordings'. Month 3: YouTube short showing the Zapier automation from Fireflies to inbox scorecard in under 2 minutes. Ongoing: affiliate program offering sales coaches 20% recurring commission for referrals.

What's the competition?

Competition Level

Medium

Similar Products

Gong.io (enterprise, $1,200/seat/year, requires call recording integration), Chorus.ai (enterprise, similar pricing), Fireflies.ai (records and transcribes but provides no coaching scorecard or manager digest), Salesloft Conversations (mid-market, bundled with cadence tool, not sold standalone) — none purpose-built for SMB managers who already have transcripts and need a $29 coaching layer.

Competitive Advantage

Gong costs $1,200-plus per seat per year and requires full call recording infrastructure. RepLens works on any transcript you already have, costs $29/month for a whole team, and ships a scorecard in 30 seconds — purpose-built for the SMB manager who doesn't need enterprise call recording, just coaching intelligence from the transcripts already sitting in their inbox.

Regulatory Risks

Low — product processes text only, no audio recording or biometric data. Publish a data processing agreement template and a clear data retention policy stating transcripts are deleted after 90 days by default. Ensure GDPR compliance for EU customers by offering data residency disclosure and a one-click data deletion endpoint. Add a consent notice reminding users they are responsible for obtaining call participant consent before uploading transcripts.

What's the roadmap?

Feature Roadmap

V1 (launch): transcript paste and file upload, Claude-powered JSON scorecard, Scorecard UI component, manager email digest via Resend, Zapier webhook endpoint, Google OAuth, Stripe billing with free tier gating at 5 analyses. V2 (month 2-3): HubSpot and Salesforce deal note push via native API integrations, Slack scorecard delivery via Slack app, team leaderboard ranked by talk ratio and objection-handling score, 30/60/90-day trend dashboard per rep. V3 (month 4+): white-label portal for sales coaching agencies at $299/month, bulk CSV upload for analyzing historical call batches, AI-generated rep improvement plan comparing current period to prior period, direct Fireflies and Otter OAuth integration replacing Zapier dependency.

Milestone Plan

Week 1-2: Supabase schema live, Claude analysis route returning validated JSON scorecard, Scorecard.tsx rendering all fields, Google OAuth working, deployed to Vercel — milestone complete when founder analyzes a real transcript end-to-end as a logged-in user. Week 3-4: Stripe billing gating free tier at 5 analyses, Resend email digest live and tested, Zapier webhook endpoint tested with a live Fireflies connection, landing page with pricing published — milestone complete when the first paying stranger completes the full flow without founder assistance. Month 2: 20 paying teams active, Slack delivery shipped, ProductHunt launch executed, SEO content pages published for 3 target keywords — milestone complete when MRR hits $1,000 and weekly new signups exceed 15.

How do you build it?

Tech Stack

Next.js 14 App Router, Claude API (claude-3-5-sonnet), Stripe, Supabase — build with Cursor

Suggested Frameworks

Anthropic SDK, pdf-parse or plain text ingestion, Resend for email delivery, Zod for schema validation, Zapier webhook receiver, Sentry for error tracking

Time to Ship

2 weeks

Required Skills

Claude API prompt engineering for structured JSON output, Next.js file upload handling, Stripe subscription billing with usage gating, Supabase Row Level Security, Resend transactional email templating.

Resources

Anthropic prompt engineering docs and structured output cookbook, Fireflies transcript export format documentation, Stripe subscription billing and metered usage guide, Supabase Row Level Security quickstart, Resend React Email template library, Zapier webhook trigger documentation.

MVP Scope

app/page.tsx (landing page with demo transcript pre-loaded and paste box), app/dashboard/page.tsx (transcript history list with scorecard links), app/api/analyze/route.ts (Claude call with Zod-validated JSON scorecard response), app/api/webhook/route.ts (Zapier trigger endpoint), lib/db.ts (users, teams, transcripts, scorecards Supabase schema), components/Scorecard.tsx (formatted scorecard UI with talk ratio bar, objection list, coaching checklist).

Core User Journey

1. User lands on homepage and sees pre-loaded demo transcript in paste box → 2. User clicks 'Analyze Free' with no signup required → 3. Claude processes transcript and Scorecard.tsx renders talk ratio, objections, buying signals, and coaching checklist within 30 seconds → 4. User clicks 'Save and Sign Up' after seeing value → 5. Google OAuth creates account and redirects to /dashboard showing saved scorecard → 6. User pastes a second real transcript and runs analysis → 7. User hits the 5-analysis free limit and sees upgrade modal → 8. User enters card via Stripe checkout, plan tier updates instantly → 9. Zapier webhook is configured via the Settings page to connect Fireflies → 10. Manager receives automated scorecard email in inbox before next morning standup.

Architecture Pattern

User pastes or uploads a transcript in the Next.js front end, which sends the text to the /api/analyze serverless route; that route calls the Claude API with a strict JSON system prompt, validates the response with Zod, persists the scorecard to Supabase Postgres with RLS, and simultaneously triggers a Resend email to the team manager — Stripe middleware checks the team's plan tier and analysis count before the Claude call executes to enforce usage gating.

Data Model

User has fields: id, email, created_at, google_id. Team has fields: id, name, owner_user_id, plan_tier (free/starter/growth), analysis_count, stripe_customer_id, stripe_subscription_id. TeamMember has fields: id, team_id, user_id, role (owner/member). Transcript has fields: id, team_id, uploaded_by_user_id, raw_text, filename, created_at, status (pending/complete/error). Scorecard has fields: id, transcript_id, talk_ratio (jsonb with per-speaker percentages), objections (jsonb array of objects with quote and timestamp), buying_signals (jsonb array), competitor_mentions (jsonb array), coaching_checklist (jsonb array of 5 items), created_at. Relationship: one Team has many Transcripts; one Transcript has exactly one Scorecard; RLS policies enforce team_id isolation on all tables.

Integration Points

Anthropic Claude API for transcript analysis and structured scorecard generation, Stripe for subscription billing and usage gating, Resend for transactional scorecard email delivery, Supabase for Postgres database and Google OAuth, Zapier webhook receiver for Fireflies and Otter auto-trigger, Sentry for error monitoring on the /api/analyze route, Vercel Edge CDN for static asset delivery.

V1 Scope Boundaries

V1 includes: text transcript paste, .txt and .docx file upload, Claude JSON scorecard generation, Scorecard UI, Google OAuth, Stripe billing with free tier gating, Resend email digest, Zapier webhook endpoint, Supabase persistence with RLS. V1 excludes: audio or video file processing, direct Fireflies or Otter OAuth integration, CRM integrations, Slack delivery, team leaderboards, trend dashboards, mobile app, white-label portal, bulk CSV upload, and rep-facing login or rep-initiated uploads.

Success Definition

A paying sales manager uploads a transcript, receives a scorecard email, uses specific timestamp-backed coaching points in a 1:1 with their rep, and renews their subscription the following month — all without contacting the founder.

Challenges

Distribution is the hard part — sales managers don't browse ProductHunt. First 20 customers must come from cold DMs on LinkedIn to VP of Sales titles at 20–200 person SaaS companies, plus targeted posts in r/sales and r/salestechniques offering free transcript reviews. Retaining customers beyond month 3 requires the product to surface measurable rep improvement over time, which means investing in trend dashboards by month 2 or churn will spike.

Avoid These Pitfalls

Do not let Claude return free-form prose — enforce a strict JSON schema in the system prompt with an example output block and validate every response with Zod before saving; if validation fails, retry once with a 'your previous response was not valid JSON, here is the schema again' correction prompt, otherwise scorecards will be inconsistent and the Scorecard.tsx component will throw rendering errors in production. Do not target enterprise buyers on launch — Gong and Chorus own that space with deep procurement relationships; stay laser-focused on the 10–50 person SaaS company where the sales manager is also doing RevOps and needs a $29 tool that works today, not a $50k contract with a 3-month implementation. Do not skip Supabase RLS verification before launch — test explicitly that user A cannot retrieve user B's transcripts or scorecards via a direct Supabase REST API call with user A's JWT, because a data leak of a customer's sales call content would be an immediate trust-destroying incident.

Security Requirements

All routes require Supabase Auth JWT verification; Google OAuth is the only V1 login method to reduce credential attack surface. Supabase Row Level Security policies restrict all transcript and scorecard reads and writes to the owning team_id, verified by automated tests in CI. Rate limiting of 20 analyses per hour per team is enforced at the /api/analyze route using an in-memory Supabase counter to prevent API cost abuse and denial-of-wallet attacks.

Infrastructure Plan

Next.js app deployed on Vercel with serverless API routes for all backend logic, Supabase hosted Postgres for database and auth with daily automated backups enabled, GitHub Actions CI pipeline running Zod schema unit tests and Supabase RLS integration tests on every pull request before merge, Sentry integrated on /api/analyze specifically to capture Claude timeout and validation failures with full request context for fast debugging.

Performance Targets

Target 200 DAU at month 3. Claude API call must return a complete structured scorecard within 30 seconds for a 10,000-token transcript at the 95th percentile. Dashboard page must load under 2 seconds on a cold Vercel serverless start. Scorecard email must be delivered to inbox within 60 seconds of analysis completion. Vercel Edge CDN serves all static assets with under 100ms TTFB globally.

Go-Live Checklist

  • Claude prompt tested against 10 real diarized transcripts of varying length and format with 100% valid Zod-passing JSON output before deploying.
  • Stripe payment flow tested end-to-end in test mode: free tier blocks submission at call 6, Stripe checkout completes, plan tier updates in Supabase within 5 seconds, and call 6 succeeds immediately after upgrade.
  • Supabase RLS policies verified by a dedicated test script: authenticated user A cannot read, update, or delete any transcript or scorecard belonging to team B using user A's live JWT token.
  • Sentry error tracking live and configured to send a Slack or email alert to the founder within 5 minutes of any unhandled error on the /api/analyze route.
  • Custom domain with SSL certificate provisioned and verified on Vercel (e.g. getreplens.com) with www redirect configured.
  • Privacy policy, terms of service, and 90-day data retention policy published at /privacy and /terms and linked from the landing page footer.
  • Five beta users have completed the full flow — signup, analysis, email receipt, and Stripe upgrade — and confirmed scorecard usefulness in a recorded 10-minute Loom review session.
  • Zapier webhook endpoint tested with a live Fireflies account: new transcript created in Fireflies triggers the Zap, RepLens receives the payload, analysis completes, and scorecard email arrives within 90 seconds.
  • Rollback plan documented and tested: Vercel instant rollback command verified, Supabase point-in-time restore procedure written in the runbook, and a database backup confirmed restorable to a staging environment.
  • ProductHunt launch post drafted and peer-reviewed, LinkedIn cold outreach sequence of 20 VP Sales targets with personalized Loom links queued and ready to send on launch day.

First Run Experience

On first load, a pre-loaded demo transcript of a fictional SaaS discovery call — clearly labeled 'Demo: Acme Corp call with Alex (SDR) and Jamie (Prospect)' — is already in the paste box. The user clicks 'Analyze Free' and sees a fully rendered scorecard with talk ratios, objection quotes, and a 5-item coaching checklist appear in 30 seconds with no signup required. After viewing the result, a modal appears reading 'Sign up free to save this scorecard and analyze 4 more calls — no credit card needed.'

How to build it, step by step

1. Set up the Supabase project, define the full schema in a migration file covering users, teams, team_members, transcripts, and scorecards tables, run the migration, and write RLS policies restricting all access to the owning team_id. 2. Scaffold the Next.js 14 App Router project with Cursor, install dependencies including the Anthropic SDK, Supabase JS client, Stripe, Resend, and Zod, and configure environment variables for all API keys. 3. Build the /api/analyze POST route: accept transcript text in the request body, check the team's plan tier and analysis count in Supabase to enforce the 5-call free limit, call Claude claude-3-5-sonnet with a strict system prompt containing the JSON schema and a filled example, validate the response with a Zod scorecard schema, and persist the scorecard to Supabase on success. 4. Build the Scorecard.tsx component to render the JSON scorecard as a visually structured card with a horizontal talk-ratio bar chart, an objection list with quoted text and timestamps, a buying signals section, a competitor mentions badge row, and a numbered coaching checklist. 5. Build the landing page at app/page.tsx with the pre-loaded demo transcript in the paste box, an 'Analyze Free' button that calls /api/analyze without requiring auth, and a post-result modal prompting signup to save the result. 6. Set up Supabase Google OAuth, build the /auth/callback route, and gate the /dashboard page behind authenticated session middleware that redirects unauthenticated users to the landing page. 7. Build the /dashboard page showing the team's transcript history as a paginated list with status badges and links to individual scorecard views, pulling data from Supabase with RLS-enforced queries. 8. Integrate Stripe: create Starter and Growth subscription products in the Stripe dashboard, build the /api/stripe/checkout route to create a Stripe Checkout session, build the /api/stripe/webhook route to listen for checkout.session.completed and update the team's plan_tier in Supabase, and add the upgrade gate UI to the paste page after call 5. 9. Wire Resend to send a formatted HTML scorecard email to the team owner's address immediately after every successful analysis using a React Email template that mirrors the Scorecard.tsx layout, and build the /api/webhook/zapier POST endpoint that accepts a transcript payload and queues it for analysis using the same /api/analyze logic. 10. Deploy to Vercel, run the full go-live checklist sequentially, verify the end-to-end journey as a brand-new user from landing page through demo analysis through signup through Stripe upgrade through Zapier webhook, then send the first 20 LinkedIn outreach messages with a Loom recording of the live product.

Generated

April 25, 2026

Model

claude-sonnet-4-6

Disclaimer: Ideas on this site are AI-generated and may contain inaccuracies. Revenue estimates, market demand figures, and financial projections are illustrative assumptions only — not financial advice. Do your own research before making any business or investment decisions. Technology availability, pricing, and market conditions change rapidly; always verify details independently.