Claude Prompt Library

30 Claude Prompts That Build Product Dashboards

30 copy-paste prompts

Describe the product metrics you track and Claude returns a working product dashboard as one self-contained HTML file with sample data and charts you can click in the chat. Prompts for activation, retention, funnel, feature usage, roadmap health, and NPS. Not "give me a chart."

In short: This page contains 30 copy-paste ready prompts, organized into 6 categories with a description and pro tip for each. The first 5 prompts are free instantly, no signup needed. Hand-curated and tested by the AI Academy team.

Louis Corneloup
By Louis Corneloup ยท Founder, Techpresso
Last updated ยทHand-curated & tested by the AI Academy team

Activation

5 prompts

Activation Rate Overview

1/30

โœจ What it does

Claude builds an activation-rate dashboard for [PRODUCT] with signup-to-activated, a weekly trend, and a lagging cohort as a working screen you can click in the chat. Click the lagging week, then swap the sample numbers for your event counts.

You are a product analyst who builds activation dashboards a weekly product review can trust. <context> I need an activation-rate dashboard as one self-contained HTML file with inline CSS, vanilla JS, and a CDN chart library, seeded with realistic signup and activation events so I can click the working screen in the chat. </context> <inputs> - Product name: [PRODUCT] - Activation event: [E.G. CREATED FIRST PROJECT] - Date range: [E.G. LAST 8 WEEKS] - Signup source split if useful: [E.G. SELF-SERVE / INVITED] - Target activation rate: [E.G. 40%] </inputs> <task> Build the dashboard with: a header for [PRODUCT]; KPI cards (signups, activated, activation rate versus the target, median hours to activate); a weekly line of activation rate versus the target; a bar of activation by signup source; a cohort table (week, signups, activated, rate); and a lagging-week callout. Keep events in labeled JS constants and compute every rate from those rows. </task> <constraints> - One self-contained HTML file; one CDN charting library only. - All data in labeled JS constants at the top so I can swap in my own. - Below-target weeks flagged. Responsive grid, accessible contrast, no lorem ipsum. - Do not invent a live analytics API. Sample data only, with a note on where an event export would go. </constraints> <format> Return the full HTML as an artifact, then list which constants to replace and how activation rate is calculated. </format>

๐Ÿ’ก

Pro tip: Name the one event that means activated. A signup-only board will call every account a win.

Time to First Value

2/30

โœจ What it does

Claude builds a time-to-first-value board for [ACTIVATION EVENT] with median hours, a histogram, and a slow-start list as a working screen you can click in the chat. Open the slow-start rows, then swap the sample numbers for your timestamps.

You are a product analyst who builds time-to-value boards that show how long new users wait for the first win. <context> I need a time-to-first-value dashboard as one self-contained HTML file with inline CSS, vanilla JS, and a CDN chart library, seeded with realistic signup and first-value timestamps so I can click the working screen in the chat. </context> <inputs> - First-value event: [ACTIVATION EVENT] - Product name: [PRODUCT] - Target hours to value: [E.G. 24 HOURS] - Date range: [E.G. LAST 30 DAYS] - Segments if useful: [E.G. PLAN OR DEVICE] </inputs> <task> Build the dashboard with: a header naming [ACTIVATION EVENT]; KPI cards (median hours, p90 hours, percent inside the target, still waiting); a histogram of hours to first value; a line of weekly median; a segment table if I gave segments; and a slow-start list (user or account id, hours since signup, last step). Compute hours from signup-at and first-value-at in the sample array. Still-waiting rows use a now constant I can edit. </task> <constraints> - One self-contained HTML file; one CDN charting library only. - All timestamps in labeled JS constants at the top. - Over-target rows amber or red. Accessible contrast. - Do not invent session replay. Times and counts only. </constraints> <format> Return the full HTML as an artifact, then write the hours formula and which array to replace with an event export. </format>

๐Ÿ’ก

Pro tip: Stamp signup and the first-value event as two times. One activation percent hides a three-day wait.

Onboarding Step Drop

3/30

โœจ What it does

Claude builds an onboarding drop board for [ONBOARDING STEPS] with step counts, leak size, and a stuck-user list as a working screen you can click in the chat. Click the leak step, then swap the sample numbers for your real step counts.

You are an onboarding analyst who builds step-drop boards that name the screen where new users stall. <context> I need an onboarding step-drop dashboard as one self-contained HTML file with inline CSS, vanilla JS, and a CDN chart library, seeded with realistic step counts so I can click the working screen in the chat. </context> <inputs> - Onboarding steps in order: [ONBOARDING STEPS] - Product name: [PRODUCT] - Period: [E.G. LAST 30 DAYS OF SIGNUPS] - Definition of completed: [ONE LINE] - Optional split: [E.G. MOBILE VS DESKTOP OR "NONE"] </inputs> <task> Build the dashboard with: a header for [PRODUCT]; KPI cards (started, completed, completion rate, biggest leak); a horizontal step chart using [ONBOARDING STEPS] with count and drop from the prior step; a bar of leak size; a stuck-user table (id, last completed step, hours since last step); and a one-line hypothesis on the leak labeled as a hypothesis. Compute every drop from the step counts. Clicking a step filters the stuck list. </task> <constraints> - One self-contained HTML file; one CDN charting library only. - Step counts and stuck rows in labeled JS constants at the top. - Largest leak flagged. Accessible contrast. - Do not invent survey quotes. Counts and last-step only. </constraints> <format> Return the full HTML as an artifact, then explain drop math and which constants to replace with a step export. </format>

๐Ÿ’ก

Pro tip: Keep the list to the five actions a new user really takes. Extra micro-steps make every leak look tiny.

New User Day 0 to 7

4/30

โœจ What it does

Claude builds a day-0 to day-7 activation board for [COHORT WINDOW] with daily rates, a curve, and a missed-value list as a working screen you can click in the chat. Scan the day-2 dip, then swap the sample numbers for your new-user events.

You are a product analyst who reads new-user activation as a day-0 to day-7 curve, not a single lifetime rate. <context> I need a new-user day-0 to day-7 dashboard as one self-contained HTML file with inline CSS, vanilla JS, and a CDN chart library, seeded with realistic daily activation so I can click the working screen in the chat. </context> <inputs> - Cohort window: [COHORT WINDOW] - Product name: [PRODUCT] - Activation event: [E.G. FIRST VALUE] - Number of signup days to show: [E.G. LAST 14 START DAYS] - Day-7 target: [E.G. 35%] </inputs> <task> Build the dashboard with: a header for [COHORT WINDOW]; KPI cards (newest cohort size, day-1 rate, day-7 rate, percent of cohorts below target); a curve of share activated by day 0 through day 7; a heatmap of start-day versus day-n; a table of start days with remaining unactivated; and a missed-value list for the newest cohort. Compute day-n rates from users who reached the event by that day. Selecting a start day filters the list. </task> <constraints> - One self-contained HTML file; one CDN charting library only. - User rows or a day matrix in labeled JS constants at the top. - Below-target day-7 cells flagged. Accessible contrast. - Do not invent revenue. Activation only. </constraints> <format> Return the full HTML as an artifact, then explain day-n math and which array to replace with a signup export. </format>

๐Ÿ’ก

Pro tip: Measure from signup day, not calendar week. A Monday signup and a Sunday signup are not the same day 2.

Setup Checklist Board

5/30

โœจ What it does

Claude builds a setup-completion dashboard for [SETUP CHECKLIST] with percent done, missing steps, and a blocked-account list as a working screen you can click in the chat. Open a blocked account, then swap the sample numbers for your checklist export.

You are a product analyst who builds setup-checklist boards that show which required step is blocking first value. <context> I need a setup-completion dashboard as one self-contained HTML file with inline CSS, vanilla JS, and a CDN chart library, seeded with realistic account checklists so I can click the working screen in the chat. </context> <inputs> - Required setup steps: [SETUP CHECKLIST] - Product name: [PRODUCT] - Optional steps if any: [LIST OR "NONE"] - Period: [E.G. ACCOUNTS CREATED LAST 30 DAYS] - Blocked means: [E.G. MISSING ANY REQUIRED STEP AFTER 48H] </inputs> <task> Build the dashboard with: a header for [PRODUCT]; KPI cards (accounts, fully set up, percent complete, blocked now); a bar of completion by step using [SETUP CHECKLIST]; a stacked view of required versus optional; a blocked-account table (account, missing required steps, hours since create, owner if given); and a filter for missing step. Compute percent complete as required steps done over required steps. Optional steps do not count toward done. </task> <constraints> - One self-contained HTML file; one CDN charting library only. - Accounts and step flags in labeled JS constants at the top. - Blocked rows red. Filters must hide rows. Accessible contrast. - Do not invent billing holds. Setup steps only. </constraints> <format> Return the full HTML as an artifact, then write the complete and blocked rules and which array to replace. </format>

๐Ÿ’ก

Pro tip: Lead with the required steps that unlock the product. Optional polish items will make a half-setup account look finished.

Retention

5 prompts

Cohort Retention Heatmap

6/30

โœจ What it does

Claude builds a cohort retention heatmap for [PRODUCT] with week-0 to week-N cells, overlaid curves, and a newest-versus-oldest callout as a working screen you can click in the chat. Hover two cohorts, then swap the sample numbers for your cohort table.

You are a retention analyst who builds cohort heatmaps a product team can read in a Monday review. <context> I need a cohort retention dashboard as one self-contained HTML file with inline CSS, vanilla JS, and a CDN chart library, seeded with realistic decaying cohorts so I can click the working screen in the chat. </context> <inputs> - Product name: [PRODUCT] - Cohort grouping: [E.G. SIGNUP WEEK] - Retention window: [E.G. WEEKS 0-8] - Metric: [E.G. % STILL ACTIVE OR % STILL PAYING] - Number of cohorts: [E.G. LAST 8] </inputs> <task> Build the dashboard with: a header for [PRODUCT] and the metric; KPI cards (newest cohort size, week-1 rate, week-4 rate, estimated steady cell); a shaded heatmap (rows are cohorts, columns are periods, cells show percent); a line chart overlaying cohort curves; and a newest-versus-oldest callout. Generate decaying-but-plausible percents in labeled JS constants. Cell click lists that cohort's period value. Color plus the number so the map is not color-only. </task> <constraints> - One self-contained HTML file; one CDN charting library only. - Cohort matrix in labeled JS constants at the top. - Newest row first. Accessible contrast. - Do not invent revenue if I asked for active retention. Label the metric on the page. </constraints> <format> Return the full HTML as an artifact, then explain how to paste a real cohort matrix over the constants. </format>

๐Ÿ’ก

Pro tip: Say whether a cell means still active or still paying. The same heatmap lies if those two are mixed.

D1 D7 D30 Retention

7/30

โœจ What it does

Claude builds a D1 D7 D30 retention board for [RETENTION WINDOWS] with rates, a trend, and a falling window as a working screen you can click in the chat. Check the falling window, then swap the sample numbers for your returning-user counts.

You are a retention analyst who treats D1, D7, and D30 as three separate clocks. <context> I need a D1 D7 D30 retention dashboard as one self-contained HTML file with inline CSS, vanilla JS, and a CDN chart library, seeded with realistic returning-user counts so I can click the working screen in the chat. </context> <inputs> - Windows to show: [RETENTION WINDOWS] - Product name: [PRODUCT] - Qualifying start event: [E.G. SIGNUP OR FIRST SESSION] - Date range of start days: [E.G. LAST 45 DAYS] - Targets per window: [E.G. D1 30%, D7 18%, D30 12%] </inputs> <task> Build the dashboard with: KPI cards for each window versus its target; a triple line of D1, D7, and D30 over start days; a table (start day, starts, returned D1, D7, D30, rates); and a falling-window callout that names which clock dropped most versus the prior four starts. Compute each rate as returned in that window over starts that have aged enough. Starts too new for D30 show as pending, not zero. </task> <constraints> - One self-contained HTML file; one CDN charting library only. - Start-day rows in labeled JS constants at the top. - Pending cells labeled pending. Accessible contrast. - Do not invent platform benchmarks I did not give. </constraints> <format> Return the full HTML as an artifact, then write the aged-enough rule and which array to replace. </format>

๐Ÿ’ก

Pro tip: Keep D1, D7, and D30 as three clocks. Blending them into one retained this month number hides which clock broke.

Churn Risk Watchlist

8/30

โœจ What it does

Claude builds a churn-risk watchlist for [CHURN SIGNALS] with a computed score, aging silence, and an at-risk table as a working screen you can click in the chat. Sort the reddest accounts, then swap the sample numbers for your usage and ticket rows.

You are a retention analyst who builds churn-risk watchlists from usage and silence, not a vibe score. <context> I need a churn-risk dashboard as one self-contained HTML file with inline CSS, vanilla JS, and a CDN chart library, seeded with realistic accounts so I can click the working screen in the chat. </context> <inputs> - Signals to score: [CHURN SIGNALS] - Product name: [PRODUCT] - Weights per signal: [E.G. USAGE 40, LOGIN GAP 30, TICKETS 20, NPS 10] - At-risk threshold: [E.G. SCORE OVER 60] - Accounts to list: [E.G. 20 SAMPLE ACCOUNTS] </inputs> <task> Build the dashboard with: KPI cards (accounts scored, at risk, median score, newly silent); a score histogram; a sortable watchlist (account, plan, last active, each signal, computed score, status); and a signal-weight note on the page. Compute the score in JS from my weights and normalized signal values. Filter chips: at risk / all. Selecting an account shows the signal breakdown. </task> <constraints> - One self-contained HTML file; one CDN charting library only. - Accounts, signals, and weights in labeled JS constants at the top. - Show the formula. Accessible contrast, not color-only. - Do not invent cancel dates or save-offer copy. Risk score only. </constraints> <format> Return the full HTML as an artifact, then write the score formula and which arrays to replace. </format>

๐Ÿ’ก

Pro tip: Weight the signal that actually precedes cancel in your product. Equal weights turn the score into a mood ring.

Stickiness DAU WAU MAU

9/30

โœจ What it does

Claude builds a stickiness dashboard for [STICKINESS TARGET] with DAU, WAU, MAU, and DAU/MAU as a working screen you can click in the chat. Read the stickiness line, then swap the sample numbers for your active-user series.

You are a product analyst who builds stickiness dashboards from DAU, WAU, and MAU, not a vanity active total. <context> I need a stickiness dashboard as one self-contained HTML file with inline CSS, vanilla JS, and a CDN chart library, seeded with realistic daily actives so I can click the working screen in the chat. </context> <inputs> - Stickiness target: [STICKINESS TARGET] - Product name: [PRODUCT] - Active definition: [E.G. COMPLETED CORE EVENT] - Date range: [E.G. LAST 90 DAYS] - Optional split: [E.G. PLATFORM OR PLAN] </inputs> <task> Build the dashboard with: KPI cards (latest DAU, WAU, MAU, DAU/MAU versus [STICKINESS TARGET]); a dual line of DAU and MAU; a stickiness line (DAU/MAU) with the target; a WAU/MAU secondary if space; and a table of weeks with those four numbers. Compute WAU and MAU from the daily active series using rolling 7-day and 28-day unique counts in the sample, or from pre-aggregated columns if I supply those. Label which method you used. </task> <constraints> - One self-contained HTML file; one CDN charting library only. - Daily series in labeled JS constants at the top. - Below-target stickiness flagged. Accessible contrast. - Do not invent a second activity definition. One rule on the page. </constraints> <format> Return the full HTML as an artifact, then explain DAU/WAU/MAU math and which series to replace. </format>

๐Ÿ’ก

Pro tip: Define active as the same event you use in activation. A login-based DAU will not match a project-based activation story.

Revenue Retention Board

10/30

โœจ What it does

Claude builds a revenue-retention board for [PLAN OR SEGMENT] with GRR, NRR, expansion, and contraction as a working screen you can click in the chat. Open the contraction slice, then swap the sample numbers for your MRR movements.

You are a product-finance analyst who builds revenue-retention boards a founder can defend. <context> I need a GRR and NRR dashboard as one self-contained HTML file with inline CSS, vanilla JS, and a CDN chart library, seeded with realistic MRR movements so I can click the working screen in the chat. </context> <inputs> - Plan or segment to lead with: [PLAN OR SEGMENT] - Other segments: [LIST OR "ALL"] - Months: [E.G. LAST 12] - Currency: [E.G. USD] - Starting MRR by segment: [OR "INVENT PLAUSIBLE"] </inputs> <task> Build the dashboard with: a segment filter defaulting to [PLAN OR SEGMENT]; KPI cards (opening MRR, GRR, NRR, expansion, contraction, churned MRR); a waterfall or stacked bar of movements by month; a GRR versus NRR line; and a table (month, open, new, expand, contract, churn, close, GRR, NRR). Compute GRR as (open + expand - contract - churn) / open, excluding new logos from the numerator. Compute NRR as (open + expand - contract - churn) / open, still excluding new. Show both formulas on the page. </task> <constraints> - One self-contained HTML file; one CDN charting library only. - Monthly movements in labeled JS constants at the top. - Currency labeled. Accessible contrast. - Do not invent tax or FX. MRR math only. </constraints> <format> Return the full HTML as an artifact, then write GRR and NRR in one paragraph and which array to replace. </format>

๐Ÿ’ก

Pro tip: Split expansion from new logos. NRR that swallows new MRR will hide a shrinking base.

Funnel

5 prompts

Signup to Activated Funnel

11/30

โœจ What it does

Claude builds a signup-to-activated funnel for [FUNNEL STEPS] with step-to-step rates and a biggest-leak callout as a working screen you can click in the chat. Click the leak, then swap the sample numbers for your product event counts.

You are a product conversion analyst who builds signup-to-activated funnels from product events. <context> I need a signup-to-activated funnel dashboard as one self-contained HTML file with inline CSS, vanilla JS, and a CDN chart library, seeded with realistic step counts so I can click the working screen in the chat. </context> <inputs> - Funnel steps in order: [FUNNEL STEPS] - Product name: [PRODUCT] - Period: [E.G. LAST 8 WEEKS] - Activation definition: [ONE LINE] - Optional weekly series: [YES / INVENT] </inputs> <task> Build the dashboard with: a header for [PRODUCT]; a horizontal funnel using [FUNNEL STEPS] with count and step-to-step rate; KPI cards (started, activated, overall rate, biggest leak); a weekly overall-rate line; a step table (count, from previous, from top); and a leak callout. Compute every rate from the counts. Flag the largest drop. </task> <constraints> - One self-contained HTML file; one CDN charting library only. - Step counts in labeled JS constants at the top. - Largest drop visually flagged. Accessible contrast. - Do not invent marketing spend. Product events only. </constraints> <format> Return the full HTML as an artifact, then point out which drop to investigate first and how to paste real step counts. </format>

๐Ÿ’ก

Pro tip: List the steps in the order they happen in the product. A pretty funnel on the wrong sequence points at the wrong leak.

Feature Adoption Funnel

12/30

โœจ What it does

Claude builds an in-app feature funnel for [FEATURE NAME] from first seen to repeat use as a working screen you can click in the chat. Toggle a step, then swap the sample numbers for your feature events.

You are a product analyst who builds feature-adoption funnels that end on repeat use, not a first click. <context> I need a feature adoption funnel as one self-contained HTML file with inline CSS, vanilla JS, and a CDN chart library, seeded with realistic feature events so I can click the working screen in the chat. </context> <inputs> - Feature name: [FEATURE NAME] - Steps in order: [E.G. EXPOSED, CLICKED, COMPLETED, USED AGAIN IN 7 DAYS] - Eligible users: [E.G. ACCOUNTS ON A PLAN THAT HAS THE FEATURE] - Period: [E.G. LAST 30 DAYS] - Repeat rule: [E.G. 2+ USES IN 7 DAYS] </inputs> <task> Build the dashboard with: a header for [FEATURE NAME]; KPI cards (exposed, completed, repeat users, repeat rate); a funnel of the steps; a bar of drop at each step; a weekly exposure-to-repeat line; and a table of eligible users still stuck before repeat. Compute rates from counts. Show the repeat rule on the page. Clicking a step lists sample stuck users. </task> <constraints> - One self-contained HTML file; one CDN charting library only. - Event counts and a small stuck list in labeled JS constants. - Repeat is not the same as first click. Accessible contrast. - Do not invent a second feature. One feature only. </constraints> <format> Return the full HTML as an artifact, then explain the repeat rule and which constants to replace. </format>

๐Ÿ’ก

Pro tip: End on repeat use, not first click. A tour that everyone opens once is not adoption.

Trial to Paid Funnel

13/30

โœจ What it does

Claude builds a trial-to-paid product funnel for [TRIAL LENGTH] with activation, conversion, and a days-left risk list as a working screen you can click in the chat. Open the days-left list, then swap the sample numbers for your trial starts.

You are a product-led growth analyst who builds trial-to-paid funnels a founder can run before the trial clock ends. <context> I need a trial-to-paid dashboard as one self-contained HTML file with inline CSS, vanilla JS, and a CDN chart library, seeded with realistic trial rows so I can click the working screen in the chat. </context> <inputs> - Trial length: [TRIAL LENGTH] - Product name: [PRODUCT] - Steps: [E.G. TRIAL START, ACTIVATED, HIT PAYWALL, PAID] - Activation event: [E.G. FIRST VALUE] - Period: [E.G. TRIALS STARTED LAST 45 DAYS] </inputs> <task> Build the dashboard with: KPI cards (trials, activated, paid, convert rate, activated-but-unpaid); a funnel of the steps; a convert-by-start-week line; a days-left risk list of open trials (id, day of trial, activated yes/no, hours since last use); and a table of ended trials with convert or expire. Compute remaining days from start date, [TRIAL LENGTH], and a now constant. Filter: open / converted / expired. </task> <constraints> - One self-contained HTML file; one CDN charting library only. - Trial rows in labeled JS constants at the top. - Unactivated open trials flagged. Accessible contrast. - Do not invent discount copy or card-on-file facts I did not give. </constraints> <format> Return the full HTML as an artifact, then explain remaining-day math and which array to replace. </format>

๐Ÿ’ก

Pro tip: Put activation on the board next to convert. Trials that never start the product are a different leak from trials that start and still leave.

Plan Upgrade Funnel

14/30

โœจ What it does

Claude builds an upgrade funnel for [PLAN TIERS] with step counts, drop-off, and a stalled-workspace list as a working screen you can click in the chat. Filter a tier, then swap the sample numbers for your plan-change events.

You are a product monetization analyst who builds upgrade funnels from in-product plan changes. <context> I need a plan-upgrade funnel dashboard as one self-contained HTML file with inline CSS, vanilla JS, and a CDN chart library, seeded with realistic plan-change events so I can click the working screen in the chat. </context> <inputs> - Plan tiers in order: [PLAN TIERS] - Intent start: [E.G. HIT LIMIT / OPENED BILLING / CLICKED UPGRADE] - Later steps: [E.G. VIEWED PLANS, STARTED CHECKOUT, PAID] - Period: [E.G. LAST 60 DAYS] - Product name: [PRODUCT] </inputs> <task> Build the dashboard with: a header for [PRODUCT]; a funnel from intent through paid; KPI cards (intents, upgrades, upgrade rate, stalled in checkout); a from-tier to-tier matrix using [PLAN TIERS]; a stalled-workspace list (workspace, current plan, last step, days since intent); and a weekly upgrade-rate line. Compute rates from event counts. A from-tier filter updates the funnel. </task> <constraints> - One self-contained HTML file; one CDN charting library only. - Events and workspaces in labeled JS constants at the top. - Stalled means intent without paid inside an editable day window. Accessible contrast. - Do not invent list prices I did not give. Mark missing prices as [VERIFY]. </constraints> <format> Return the full HTML as an artifact, then explain stall math and which arrays to replace. </format>

๐Ÿ’ก

Pro tip: Start the funnel at the first upgrade intent (billing page or limit hit), not at every free account. Otherwise the leak is fake.

Segment Funnel Compare

15/30

โœจ What it does

Claude builds a two-segment product funnel compare for [SEGMENT A] next to [SEGMENT B] with deltas at each step as a working screen you can click in the chat. Toggle both segments, then swap the sample numbers for each segment's counts.

You are a product conversion analyst who compares the same in-product funnel across two segments. <context> I need a two-segment product funnel comparison as one self-contained HTML file with inline CSS, vanilla JS, and a CDN chart library, seeded with two realistic series so I can click the working screen in the chat. </context> <inputs> - Funnel steps in order: [4-7 STEPS] - Segment A: [SEGMENT A] - Segment B: [SEGMENT B] - Period: [E.G. THIS QUARTER] - Product name: [PRODUCT] </inputs> <task> Build the dashboard with: a header and a control that focuses [SEGMENT A], [SEGMENT B], or both; side-by-side funnels or a grouped bar per step; a comparison table with counts, step-to-step rates, and a delta column; a line of overall conversion for each segment over time; and a callout of the step where the two segments diverge most. Generate sample data for both segments in labeled JS constants and compute rates and deltas. The control must update the focused view without a reload. </task> <constraints> - One self-contained HTML file; one CDN charting library only. - Both segment series in labeled JS constants at the top. - Largest gap flagged. Accessible contrast. - Do not invent a third segment. </constraints> <format> Return the full HTML as an artifact, then explain the delta math and where to paste both segment counts. </format>

๐Ÿ’ก

Pro tip: Compare two segments you can change (plan, platform, cohort). A compare nobody can act on is a trivia chart.

These prompts give you the what. Tutorials give you the why.

Learn when to use extended thinking, how to build Claude Projects, and workflows that compound. 300+ tutorials and growing.

Try AI Academy Free

Feature Usage

5 prompts

Feature Adoption Scorecard

16/30

โœจ What it does

Claude builds a feature-adoption scorecard for [FEATURE LIST] with reach, frequency, and a laggard bar as a working screen you can click in the chat. Rank the laggard, then swap the sample numbers for your event totals.

You are a product analyst who ranks features by reach and frequency, not raw event volume. <context> I need a feature-adoption scorecard as one self-contained HTML file with inline CSS, vanilla JS, and a CDN chart library, seeded with realistic feature totals so I can click the working screen in the chat. </context> <inputs> - Features to score: [FEATURE LIST] - Product name: [PRODUCT] - Period: [E.G. LAST 30 DAYS] - Eligible users: [COUNT OR "INVENT"] - Adoption target: [E.G. 25% REACH] </inputs> <task> Build the dashboard with: a header for [PRODUCT]; KPI cards (features tracked, features at target, median reach, median weekly frequency); a horizontal bar of reach by feature; a scatter or grouped view of reach versus frequency; a scorecard table (feature, unique users, reach %, events, events per user, versus target); and a laggard callout. Compute reach as unique users over eligible. Clicking a feature shows a tiny weekly sparkline from sample series. </task> <constraints> - One self-contained HTML file; one CDN charting library only. - Feature rows in labeled JS constants at the top. - Below-target features flagged. Sortable table. Accessible contrast. - Do not invent revenue per feature. </constraints> <format> Return the full HTML as an artifact, then write the reach formula and which array to replace. </format>

๐Ÿ’ก

Pro tip: Reach is unique users, not event volume. A noisy feature used by three power users will look huge on raw counts.

Feature Frequency Board

17/30

โœจ What it does

Claude builds a usage-frequency board for [FEATURE NAME] with weekly repeats, power users, and a one-and-done pile as a working screen you can click in the chat. Open the one-and-done pile, then swap the sample numbers for your event log.

You are a product analyst who reads feature health as frequency, not a single adoption percent. <context> I need a feature-frequency dashboard as one self-contained HTML file with inline CSS, vanilla JS, and a CDN chart library, seeded with realistic per-user event counts so I can click the working screen in the chat. </context> <inputs> - Feature name: [FEATURE NAME] - Period: [E.G. LAST 4 WEEKS] - Frequency buckets: [E.G. 1, 2-4, 5-10, 11+] - Power-user rule: [E.G. 11+ IN THE PERIOD] - Product name: [PRODUCT] </inputs> <task> Build the dashboard with: a header for [FEATURE NAME]; KPI cards (users, median uses, power users, one-and-done share); a histogram of uses per user using the buckets; a weekly repeat line (users with 2+ that week); a power-user table; and a one-and-done list (id, first use date, no second use). Compute buckets from a per-user count array. Bucket chips filter the lists. </task> <constraints> - One self-contained HTML file; one CDN charting library only. - Per-user counts in labeled JS constants at the top. - One-and-done is exactly one use in the period. Accessible contrast. - Do not invent session length. </constraints> <format> Return the full HTML as an artifact, then explain bucket rules and which array to replace with an event log rollup. </format>

๐Ÿ’ก

Pro tip: Split one-and-done from weekly regulars. Average uses per user hides both groups in the middle.

Power Versus Casual Split

18/30

โœจ What it does

Claude builds a power-versus-casual usage split for [USAGE TIERS] with share, features, and a migration list as a working screen you can click in the chat. Click a tier, then swap the sample numbers for your usage buckets.

You are a product analyst who splits the base into usage tiers a roadmap conversation can share. <context> I need a power-versus-casual dashboard as one self-contained HTML file with inline CSS, vanilla JS, and a CDN chart library, seeded with realistic user tiers so I can click the working screen in the chat. </context> <inputs> - Usage tiers and rules: [USAGE TIERS] - Product name: [PRODUCT] - Period: [E.G. LAST 28 DAYS] - Features to compare across tiers: [3-6 FEATURES] - Migration window: [E.G. PRIOR 28 DAYS] </inputs> <task> Build the dashboard with: KPI cards (users per tier, share of events from power, casual share); a stacked share bar over weeks; a feature-reach table by tier; a migration matrix (prior tier to current tier); and a migration list of users who dropped a tier. Compute tiers in JS from a usage score or event count using my rules. Clicking a tier filters the feature table and the list. </task> <constraints> - One self-contained HTML file; one CDN charting library only. - Users and rules in labeled JS constants at the top. - Show the tier rules on the page. Accessible contrast. - Do not rank people as good or bad. Counts only. </constraints> <format> Return the full HTML as an artifact, then write the tier rules in comments and which array to replace. </format>

๐Ÿ’ก

Pro tip: Define tiers with the same event you already report. A new power score nobody else uses will not survive the review.

Feature Retention Board

19/30

โœจ What it does

Claude builds a feature-retention board for [FEATURE NAME] showing who still uses it after week 2 as a working screen you can click in the chat. Read the fade, then swap the sample numbers for your repeat-use events.

You are a product analyst who measures whether a feature still gets used after the first week, not whether it was clicked once. <context> I need a feature-retention dashboard as one self-contained HTML file with inline CSS, vanilla JS, and a CDN chart library, seeded with realistic first-use cohorts so I can click the working screen in the chat. </context> <inputs> - Feature name: [FEATURE NAME] - First-use cohort grain: [E.G. WEEK OF FIRST USE] - Retention windows: [E.G. WEEK 1, WEEK 2, WEEK 4] - Used again means: [E.G. 1+ EVENT IN THAT WEEK] - Product name: [PRODUCT] </inputs> <task> Build the dashboard with: a header for [FEATURE NAME]; KPI cards (first-time users, week-2 retained, week-4 retained, fade from week 1 to week 2); a cohort heatmap of feature retention; a curve overlay; and a faded-user list from the newest cohort (id, first use, last use, weeks since last). Compute retained as users with a use in that window after first use. Show the used-again rule on the page. </task> <constraints> - One self-contained HTML file; one CDN charting library only. - First-use rows in labeled JS constants at the top. - Color plus percent labels. Accessible contrast. - Do not mix this with account-level retention. Feature only. </constraints> <format> Return the full HTML as an artifact, then explain first-use cohort math and which array to replace. </format>

๐Ÿ’ก

Pro tip: Start the clock on first use of that feature, not on signup. Signup-based feature retention mixes never-tried with tried-and-quit.

Unused Feature Graveyard

20/30

โœจ What it does

Claude builds an unused-feature graveyard for [FEATURE SET] with reach near zero, last used, and a kill-or-teach list as a working screen you can click in the chat. Sort by last used, then swap the sample numbers for your feature reach.

You are a product analyst who builds unused-feature boards that force a teach, hide, or kill decision. <context> I need an unused-feature graveyard dashboard as one self-contained HTML file with inline CSS, vanilla JS, and a CDN chart library, seeded with realistic feature reach so I can click the working screen in the chat. </context> <inputs> - Features in the set: [FEATURE SET] - Unused rule: [E.G. REACH UNDER 5% AND LAST USE OVER 30 DAYS] - Eligible users: [COUNT] - Ship dates if known: [OR "UNKNOWN"] - Product name: [PRODUCT] </inputs> <task> Build the dashboard with: KPI cards (features in set, unused now, median reach, features never used in 30 days); a reach bar sorted lowest first; a table (feature, unique users, reach, last use, days since last use, shipped, suggested action teach/hide/kill from simple rules); and a kill-or-teach list. Compute unused from my rule. Features shipped under 30 days ago get a too-new tag, not unused. Action rules live in editable constants. </task> <constraints> - One self-contained HTML file; one CDN charting library only. - Feature rows in labeled JS constants at the top. - Suggested actions are rules I can edit, not a strategy memo. - Accessible contrast. Sort default: reach ascending. </constraints> <format> Return the full HTML as an artifact, then list the unused and too-new rules and which array to replace. </format>

๐Ÿ’ก

Pro tip: Age from last use by any eligible account, not last ship date. A new feature with zero reach is a teach job, not a graveyard yet.

Roadmap

5 prompts

Roadmap Health Overview

21/30

โœจ What it does

Claude builds a roadmap-health overview for [QUARTER OR CYCLE] with on-track, slipped, and blocked initiatives as a working screen you can click in the chat. Open a slipped card, then swap the sample numbers for your issue tracker.

You are a product operations analyst who builds roadmap-health boards a weekly product review can trust. <context> I need a roadmap health dashboard as one self-contained HTML file with inline CSS, vanilla JS, and a CDN chart library, seeded with realistic initiatives so I can click the working screen in the chat. </context> <inputs> - Quarter or cycle: [QUARTER OR CYCLE] - Initiatives: [6-12 NAMES OR "INVENT REALISTIC ONES"] - Statuses: [ON TRACK, AT RISK, SLIPPED, BLOCKED, SHIPPED] - Owners: [NAMES OR SQUADS] - Promised dates: [OR ASK CLAUDE TO INVENT A CONSISTENT SET] </inputs> <task> Build the dashboard with: a header for [QUARTER OR CYCLE]; KPI cards (initiatives, on track, slipped, blocked); a status donut; a swim-lane or card board by status with owner and promised date; a table (name, status, owner, promised, days to date, last update); and a slipped-plus-blocked watchlist. Compute days to promised from a today constant. Status chips filter the board and table. Clicking a card opens the row. </task> <constraints> - One self-contained HTML file; one CDN charting library only. - Initiatives in labeled JS constants at the top. - Slipped and blocked visually loud. Accessible contrast. - Do not invent customer quotes. Dates and status only. </constraints> <format> Return the full HTML as an artifact, then explain days-to-date math and which array to replace with a tracker export. </format>

๐Ÿ’ก

Pro tip: Status from the date you promised, not from how busy the team feels. A green board with a slipped ship date is a lie.

Delivery Confidence Board

22/30

โœจ What it does

Claude builds a delivery-confidence board for [INITIATIVES] with confidence scores, remaining work, and a ship-risk list as a working screen you can click in the chat. Sort by ship risk, then swap the sample numbers for your remaining points.

You are a product operations analyst who builds delivery-confidence boards from remaining work and the calendar, not a gut emoji. <context> I need a delivery-confidence dashboard as one self-contained HTML file with inline CSS, vanilla JS, and a CDN chart library, seeded with realistic remaining work so I can click the working screen in the chat. </context> <inputs> - Initiatives: [INITIATIVES] - Remaining work unit: [E.G. POINTS / DAYS] - Weekly throughput: [NUMBER OR "INVENT PLAUSIBLE"] - Target ship dates: [PER INITIATIVE] - Confidence bands: [E.G. HIGH OVER 80, MED 50-80, LOW UNDER 50] </inputs> <task> Build the dashboard with: KPI cards (initiatives, low confidence, weeks of work left, first miss); a confidence bar per initiative; a remaining-versus-capacity view; a table (initiative, remaining, throughput, weeks needed, weeks left, confidence 0-100, band); and a ship-risk list where weeks needed exceed weeks left. Compute weeks needed as remaining / throughput. Compute confidence from that gap using a commented formula. Sort default: lowest confidence first. </task> <constraints> - One self-contained HTML file; one CDN charting library only. - Remaining work and dates in labeled JS constants at the top. - Show the formula. Accessible contrast. - Do not invent hiring. Show the gap only. </constraints> <format> Return the full HTML as an artifact, then write the confidence formula and which constants to replace. </format>

๐Ÿ’ก

Pro tip: Confidence is remaining work versus calendar, not a gut emoji. Put both numbers on the card.

Outcome Versus Output

23/30

โœจ What it does

Claude builds an outcome-versus-output tracker for [OUTCOME METRIC] with shipped work versus the metric move as a working screen you can click in the chat. Read the metric that did not move, then swap the sample numbers for your outcome series and ship log.

You are a product analyst who puts shipped work next to the outcome it was supposed to move. <context> I need an outcome-versus-output dashboard as one self-contained HTML file with inline CSS, vanilla JS, and a CDN chart library, seeded with a realistic metric series and ship log so I can click the working screen in the chat. </context> <inputs> - Outcome metric: [OUTCOME METRIC] - Target or direction: [E.G. RAISE ACTIVATION TO 40%] - Weeks: [E.G. LAST 12] - Shipped items: [8-15 NAMES WITH WEEK SHIPPED OR "INVENT"] - Product name: [PRODUCT] </inputs> <task> Build the dashboard with: a header naming [OUTCOME METRIC]; KPI cards (latest value, change since first ship in range, ships this cycle, weeks the metric moved the wrong way); a line of the outcome with ship markers; a ship table (name, week, owner, intended effect in my words if given); and a callout of ships that landed in a flat or falling window. Keep the metric series and the ship log in separate labeled constants. Markers must be clickable and highlight the row. </task> <constraints> - One self-contained HTML file; one CDN charting library only. - Do not claim a ship caused a move. Show timing only. - Accessible contrast. No causal language in labels. - Do not invent a second outcome metric. </constraints> <format> Return the full HTML as an artifact, then explain how markers bind to weeks and which arrays to replace. </format>

๐Ÿ’ก

Pro tip: One outcome per board. A page of shipped tickets next to five metrics will let every ship look justified.

Slip and Scope Watchlist

24/30

โœจ What it does

Claude builds a slip-and-scope watchlist for [SHIP DATE] with days late, added scope, and a cut list as a working screen you can click in the chat. Open the cut list, then swap the sample numbers for your sprint dates.

You are a product operations analyst who builds slip-and-scope watchlists that show late and fatter as two different problems. <context> I need a slip-and-scope dashboard as one self-contained HTML file with inline CSS, vanilla JS, and a CDN chart library, seeded with realistic initiatives and added tickets so I can click the working screen in the chat. </context> <inputs> - Original ship date focus: [SHIP DATE] - Initiatives: [LIST] - Scope unit: [E.G. TICKETS / POINTS] - Added-after-promise rule: [E.G. TICKETS CREATED AFTER COMMIT DATE] - Cut options I allow: [E.G. DEFER, CUT, KEEP] </inputs> <task> Build the dashboard with: KPI cards (days late on the focus date, added scope after promise, items already cut, items still in); a grouped bar of promised versus current scope; a slip table (initiative, promised date, current date, days late, added scope, owner); and a cut list of added items with a suggested defer/cut/keep from simple rules I can edit. Compute days late from promised versus current. Compute added scope from items flagged after the commit date. </task> <constraints> - One self-contained HTML file; one CDN charting library only. - Initiatives and items in labeled JS constants at the top. - Suggested cuts are rules, not a mandate. Accessible contrast. - Do not invent stakeholder quotes. </constraints> <format> Return the full HTML as an artifact, then write late and added-scope math and which arrays to replace. </format>

๐Ÿ’ก

Pro tip: Count added tickets after the promise date. A board that only shows late, not fatter, will miss the usual reason you slipped.

Discovery Versus Delivery Mix

25/30

โœจ What it does

Claude builds a discovery-versus-delivery mix board for [TEAM] with time split, aging bets, and a starved-research list as a working screen you can click in the chat. Check the mix bar, then swap the sample numbers for your cycle hours.

You are a product operations analyst who builds discovery-versus-delivery mix boards a team can correct next cycle. <context> I need a discovery-versus-delivery dashboard as one self-contained HTML file with inline CSS, vanilla JS, and a CDN chart library, seeded with realistic cycle hours so I can click the working screen in the chat. </context> <inputs> - Team: [TEAM] - Cycle: [E.G. LAST 6 WEEKS] - Discovery share target: [E.G. 20-30%] - Work items with type DISCOVERY or DELIVERY: [OR "INVENT"] - Aging bet rule: [E.G. DISCOVERY OPEN OVER 21 DAYS] </inputs> <task> Build the dashboard with: a header for [TEAM]; KPI cards (discovery share, delivery share, versus target band, aging discovery bets); a weekly stacked bar of the two buckets; an aging-bet table (item, age, owner, last note); a starved-research callout when share sits under the band for 3+ weeks; and a simple item table with type chips. Compute share from hours or from item counts, and label the unit on the page. </task> <constraints> - One self-contained HTML file; one CDN charting library only. - Items and hours in labeled JS constants at the top. - Under-band weeks flagged. Accessible contrast. - Do not invent research findings. Mix and age only. </constraints> <format> Return the full HTML as an artifact, then write share and aging rules and which arrays to replace. </format>

๐Ÿ’ก

Pro tip: Count hours or tickets in two buckets only. A twelve-label workflow mix will hide that discovery got starved.

Most people use 10% of Claude. Tutorials unlock the rest.

AI Academy: 300+ hands-on tutorials on Claude, ChatGPT, Midjourney, and 50+ AI tools. New tutorials added every week.

Start Your Free Trial

NPS

5 prompts

NPS Trend Dashboard

26/30

โœจ What it does

Claude builds an NPS trend dashboard for [PRODUCT] with score, response rate, and a promoter-detractor split as a working screen you can click in the chat. Read the latest month, then swap the sample numbers for your survey export.

You are a product research analyst who builds NPS trend boards that show score and sample size together. <context> I need an NPS trend dashboard as one self-contained HTML file with inline CSS, vanilla JS, and a CDN chart library, seeded with realistic monthly scores so I can click the working screen in the chat. </context> <inputs> - Product name: [PRODUCT] - Months: [E.G. LAST 12] - Sent and responded per month: [OR "INVENT PLAUSIBLE"] - Score range: [0-10] - Target NPS: [E.G. 40] </inputs> <task> Build the dashboard with: a header for [PRODUCT]; KPI cards (latest NPS, change versus prior, response rate, promoters minus detractors); a line of monthly NPS with the target; a stacked bar of promoter / passive / detractor counts; a month table (sent, responses, rate, promoters, passives, detractors, NPS); and a thin-sample flag when responses sit under an editable threshold. Compute NPS as (% promoters minus % detractors) from 0-10 scores. Promoters 9-10, passives 7-8, detractors 0-6. </task> <constraints> - One self-contained HTML file; one CDN charting library only. - Monthly rows or raw scores in labeled JS constants at the top. - Show the NPS formula. Accessible contrast. - Do not invent industry benchmarks I did not give. </constraints> <format> Return the full HTML as an artifact, then write the NPS formula and which constants to replace with a survey export. </format>

๐Ÿ’ก

Pro tip: Show response rate next to the score. A jumping NPS on ten replies is noise, not a product win.

NPS by Segment

27/30

โœจ What it does

Claude builds an NPS-by-segment board for [SEGMENT] with scores, volume, and a worst-cohort callout as a working screen you can click in the chat. Filter the worst cohort, then swap the sample numbers for your tagged responses.

You are a product research analyst who reads NPS by the segment a team can actually change. <context> I need an NPS-by-segment dashboard as one self-contained HTML file with inline CSS, vanilla JS, and a CDN chart library, seeded with realistic tagged responses so I can click the working screen in the chat. </context> <inputs> - Segment to lead with: [SEGMENT] - Other segment cuts: [E.G. PLAN, TENURE, PLATFORM] - Period: [E.G. LAST 90 DAYS] - Product name: [PRODUCT] - Minimum responses to show a score: [E.G. 20] </inputs> <task> Build the dashboard with: a cut selector defaulting to [SEGMENT]; KPI cards (overall NPS, best slice, worst slice, slices under the minimum); a bar of NPS by slice; a volume bar; a table (slice, responses, promoters, detractors, NPS, versus overall); and a worst-cohort callout. Compute NPS per slice from tagged 0-10 scores. Slices under the minimum show n/a, not a wild score. Clicking a slice lists sample scores. </task> <constraints> - One self-contained HTML file; one CDN charting library only. - Responses with tags in labeled JS constants at the top. - n/a labeled when thin. Accessible contrast. - Do not invent a segment I did not list. </constraints> <format> Return the full HTML as an artifact, then explain the minimum-n rule and which array to replace. </format>

๐Ÿ’ก

Pro tip: Lead with the segment you can change (plan, tenure, platform). A country split you will not staff is a trivia chart.

Promoter Passive Detractor

28/30

โœจ What it does

Claude builds a promoter-passive-detractor board for [SURVEY WINDOW] with counts, movement, and a detractor list as a working screen you can click in the chat. Open a detractor row, then swap the sample numbers for your latest scores.

You are a product research analyst who builds promoter-passive-detractor boards with movement when a prior score exists. <context> I need a promoter-passive-detractor dashboard as one self-contained HTML file with inline CSS, vanilla JS, and a CDN chart library, seeded with realistic current and prior scores so I can click the working screen in the chat. </context> <inputs> - Survey window: [SURVEY WINDOW] - Product name: [PRODUCT] - Prior window if any: [E.G. PRIOR 90 DAYS OR "NONE"] - Accounts or users: [SAMPLE SET] - Follow-up owner field: [E.G. CSM OR PM] </inputs> <task> Build the dashboard with: KPI cards (promoters, passives, detractors, newly detracted if prior exists); a three-bucket donut; a movement matrix when prior scores exist (from bucket to bucket); a detractor table (id, score, prior score, comment snippet, owner); and chips for bucket. Compute buckets from 0-10. Movement only when both scores exist. Missing prior shows as first score, not a drop. </task> <constraints> - One self-contained HTML file; one CDN charting library only. - Score rows in labeled JS constants at the top. - Detractor rows visually first. Accessible contrast. - Do not invent comments I did not seed. Empty comment is allowed. </constraints> <format> Return the full HTML as an artifact, then explain bucket and movement rules and which array to replace. </format>

๐Ÿ’ก

Pro tip: If you have a prior score for the same account, show the move. A new detractor is a different job from a long-time detractor.

Verbatim Theme Board

29/30

โœจ What it does

Claude builds a verbatim-theme dashboard for [FEEDBACK THEMES] with mention volume, NPS of that theme, and sample quotes as a working screen you can click in the chat. Click a theme, then swap the sample numbers and quotes for your real replies.

You are a product research analyst who turns NPS verbatims into a theme board, not a quote collage. <context> I need a verbatim-theme dashboard as one self-contained HTML file with inline CSS, vanilla JS, and a CDN chart library, seeded with realistic tagged comments so I can click the working screen in the chat. </context> <inputs> - Themes: [FEEDBACK THEMES] - Product name: [PRODUCT] - Period: [E.G. LAST 90 DAYS] - Sample comments: [OR ASK CLAUDE TO INVENT PLAUSIBLE SHORT QUOTES] - Score on each row: [0-10] </inputs> <task> Build the dashboard with: KPI cards (comments tagged, top theme, theme with worst NPS, untagged count); a bar of mention volume by theme; a bar of NPS among rows tagged with that theme; a quote drawer for the selected theme (quote, score, date); and a table (theme, mentions, share, NPS, promoters, detractors). A row may have one theme for simplicity unless I ask for multi-tag. Clicking a theme filters the quotes. Compute theme NPS from those rows only. </task> <constraints - One self-contained HTML file; one CDN charting library only. - Comments and themes in labeled JS constants at the top. - Quotes stay short. Accessible contrast. - Do not invent a theme I did not list. Untagged is its own bucket. </constraints> <format> Return the full HTML as an artifact, then explain theme NPS math and which arrays to replace with real replies. </format>

๐Ÿ’ก

Pro tip: Tie each quote to a theme you already use in reviews. A new taxonomy every month makes the trend useless.

Close the Loop Tracker

30/30

โœจ What it does

Claude builds a close-the-loop tracker for [OWNER TEAM] with open follow-ups, age, and a promised-reply list as a working screen you can click in the chat. Age-sort the open rows, then swap the sample numbers for your follow-up log.

You are a product research analyst who builds close-the-loop boards that keep promised replies from going stale. <context> I need a close-the-loop tracker as one self-contained HTML file with inline CSS, vanilla JS, and a CDN chart library, seeded with realistic follow-up rows so I can click the working screen in the chat. </context> <inputs> - Owner team: [OWNER TEAM] - Product name: [PRODUCT] - Statuses: [E.G. NEW, ASSIGNED, REPLIED, WONT REPLY, CLOSED] - SLA to first reply: [E.G. 5 BUSINESS DAYS] - Survey window: [E.G. LAST 60 DAYS] </inputs> <task> Build the dashboard with: a header for [OWNER TEAM]; KPI cards (open follow-ups, past SLA, median age, closed this week); a stacked bar of open rows by owner; an aging table; a promised-reply list (id, score, theme if any, promised date, owner, last customer-facing send); and a case table with search. Age from survey date, never from last internal note. Status and owner filters must work. Selecting an owner filters every widget. </task> <constraints> - One self-contained HTML file; one CDN charting library only. - Follow-up rows in labeled JS constants at the top. - Past-SLA rows red. Search works. Accessible contrast. - Do not invent refund or legal language. Follow-up status only. </constraints> <format> Return the full HTML as an artifact, then explain the age and SLA rules and which array to replace with a follow-up log. </format>

๐Ÿ’ก

Pro tip: Age from the survey date, not from the last internal comment. A busy thread can hide a week of silence to the customer.

Free tool

Prompt Optimizer

Turn a rough idea into a structured, professional AI prompt.

Try it free โ†’

Frequently Asked Questions

Yes. Each prompt asks Claude to return one self-contained HTML file with inline CSS, vanilla JS, and a charting library from a CDN, pre-seeded with realistic sample rows. It opens as a working screen you can click in the chat, with KPI cards, charts, and watchlists already populated.
Every prompt tells Claude to keep sample data in labeled JS constants near the top of the file. Replace those arrays with an export from your product analytics, billing, or survey tool. The cards and charts recompute from the same formulas. Click around on the sample first so you know which number you are about to overwrite.
The dashboards hub covers analytics, sales, finance, SaaS, and marketing in one library. Ops is queues and incidents. Marketing is acquisition, campaigns, SEO, and spend. This page is only product work: activation, retention, in-app funnels, feature usage, roadmap health, and NPS. Use this set when the screen has to survive a product review.
The sample numbers are invented so the screen renders. The formulas are real and written on the page or in the closing note: activation rate, day-n retention, DAU/MAU, GRR and NRR, step-to-step conversion, and NPS as percent promoters minus percent detractors. Read that note, then swap the constants. If a target or window is missing, the prompt tells Claude to mark [VERIFY] instead of guessing.
Because it is a single HTML file, you can copy it out of the chat, save it as dashboard.html, and open it in any browser or put it on a static host. For a live review screen, follow Claude's closing note on swapping the sample arrays for a CSV or a fetch. Keep secrets out of the file.

Prompts are the starting line. Tutorials are the finish.

A growing library of 300+ hands-on tutorials on ChatGPT, Claude, Midjourney, and 50+ AI tools. New tutorials added every week.

7-day free trial. Cancel anytime.