MCPサーバー

Rahul D Sarker: Marketing & RevOps Tools

co.rahuldsarker/growth-tools

このMCPでできること

Provides marketing, revenue operations, sales, advertising, SaaS, and conversion calculators, along with article search and consultation booking.

above_the_fold_messaging_clarity_grader
Above-the-Fold Messaging Clarity Grader
Score a hero section's five-second clarity across five weighted checks (what you do, outcome, CTA, jargon, subhead) into a 0-100 clarity verdict. See the full version at https://rahuldsarker.co/calculators/above-the-fold-messaging-clarity-grader
読み取り専用 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['strangerUnderstandsIn5Seconds', 'headlineStatesOutcome', 'oneObviousPrimaryCta', 'noJargon', 'subheadSupportsHeadline'], 'properties': {'currency': {'type': 'string', 'pattern': '^[A-Za-z]{3}$', 'description': 'ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.'}, 'noJargon': {'enum': ['yes', 'partial', 'no'], 'type': 'string', 'description': 'No jargon or vague buzzwords (weight 15)'}, 'oneObviousPrimaryCta': {'enum': ['yes', 'partial', 'no'], 'type': 'string', 'description': 'One obvious primary CTA above the fold (weight 20)'}, 'headlineStatesOutcome': {'enum': ['yes', 'partial', 'no'], 'type': 'string', 'description': 'The headline states an outcome/benefit (weight 20)'}, 'subheadSupportsHeadline': {'enum': ['yes', 'partial', 'no'], 'type': 'string', 'description': 'Subhead supports (not repeats) the headline (weight 15)'}, 'strangerUnderstandsIn5Seconds': {'enum': ['yes', 'partial', 'no'], 'type': 'string', 'description': 'A stranger knows what you do in 5 seconds (weight 30)'}}}
出力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['kind', 'tool', 'title', 'calculator', 'url', 'bookingUrl', 'currency', 'compact', 'inputs', 'metrics', 'notes', 'benchmarks'], 'properties': {'url': {'type': 'string'}, 'kind': {'type': 'string', 'const': 'calculator'}, 'tool': {'type': 'string', 'description': 'The calculator tool that produced this result'}, 'notes': {'type': 'array', 'items': {'type': 'string'}}, 'title': {'type': 'string'}, 'inputs': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'compact': {'type': 'boolean'}, 'metrics': {'type': 'array', 'items': {'type': 'object', 'required': ['label', 'value', 'unit', 'display'], 'properties': {'unit': {'anyOf': [{'enum': ['currency', 'x', '%', 'months'], 'type': 'string'}, {'type': 'null'}]}, 'label': {'type': 'string'}, 'value': {'type': ['number', 'null']}, 'display': {'type': 'string'}}, 'additionalProperties': False}, 'description': 'Every "Label: value" line of the result; value is the first number on the line'}, 'currency': {'type': ['string', 'null']}, 'benchmarks': {'type': 'array', 'items': {'type': 'object', 'required': ['metric', 'name', 'value', 'display', 'band', 'tone', 'read', 'target', 'segment', 'source'], 'properties': {'band': {'type': 'string'}, 'name': {'type': 'string'}, 'read': {'type': 'string'}, 'tone': {'enum': ['good', 'ok', 'warn', 'bad'], 'type': 'string'}, 'value': {'type': 'number'}, 'metric': {'type': 'string'}, 'source': {'type': 'string'}, 'target': {'type': 'string'}, 'display': {'type': 'string'}, 'segment': {'type': ['string', 'null']}}, 'additionalProperties': False}, 'description': 'Rule-of-thumb verdicts for the headline numbers'}, 'bookingUrl': {'type': 'string'}, 'calculator': {'type': 'string', 'description': 'Slug of the interactive calculator on rahuldsarker.co'}}, 'additionalProperties': False}
ab_test_significance_calculator
A/B Test Significance Calculator
Run a two-proportion z-test on an A/B test to get relative uplift and statistical confidence. See the full version at https://rahuldsarker.co/calculators/ab-test-significance-calculator
読み取り専用 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['visitorsA', 'conversionsA', 'visitorsB', 'conversionsB'], 'properties': {'currency': {'type': 'string', 'pattern': '^[A-Za-z]{3}$', 'description': 'ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.'}, 'visitorsA': {'type': 'number', 'description': 'Visitors in variant A (control)'}, 'visitorsB': {'type': 'number', 'description': 'Visitors in variant B (test)'}, 'conversionsA': {'type': 'number', 'description': 'Conversions in variant A (control)'}, 'conversionsB': {'type': 'number', 'description': 'Conversions in variant B (test)'}}}
出力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['kind', 'tool', 'title', 'calculator', 'url', 'bookingUrl', 'currency', 'compact', 'inputs', 'metrics', 'notes', 'benchmarks'], 'properties': {'url': {'type': 'string'}, 'kind': {'type': 'string', 'const': 'calculator'}, 'tool': {'type': 'string', 'description': 'The calculator tool that produced this result'}, 'notes': {'type': 'array', 'items': {'type': 'string'}}, 'title': {'type': 'string'}, 'inputs': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'compact': {'type': 'boolean'}, 'metrics': {'type': 'array', 'items': {'type': 'object', 'required': ['label', 'value', 'unit', 'display'], 'properties': {'unit': {'anyOf': [{'enum': ['currency', 'x', '%', 'months'], 'type': 'string'}, {'type': 'null'}]}, 'label': {'type': 'string'}, 'value': {'type': ['number', 'null']}, 'display': {'type': 'string'}}, 'additionalProperties': False}, 'description': 'Every "Label: value" line of the result; value is the first number on the line'}, 'currency': {'type': ['string', 'null']}, 'benchmarks': {'type': 'array', 'items': {'type': 'object', 'required': ['metric', 'name', 'value', 'display', 'band', 'tone', 'read', 'target', 'segment', 'source'], 'properties': {'band': {'type': 'string'}, 'name': {'type': 'string'}, 'read': {'type': 'string'}, 'tone': {'enum': ['good', 'ok', 'warn', 'bad'], 'type': 'string'}, 'value': {'type': 'number'}, 'metric': {'type': 'string'}, 'source': {'type': 'string'}, 'target': {'type': 'string'}, 'display': {'type': 'string'}, 'segment': {'type': ['string', 'null']}}, 'additionalProperties': False}, 'description': 'Rule-of-thumb verdicts for the headline numbers'}, 'bookingUrl': {'type': 'string'}, 'calculator': {'type': 'string', 'description': 'Slug of the interactive calculator on rahuldsarker.co'}}, 'additionalProperties': False}
acv_weight_planner
ACV Weight Planner
Break ARR down by SMB versus enterprise segments to see revenue concentration and per-customer averages. See the full version at https://rahuldsarker.co/calculators/acv-weight-planner
読み取り専用 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['smbCount', 'smbAcv', 'entCount', 'entAcv'], 'properties': {'entAcv': {'type': 'number', 'description': 'Average annual contract value (ACV) for enterprise customers'}, 'smbAcv': {'type': 'number', 'description': 'Average annual contract value (ACV) for SMB customers'}, 'currency': {'type': 'string', 'pattern': '^[A-Za-z]{3}$', 'description': 'ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.'}, 'entCount': {'type': 'number', 'description': 'Number of enterprise customers'}, 'smbCount': {'type': 'number', 'description': 'Number of SMB customers'}}}
出力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['kind', 'tool', 'title', 'calculator', 'url', 'bookingUrl', 'currency', 'compact', 'inputs', 'metrics', 'notes', 'benchmarks'], 'properties': {'url': {'type': 'string'}, 'kind': {'type': 'string', 'const': 'calculator'}, 'tool': {'type': 'string', 'description': 'The calculator tool that produced this result'}, 'notes': {'type': 'array', 'items': {'type': 'string'}}, 'title': {'type': 'string'}, 'inputs': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'compact': {'type': 'boolean'}, 'metrics': {'type': 'array', 'items': {'type': 'object', 'required': ['label', 'value', 'unit', 'display'], 'properties': {'unit': {'anyOf': [{'enum': ['currency', 'x', '%', 'months'], 'type': 'string'}, {'type': 'null'}]}, 'label': {'type': 'string'}, 'value': {'type': ['number', 'null']}, 'display': {'type': 'string'}}, 'additionalProperties': False}, 'description': 'Every "Label: value" line of the result; value is the first number on the line'}, 'currency': {'type': ['string', 'null']}, 'benchmarks': {'type': 'array', 'items': {'type': 'object', 'required': ['metric', 'name', 'value', 'display', 'band', 'tone', 'read', 'target', 'segment', 'source'], 'properties': {'band': {'type': 'string'}, 'name': {'type': 'string'}, 'read': {'type': 'string'}, 'tone': {'enum': ['good', 'ok', 'warn', 'bad'], 'type': 'string'}, 'value': {'type': 'number'}, 'metric': {'type': 'string'}, 'source': {'type': 'string'}, 'target': {'type': 'string'}, 'display': {'type': 'string'}, 'segment': {'type': ['string', 'null']}}, 'additionalProperties': False}, 'description': 'Rule-of-thumb verdicts for the headline numbers'}, 'bookingUrl': {'type': 'string'}, 'calculator': {'type': 'string', 'description': 'Slug of the interactive calculator on rahuldsarker.co'}}, 'additionalProperties': False}
ad_creative_fatigue_forecaster
Ad Creative Fatigue Forecaster
Forecast how many days until an ad audience hits its fatigue frequency ceiling, and the date to have fresh creative ready. See the full version at https://rahuldsarker.co/calculators/ad-creative-fatigue-forecaster
読み取り専用 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['audience', 'dailyImpressions', 'freqCap'], 'properties': {'freqCap': {'type': 'number', 'description': 'Fatigue frequency ceiling (average frequency where CPMs/CPA start rising)'}, 'audience': {'type': 'number', 'description': 'Audience / reach size (unique people the ad set can reach)'}, 'currency': {'type': 'string', 'pattern': '^[A-Za-z]{3}$', 'description': 'ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.'}, 'dailyImpressions': {'type': 'number', 'description': 'Daily impressions delivered'}}}
出力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['kind', 'tool', 'title', 'calculator', 'url', 'bookingUrl', 'currency', 'compact', 'inputs', 'metrics', 'notes', 'benchmarks'], 'properties': {'url': {'type': 'string'}, 'kind': {'type': 'string', 'const': 'calculator'}, 'tool': {'type': 'string', 'description': 'The calculator tool that produced this result'}, 'notes': {'type': 'array', 'items': {'type': 'string'}}, 'title': {'type': 'string'}, 'inputs': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'compact': {'type': 'boolean'}, 'metrics': {'type': 'array', 'items': {'type': 'object', 'required': ['label', 'value', 'unit', 'display'], 'properties': {'unit': {'anyOf': [{'enum': ['currency', 'x', '%', 'months'], 'type': 'string'}, {'type': 'null'}]}, 'label': {'type': 'string'}, 'value': {'type': ['number', 'null']}, 'display': {'type': 'string'}}, 'additionalProperties': False}, 'description': 'Every "Label: value" line of the result; value is the first number on the line'}, 'currency': {'type': ['string', 'null']}, 'benchmarks': {'type': 'array', 'items': {'type': 'object', 'required': ['metric', 'name', 'value', 'display', 'band', 'tone', 'read', 'target', 'segment', 'source'], 'properties': {'band': {'type': 'string'}, 'name': {'type': 'string'}, 'read': {'type': 'string'}, 'tone': {'enum': ['good', 'ok', 'warn', 'bad'], 'type': 'string'}, 'value': {'type': 'number'}, 'metric': {'type': 'string'}, 'source': {'type': 'string'}, 'target': {'type': 'string'}, 'display': {'type': 'string'}, 'segment': {'type': ['string', 'null']}}, 'additionalProperties': False}, 'description': 'Rule-of-thumb verdicts for the headline numbers'}, 'bookingUrl': {'type': 'string'}, 'calculator': {'type': 'string', 'description': 'Slug of the interactive calculator on rahuldsarker.co'}}, 'additionalProperties': False}
ad_frequency_risk_checker
Ad Frequency Risk Checker
Calculate average ad frequency from impressions and reach, and flag whether it is healthy, caution, or fatigue territory. See the full version at https://rahuldsarker.co/calculators/ad-frequency-risk-checker
読み取り専用 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['impressions', 'reach'], 'properties': {'reach': {'type': 'number', 'description': 'Reach (unique users) in the period'}, 'currency': {'type': 'string', 'pattern': '^[A-Za-z]{3}$', 'description': 'ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.'}, 'impressions': {'type': 'number', 'description': 'Impressions delivered in the period'}}}
出力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['kind', 'tool', 'title', 'calculator', 'url', 'bookingUrl', 'currency', 'compact', 'inputs', 'metrics', 'notes', 'benchmarks'], 'properties': {'url': {'type': 'string'}, 'kind': {'type': 'string', 'const': 'calculator'}, 'tool': {'type': 'string', 'description': 'The calculator tool that produced this result'}, 'notes': {'type': 'array', 'items': {'type': 'string'}}, 'title': {'type': 'string'}, 'inputs': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'compact': {'type': 'boolean'}, 'metrics': {'type': 'array', 'items': {'type': 'object', 'required': ['label', 'value', 'unit', 'display'], 'properties': {'unit': {'anyOf': [{'enum': ['currency', 'x', '%', 'months'], 'type': 'string'}, {'type': 'null'}]}, 'label': {'type': 'string'}, 'value': {'type': ['number', 'null']}, 'display': {'type': 'string'}}, 'additionalProperties': False}, 'description': 'Every "Label: value" line of the result; value is the first number on the line'}, 'currency': {'type': ['string', 'null']}, 'benchmarks': {'type': 'array', 'items': {'type': 'object', 'required': ['metric', 'name', 'value', 'display', 'band', 'tone', 'read', 'target', 'segment', 'source'], 'properties': {'band': {'type': 'string'}, 'name': {'type': 'string'}, 'read': {'type': 'string'}, 'tone': {'enum': ['good', 'ok', 'warn', 'bad'], 'type': 'string'}, 'value': {'type': 'number'}, 'metric': {'type': 'string'}, 'source': {'type': 'string'}, 'target': {'type': 'string'}, 'display': {'type': 'string'}, 'segment': {'type': ['string', 'null']}}, 'additionalProperties': False}, 'description': 'Rule-of-thumb verdicts for the headline numbers'}, 'bookingUrl': {'type': 'string'}, 'calculator': {'type': 'string', 'description': 'Slug of the interactive calculator on rahuldsarker.co'}}, 'additionalProperties': False}
ad_spend_waste_calculator
Ad Spend Waste Calculator
Estimate how much monthly ad budget leaks to fraud and tracking/attribution waste. See the full version at https://rahuldsarker.co/calculators/ad-spend-waste-calculator
読み取り専用 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['monthlySpend', 'fraudPct', 'leakagePct'], 'properties': {'currency': {'type': 'string', 'pattern': '^[A-Za-z]{3}$', 'description': 'ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.'}, 'fraudPct': {'type': 'number', 'description': 'Estimated share of spend lost to invalid/fraudulent traffic, as a percentage'}, 'leakagePct': {'type': 'number', 'description': 'Estimated share of spend lost to tracking/attribution leakage, as a percentage'}, 'monthlySpend': {'type': 'number', 'description': 'Total monthly ad spend'}}}
出力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['kind', 'tool', 'title', 'calculator', 'url', 'bookingUrl', 'currency', 'compact', 'inputs', 'metrics', 'notes', 'benchmarks'], 'properties': {'url': {'type': 'string'}, 'kind': {'type': 'string', 'const': 'calculator'}, 'tool': {'type': 'string', 'description': 'The calculator tool that produced this result'}, 'notes': {'type': 'array', 'items': {'type': 'string'}}, 'title': {'type': 'string'}, 'inputs': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'compact': {'type': 'boolean'}, 'metrics': {'type': 'array', 'items': {'type': 'object', 'required': ['label', 'value', 'unit', 'display'], 'properties': {'unit': {'anyOf': [{'enum': ['currency', 'x', '%', 'months'], 'type': 'string'}, {'type': 'null'}]}, 'label': {'type': 'string'}, 'value': {'type': ['number', 'null']}, 'display': {'type': 'string'}}, 'additionalProperties': False}, 'description': 'Every "Label: value" line of the result; value is the first number on the line'}, 'currency': {'type': ['string', 'null']}, 'benchmarks': {'type': 'array', 'items': {'type': 'object', 'required': ['metric', 'name', 'value', 'display', 'band', 'tone', 'read', 'target', 'segment', 'source'], 'properties': {'band': {'type': 'string'}, 'name': {'type': 'string'}, 'read': {'type': 'string'}, 'tone': {'enum': ['good', 'ok', 'warn', 'bad'], 'type': 'string'}, 'value': {'type': 'number'}, 'metric': {'type': 'string'}, 'source': {'type': 'string'}, 'target': {'type': 'string'}, 'display': {'type': 'string'}, 'segment': {'type': ['string', 'null']}}, 'additionalProperties': False}, 'description': 'Rule-of-thumb verdicts for the headline numbers'}, 'bookingUrl': {'type': 'string'}, 'calculator': {'type': 'string', 'description': 'Slug of the interactive calculator on rahuldsarker.co'}}, 'additionalProperties': False}
ae_sdr_hand_off_friction_calculator
AE/SDR Hand-off Friction Calculator
Quantify meetings and revenue lost when the SDR-to-AE hand-off is inconsistent, from scheduling, notes, CRM completeness, and SLA follow-up quality. See the full version at https://rahuldsarker.co/calculators/ae-sdr-hand-off-friction-calculator
読み取り専用 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['schedulingConsistency', 'notesConsistency', 'crmConsistency', 'slaConsistency', 'meetingsHandedOffPerMonth', 'meetingToCloseRatePct', 'avgDealValue'], 'properties': {'currency': {'type': 'string', 'pattern': '^[A-Za-z]{3}$', 'description': 'ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.'}, 'avgDealValue': {'type': 'number', 'description': 'Average deal value'}, 'crmConsistency': {'enum': ['consistent', 'inconsistent', 'rarely'], 'type': 'string', 'description': 'CRM fields complete & accurate'}, 'slaConsistency': {'enum': ['consistent', 'inconsistent', 'rarely'], 'type': 'string', 'description': 'AE follows up within SLA'}, 'notesConsistency': {'enum': ['consistent', 'inconsistent', 'rarely'], 'type': 'string', 'description': 'Context notes / discovery captured'}, 'meetingToCloseRatePct': {'type': 'number', 'description': 'Meeting â\x86\x92 close rate, as a percentage'}, 'schedulingConsistency': {'enum': ['consistent', 'inconsistent', 'rarely'], 'type': 'string', 'description': 'Meeting booked & confirmed at hand-off'}, 'meetingsHandedOffPerMonth': {'type': 'number', 'description': 'Meetings handed off from SDR to AE per month'}}}
出力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['kind', 'tool', 'title', 'calculator', 'url', 'bookingUrl', 'currency', 'compact', 'inputs', 'metrics', 'notes', 'benchmarks'], 'properties': {'url': {'type': 'string'}, 'kind': {'type': 'string', 'const': 'calculator'}, 'tool': {'type': 'string', 'description': 'The calculator tool that produced this result'}, 'notes': {'type': 'array', 'items': {'type': 'string'}}, 'title': {'type': 'string'}, 'inputs': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'compact': {'type': 'boolean'}, 'metrics': {'type': 'array', 'items': {'type': 'object', 'required': ['label', 'value', 'unit', 'display'], 'properties': {'unit': {'anyOf': [{'enum': ['currency', 'x', '%', 'months'], 'type': 'string'}, {'type': 'null'}]}, 'label': {'type': 'string'}, 'value': {'type': ['number', 'null']}, 'display': {'type': 'string'}}, 'additionalProperties': False}, 'description': 'Every "Label: value" line of the result; value is the first number on the line'}, 'currency': {'type': ['string', 'null']}, 'benchmarks': {'type': 'array', 'items': {'type': 'object', 'required': ['metric', 'name', 'value', 'display', 'band', 'tone', 'read', 'target', 'segment', 'source'], 'properties': {'band': {'type': 'string'}, 'name': {'type': 'string'}, 'read': {'type': 'string'}, 'tone': {'enum': ['good', 'ok', 'warn', 'bad'], 'type': 'string'}, 'value': {'type': 'number'}, 'metric': {'type': 'string'}, 'source': {'type': 'string'}, 'target': {'type': 'string'}, 'display': {'type': 'string'}, 'segment': {'type': ['string', 'null']}}, 'additionalProperties': False}, 'description': 'Rule-of-thumb verdicts for the headline numbers'}, 'bookingUrl': {'type': 'string'}, 'calculator': {'type': 'string', 'description': 'Slug of the interactive calculator on rahuldsarker.co'}}, 'additionalProperties': False}
annual_growth_goal_back_calculator
Annual Growth Goal Back-Calculator
Work backwards from an annual revenue goal, through ACV and close rates, to the traffic and leads needed per month to hit it. See the full version at https://rahuldsarker.co/calculators/annual-growth-goal-back-calculator
読み取り専用 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['revenueGoal', 'acv', 'leadToCustomerPct', 'visitorToLeadPct'], 'properties': {'acv': {'type': 'number', 'description': 'Average contract value'}, 'currency': {'type': 'string', 'pattern': '^[A-Za-z]{3}$', 'description': 'ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.'}, 'revenueGoal': {'type': 'number', 'description': 'Annual revenue goal'}, 'visitorToLeadPct': {'type': 'number', 'description': 'Visitor-to-lead conversion rate, as a percentage'}, 'leadToCustomerPct': {'type': 'number', 'description': 'Lead-to-customer close rate, as a percentage'}}}
出力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['kind', 'tool', 'title', 'calculator', 'url', 'bookingUrl', 'currency', 'compact', 'inputs', 'metrics', 'notes', 'benchmarks'], 'properties': {'url': {'type': 'string'}, 'kind': {'type': 'string', 'const': 'calculator'}, 'tool': {'type': 'string', 'description': 'The calculator tool that produced this result'}, 'notes': {'type': 'array', 'items': {'type': 'string'}}, 'title': {'type': 'string'}, 'inputs': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'compact': {'type': 'boolean'}, 'metrics': {'type': 'array', 'items': {'type': 'object', 'required': ['label', 'value', 'unit', 'display'], 'properties': {'unit': {'anyOf': [{'enum': ['currency', 'x', '%', 'months'], 'type': 'string'}, {'type': 'null'}]}, 'label': {'type': 'string'}, 'value': {'type': ['number', 'null']}, 'display': {'type': 'string'}}, 'additionalProperties': False}, 'description': 'Every "Label: value" line of the result; value is the first number on the line'}, 'currency': {'type': ['string', 'null']}, 'benchmarks': {'type': 'array', 'items': {'type': 'object', 'required': ['metric', 'name', 'value', 'display', 'band', 'tone', 'read', 'target', 'segment', 'source'], 'properties': {'band': {'type': 'string'}, 'name': {'type': 'string'}, 'read': {'type': 'string'}, 'tone': {'enum': ['good', 'ok', 'warn', 'bad'], 'type': 'string'}, 'value': {'type': 'number'}, 'metric': {'type': 'string'}, 'source': {'type': 'string'}, 'target': {'type': 'string'}, 'display': {'type': 'string'}, 'segment': {'type': ['string', 'null']}}, 'additionalProperties': False}, 'description': 'Rule-of-thumb verdicts for the headline numbers'}, 'bookingUrl': {'type': 'string'}, 'calculator': {'type': 'string', 'description': 'Slug of the interactive calculator on rahuldsarker.co'}}, 'additionalProperties': False}
arr_multiple_calculator
ARR Multiple Calculator
Apply conservative, market, premium, and custom ARR multiples to see the valuation range they imply. See the full version at https://rahuldsarker.co/calculators/arr-multiple-calculator
読み取り専用 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['arr', 'conservativeMultiple', 'marketMultiple', 'premiumMultiple'], 'properties': {'arr': {'type': 'number', 'description': 'Current annual recurring revenue (ARR)'}, 'currency': {'type': 'string', 'pattern': '^[A-Za-z]{3}$', 'description': 'ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.'}, 'customMultiple': {'type': 'number', 'description': "Your own or a specific comp's multiple, optional"}, 'marketMultiple': {'type': 'number', 'description': 'Market/typical revenue multiple'}, 'premiumMultiple': {'type': 'number', 'description': 'Premium revenue multiple'}, 'conservativeMultiple': {'type': 'number', 'description': 'Conservative revenue multiple'}}}
出力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['kind', 'tool', 'title', 'calculator', 'url', 'bookingUrl', 'currency', 'compact', 'inputs', 'metrics', 'notes', 'benchmarks'], 'properties': {'url': {'type': 'string'}, 'kind': {'type': 'string', 'const': 'calculator'}, 'tool': {'type': 'string', 'description': 'The calculator tool that produced this result'}, 'notes': {'type': 'array', 'items': {'type': 'string'}}, 'title': {'type': 'string'}, 'inputs': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'compact': {'type': 'boolean'}, 'metrics': {'type': 'array', 'items': {'type': 'object', 'required': ['label', 'value', 'unit', 'display'], 'properties': {'unit': {'anyOf': [{'enum': ['currency', 'x', '%', 'months'], 'type': 'string'}, {'type': 'null'}]}, 'label': {'type': 'string'}, 'value': {'type': ['number', 'null']}, 'display': {'type': 'string'}}, 'additionalProperties': False}, 'description': 'Every "Label: value" line of the result; value is the first number on the line'}, 'currency': {'type': ['string', 'null']}, 'benchmarks': {'type': 'array', 'items': {'type': 'object', 'required': ['metric', 'name', 'value', 'display', 'band', 'tone', 'read', 'target', 'segment', 'source'], 'properties': {'band': {'type': 'string'}, 'name': {'type': 'string'}, 'read': {'type': 'string'}, 'tone': {'enum': ['good', 'ok', 'warn', 'bad'], 'type': 'string'}, 'value': {'type': 'number'}, 'metric': {'type': 'string'}, 'source': {'type': 'string'}, 'target': {'type': 'string'}, 'display': {'type': 'string'}, 'segment': {'type': ['string', 'null']}}, 'additionalProperties': False}, 'description': 'Rule-of-thumb verdicts for the headline numbers'}, 'bookingUrl': {'type': 'string'}, 'calculator': {'type': 'string', 'description': 'Slug of the interactive calculator on rahuldsarker.co'}}, 'additionalProperties': False}
b2b_implementation_delay_cost_calculator
B2B Implementation Delay Cost Calculator
Estimate revenue delayed each year by a slow onboarding gap between signature and go-live, and what halving it recovers. See the full version at https://rahuldsarker.co/calculators/b2b-implementation-delay-cost-calculator
読み取り専用 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['acv', 'delayWeeks', 'dealsPerYear'], 'properties': {'acv': {'type': 'number', 'description': 'Average annual contract value'}, 'currency': {'type': 'string', 'pattern': '^[A-Za-z]{3}$', 'description': 'ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.'}, 'delayWeeks': {'type': 'number', 'description': 'Implementation delay, in weeks, from signature to go-live'}, 'dealsPerYear': {'type': 'number', 'description': 'Number of deals per year'}}}
出力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['kind', 'tool', 'title', 'calculator', 'url', 'bookingUrl', 'currency', 'compact', 'inputs', 'metrics', 'notes', 'benchmarks'], 'properties': {'url': {'type': 'string'}, 'kind': {'type': 'string', 'const': 'calculator'}, 'tool': {'type': 'string', 'description': 'The calculator tool that produced this result'}, 'notes': {'type': 'array', 'items': {'type': 'string'}}, 'title': {'type': 'string'}, 'inputs': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'compact': {'type': 'boolean'}, 'metrics': {'type': 'array', 'items': {'type': 'object', 'required': ['label', 'value', 'unit', 'display'], 'properties': {'unit': {'anyOf': [{'enum': ['currency', 'x', '%', 'months'], 'type': 'string'}, {'type': 'null'}]}, 'label': {'type': 'string'}, 'value': {'type': ['number', 'null']}, 'display': {'type': 'string'}}, 'additionalProperties': False}, 'description': 'Every "Label: value" line of the result; value is the first number on the line'}, 'currency': {'type': ['string', 'null']}, 'benchmarks': {'type': 'array', 'items': {'type': 'object', 'required': ['metric', 'name', 'value', 'display', 'band', 'tone', 'read', 'target', 'segment', 'source'], 'properties': {'band': {'type': 'string'}, 'name': {'type': 'string'}, 'read': {'type': 'string'}, 'tone': {'enum': ['good', 'ok', 'warn', 'bad'], 'type': 'string'}, 'value': {'type': 'number'}, 'metric': {'type': 'string'}, 'source': {'type': 'string'}, 'target': {'type': 'string'}, 'display': {'type': 'string'}, 'segment': {'type': ['string', 'null']}}, 'additionalProperties': False}, 'description': 'Rule-of-thumb verdicts for the headline numbers'}, 'bookingUrl': {'type': 'string'}, 'calculator': {'type': 'string', 'description': 'Slug of the interactive calculator on rahuldsarker.co'}}, 'additionalProperties': False}
benchmark_metric
Benchmark a marketing or SaaS metric
Say whether a number is good: returns the band (e.g. "Healthy", "Below target"), the target range and what it means, for LTV:CAC, CAC payback, churn, NRR, GRR, Rule of 40, Magic Number, burn multiple, quick ratio, gross margin, ROAS, conversion rate, marketing budget % of revenue and NPS. Rules of thumb, not guarantees.
読み取り専用 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['metric', 'value'], 'properties': {'value': {'type': 'number', 'description': 'The value to judge'}, 'metric': {'enum': ['ltv_cac_ratio', 'cac_payback_months', 'monthly_churn_pct', 'net_revenue_retention_pct', 'gross_revenue_retention_pct', 'rule_of_40', 'magic_number', 'burn_multiple', 'saas_quick_ratio', 'saas_gross_margin_pct', 'roas', 'website_conversion_pct', 'marketing_budget_pct_revenue', 'nps'], 'type': 'string', 'description': 'Which metric. Percent metrics take percentages (e.g. 3 for 3%); ratios take the multiple (e.g. 3.2)'}, 'segment': {'enum': ['smb', 'mid_market', 'enterprise'], 'type': 'string', 'description': 'Customer segment, for payback, churn and NRR (default smb)'}, 'grossMarginPct': {'type': 'number', 'description': 'Gross margin %, for ROAS: the verdict then uses break-even ROAS'}}}
bootstrapped_vs_venture_scaler_modeler
Bootstrapped vs Venture-Backed Scaler Modeler
Compare a founder's take-home from a bootstrapped exit against a venture-backed, diluted exit, and find the break-even exit value where raising starts to pay off. See the full version at https://rahuldsarker.co/calculators/bootstrapped-vs-venture-scaler-modeler
読み取り専用 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['bootExit', 'bootOwnershipPct', 'ventureExit', 'ventureOwnershipPct'], 'properties': {'bootExit': {'type': 'number', 'description': 'Projected exit value, bootstrapped path'}, 'currency': {'type': 'string', 'pattern': '^[A-Za-z]{3}$', 'description': 'ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.'}, 'ventureExit': {'type': 'number', 'description': 'Projected exit value, venture-backed path'}, 'bootOwnershipPct': {'type': 'number', 'description': 'Your ownership at exit, bootstrapped path, as a percentage'}, 'ventureOwnershipPct': {'type': 'number', 'description': 'Your ownership after dilution, venture-backed path, as a percentage'}}}
出力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['kind', 'tool', 'title', 'calculator', 'url', 'bookingUrl', 'currency', 'compact', 'inputs', 'metrics', 'notes', 'benchmarks'], 'properties': {'url': {'type': 'string'}, 'kind': {'type': 'string', 'const': 'calculator'}, 'tool': {'type': 'string', 'description': 'The calculator tool that produced this result'}, 'notes': {'type': 'array', 'items': {'type': 'string'}}, 'title': {'type': 'string'}, 'inputs': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'compact': {'type': 'boolean'}, 'metrics': {'type': 'array', 'items': {'type': 'object', 'required': ['label', 'value', 'unit', 'display'], 'properties': {'unit': {'anyOf': [{'enum': ['currency', 'x', '%', 'months'], 'type': 'string'}, {'type': 'null'}]}, 'label': {'type': 'string'}, 'value': {'type': ['number', 'null']}, 'display': {'type': 'string'}}, 'additionalProperties': False}, 'description': 'Every "Label: value" line of the result; value is the first number on the line'}, 'currency': {'type': ['string', 'null']}, 'benchmarks': {'type': 'array', 'items': {'type': 'object', 'required': ['metric', 'name', 'value', 'display', 'band', 'tone', 'read', 'target', 'segment', 'source'], 'properties': {'band': {'type': 'string'}, 'name': {'type': 'string'}, 'read': {'type': 'string'}, 'tone': {'enum': ['good', 'ok', 'warn', 'bad'], 'type': 'string'}, 'value': {'type': 'number'}, 'metric': {'type': 'string'}, 'source': {'type': 'string'}, 'target': {'type': 'string'}, 'display': {'type': 'string'}, 'segment': {'type': ['string', 'null']}}, 'additionalProperties': False}, 'description': 'Rule-of-thumb verdicts for the headline numbers'}, 'bookingUrl': {'type': 'string'}, 'calculator': {'type': 'string', 'description': 'Slug of the interactive calculator on rahuldsarker.co'}}, 'additionalProperties': False}
brand_vs_performance_budget_allocator
Brand vs Performance Budget Allocator
Split a marketing budget between brand and performance spend based on company stage, using the Binet & Field long/short research as a directional guide. See the full version at https://rahuldsarker.co/calculators/brand-vs-performance-budget-allocator
読み取り専用 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['budget', 'stage'], 'properties': {'stage': {'enum': ['preRevenue', 'earlyGrowth', 'scaling', 'mature'], 'type': 'string', 'description': 'Company stage: preRevenue (pre-revenue / finding PMF), earlyGrowth (early growth), scaling (scaling), mature (mature / category leader)'}, 'budget': {'type': 'number', 'description': 'Monthly marketing budget'}, 'currency': {'type': 'string', 'pattern': '^[A-Za-z]{3}$', 'description': 'ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.'}}}
出力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['kind', 'tool', 'title', 'calculator', 'url', 'bookingUrl', 'currency', 'compact', 'inputs', 'metrics', 'notes', 'benchmarks'], 'properties': {'url': {'type': 'string'}, 'kind': {'type': 'string', 'const': 'calculator'}, 'tool': {'type': 'string', 'description': 'The calculator tool that produced this result'}, 'notes': {'type': 'array', 'items': {'type': 'string'}}, 'title': {'type': 'string'}, 'inputs': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'compact': {'type': 'boolean'}, 'metrics': {'type': 'array', 'items': {'type': 'object', 'required': ['label', 'value', 'unit', 'display'], 'properties': {'unit': {'anyOf': [{'enum': ['currency', 'x', '%', 'months'], 'type': 'string'}, {'type': 'null'}]}, 'label': {'type': 'string'}, 'value': {'type': ['number', 'null']}, 'display': {'type': 'string'}}, 'additionalProperties': False}, 'description': 'Every "Label: value" line of the result; value is the first number on the line'}, 'currency': {'type': ['string', 'null']}, 'benchmarks': {'type': 'array', 'items': {'type': 'object', 'required': ['metric', 'name', 'value', 'display', 'band', 'tone', 'read', 'target', 'segment', 'source'], 'properties': {'band': {'type': 'string'}, 'name': {'type': 'string'}, 'read': {'type': 'string'}, 'tone': {'enum': ['good', 'ok', 'warn', 'bad'], 'type': 'string'}, 'value': {'type': 'number'}, 'metric': {'type': 'string'}, 'source': {'type': 'string'}, 'target': {'type': 'string'}, 'display': {'type': 'string'}, 'segment': {'type': ['string', 'null']}}, 'additionalProperties': False}, 'description': 'Rule-of-thumb verdicts for the headline numbers'}, 'bookingUrl': {'type': 'string'}, 'calculator': {'type': 'string', 'description': 'Slug of the interactive calculator on rahuldsarker.co'}}, 'additionalProperties': False}
burn_rate_optimization_forecaster
Burn Rate Optimization Forecaster
Simulate month by month, at a given revenue growth rate and gross margin, how many months until gross profit covers fixed burn, and the cash needed to bridge the gap. See the full version at https://rahuldsarker.co/calculators/burn-rate-optimization-forecaster
読み取り専用 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['revenue', 'growthRatePct', 'fixedBurn', 'grossMarginPct'], 'properties': {'revenue': {'type': 'number', 'description': 'Current monthly revenue'}, 'currency': {'type': 'string', 'pattern': '^[A-Za-z]{3}$', 'description': 'ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.'}, 'fixedBurn': {'type': 'number', 'description': 'Fixed monthly burn, costs that do not scale with revenue'}, 'growthRatePct': {'type': 'number', 'description': 'Monthly revenue growth rate, as a percentage'}, 'grossMarginPct': {'type': 'number', 'description': 'Gross margin, as a percentage'}}}
出力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['kind', 'tool', 'title', 'calculator', 'url', 'bookingUrl', 'currency', 'compact', 'inputs', 'metrics', 'notes', 'benchmarks'], 'properties': {'url': {'type': 'string'}, 'kind': {'type': 'string', 'const': 'calculator'}, 'tool': {'type': 'string', 'description': 'The calculator tool that produced this result'}, 'notes': {'type': 'array', 'items': {'type': 'string'}}, 'title': {'type': 'string'}, 'inputs': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'compact': {'type': 'boolean'}, 'metrics': {'type': 'array', 'items': {'type': 'object', 'required': ['label', 'value', 'unit', 'display'], 'properties': {'unit': {'anyOf': [{'enum': ['currency', 'x', '%', 'months'], 'type': 'string'}, {'type': 'null'}]}, 'label': {'type': 'string'}, 'value': {'type': ['number', 'null']}, 'display': {'type': 'string'}}, 'additionalProperties': False}, 'description': 'Every "Label: value" line of the result; value is the first number on the line'}, 'currency': {'type': ['string', 'null']}, 'benchmarks': {'type': 'array', 'items': {'type': 'object', 'required': ['metric', 'name', 'value', 'display', 'band', 'tone', 'read', 'target', 'segment', 'source'], 'properties': {'band': {'type': 'string'}, 'name': {'type': 'string'}, 'read': {'type': 'string'}, 'tone': {'enum': ['good', 'ok', 'warn', 'bad'], 'type': 'string'}, 'value': {'type': 'number'}, 'metric': {'type': 'string'}, 'source': {'type': 'string'}, 'target': {'type': 'string'}, 'display': {'type': 'string'}, 'segment': {'type': ['string', 'null']}}, 'additionalProperties': False}, 'description': 'Rule-of-thumb verdicts for the headline numbers'}, 'bookingUrl': {'type': 'string'}, 'calculator': {'type': 'string', 'description': 'Slug of the interactive calculator on rahuldsarker.co'}}, 'additionalProperties': False}
cac_payback_period_matrix
CAC Payback Period Matrix
Calculate months to recover fully-loaded CAC on a gross-margin basis versus a raw-revenue basis. See the full version at https://rahuldsarker.co/calculators/cac-payback-period-matrix
読み取り専用 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['cac', 'monthlyArpa', 'grossMarginPct'], 'properties': {'cac': {'type': 'number', 'description': 'Fully-loaded customer acquisition cost'}, 'segment': {'enum': ['smb', 'mid_market', 'enterprise'], 'type': 'string', 'description': 'Customer segment for the benchmark verdict: smb, mid_market or enterprise (default smb)'}, 'currency': {'type': 'string', 'pattern': '^[A-Za-z]{3}$', 'description': 'ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.'}, 'monthlyArpa': {'type': 'number', 'description': 'Average monthly revenue per account'}, 'grossMarginPct': {'type': 'number', 'description': 'Gross margin, as a percentage'}}}
出力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['kind', 'tool', 'title', 'calculator', 'url', 'bookingUrl', 'currency', 'compact', 'inputs', 'metrics', 'notes', 'benchmarks'], 'properties': {'url': {'type': 'string'}, 'kind': {'type': 'string', 'const': 'calculator'}, 'tool': {'type': 'string', 'description': 'The calculator tool that produced this result'}, 'notes': {'type': 'array', 'items': {'type': 'string'}}, 'title': {'type': 'string'}, 'inputs': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'compact': {'type': 'boolean'}, 'metrics': {'type': 'array', 'items': {'type': 'object', 'required': ['label', 'value', 'unit', 'display'], 'properties': {'unit': {'anyOf': [{'enum': ['currency', 'x', '%', 'months'], 'type': 'string'}, {'type': 'null'}]}, 'label': {'type': 'string'}, 'value': {'type': ['number', 'null']}, 'display': {'type': 'string'}}, 'additionalProperties': False}, 'description': 'Every "Label: value" line of the result; value is the first number on the line'}, 'currency': {'type': ['string', 'null']}, 'benchmarks': {'type': 'array', 'items': {'type': 'object', 'required': ['metric', 'name', 'value', 'display', 'band', 'tone', 'read', 'target', 'segment', 'source'], 'properties': {'band': {'type': 'string'}, 'name': {'type': 'string'}, 'read': {'type': 'string'}, 'tone': {'enum': ['good', 'ok', 'warn', 'bad'], 'type': 'string'}, 'value': {'type': 'number'}, 'metric': {'type': 'string'}, 'source': {'type': 'string'}, 'target': {'type': 'string'}, 'display': {'type': 'string'}, 'segment': {'type': ['string', 'null']}}, 'additionalProperties': False}, 'description': 'Rule-of-thumb verdicts for the headline numbers'}, 'bookingUrl': {'type': 'string'}, 'calculator': {'type': 'string', 'description': 'Slug of the interactive calculator on rahuldsarker.co'}}, 'additionalProperties': False}
cart_abandonment_calculator
Cart Abandonment Calculator
Calculate revenue lost to cart abandonment and how much a recovery flow could win back. See the full version at https://rahuldsarker.co/calculators/cart-abandonment-calculator
読み取り専用 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['cartsPerMonth', 'abandonmentRatePct', 'avgOrderValue', 'recoveryRatePct'], 'properties': {'currency': {'type': 'string', 'pattern': '^[A-Za-z]{3}$', 'description': 'ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.'}, 'avgOrderValue': {'type': 'number', 'description': 'Average order value'}, 'cartsPerMonth': {'type': 'number', 'description': 'Carts created per month'}, 'recoveryRatePct': {'type': 'number', 'description': 'Recovery rate from a win-back flow, as a percentage'}, 'abandonmentRatePct': {'type': 'number', 'description': 'Abandonment rate, as a percentage (industry average is near 70%)'}}}
出力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['kind', 'tool', 'title', 'calculator', 'url', 'bookingUrl', 'currency', 'compact', 'inputs', 'metrics', 'notes', 'benchmarks'], 'properties': {'url': {'type': 'string'}, 'kind': {'type': 'string', 'const': 'calculator'}, 'tool': {'type': 'string', 'description': 'The calculator tool that produced this result'}, 'notes': {'type': 'array', 'items': {'type': 'string'}}, 'title': {'type': 'string'}, 'inputs': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'compact': {'type': 'boolean'}, 'metrics': {'type': 'array', 'items': {'type': 'object', 'required': ['label', 'value', 'unit', 'display'], 'properties': {'unit': {'anyOf': [{'enum': ['currency', 'x', '%', 'months'], 'type': 'string'}, {'type': 'null'}]}, 'label': {'type': 'string'}, 'value': {'type': ['number', 'null']}, 'display': {'type': 'string'}}, 'additionalProperties': False}, 'description': 'Every "Label: value" line of the result; value is the first number on the line'}, 'currency': {'type': ['string', 'null']}, 'benchmarks': {'type': 'array', 'items': {'type': 'object', 'required': ['metric', 'name', 'value', 'display', 'band', 'tone', 'read', 'target', 'segment', 'source'], 'properties': {'band': {'type': 'string'}, 'name': {'type': 'string'}, 'read': {'type': 'string'}, 'tone': {'enum': ['good', 'ok', 'warn', 'bad'], 'type': 'string'}, 'value': {'type': 'number'}, 'metric': {'type': 'string'}, 'source': {'type': 'string'}, 'target': {'type': 'string'}, 'display': {'type': 'string'}, 'segment': {'type': ['string', 'null']}}, 'additionalProperties': False}, 'description': 'Rule-of-thumb verdicts for the headline numbers'}, 'bookingUrl': {'type': 'string'}, 'calculator': {'type': 'string', 'description': 'Slug of the interactive calculator on rahuldsarker.co'}}, 'additionalProperties': False}
channel_saturation_estimator
Channel Saturation Estimator
Project how many months until a channel's compounding CPA inflation pushes it past your max viable CPA. See the full version at https://rahuldsarker.co/calculators/channel-saturation-estimator
読み取り専用 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['currentCpa', 'monthlyInflationPct', 'maxCpa'], 'properties': {'maxCpa': {'type': 'number', 'description': 'Maximum viable CPA before the channel loses money'}, 'currency': {'type': 'string', 'pattern': '^[A-Za-z]{3}$', 'description': 'ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.'}, 'currentCpa': {'type': 'number', 'description': 'Current cost per acquisition (CPA)'}, 'monthlyInflationPct': {'type': 'number', 'description': 'Monthly CPA inflation rate, as a percentage'}}}
出力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['kind', 'tool', 'title', 'calculator', 'url', 'bookingUrl', 'currency', 'compact', 'inputs', 'metrics', 'notes', 'benchmarks'], 'properties': {'url': {'type': 'string'}, 'kind': {'type': 'string', 'const': 'calculator'}, 'tool': {'type': 'string', 'description': 'The calculator tool that produced this result'}, 'notes': {'type': 'array', 'items': {'type': 'string'}}, 'title': {'type': 'string'}, 'inputs': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'compact': {'type': 'boolean'}, 'metrics': {'type': 'array', 'items': {'type': 'object', 'required': ['label', 'value', 'unit', 'display'], 'properties': {'unit': {'anyOf': [{'enum': ['currency', 'x', '%', 'months'], 'type': 'string'}, {'type': 'null'}]}, 'label': {'type': 'string'}, 'value': {'type': ['number', 'null']}, 'display': {'type': 'string'}}, 'additionalProperties': False}, 'description': 'Every "Label: value" line of the result; value is the first number on the line'}, 'currency': {'type': ['string', 'null']}, 'benchmarks': {'type': 'array', 'items': {'type': 'object', 'required': ['metric', 'name', 'value', 'display', 'band', 'tone', 'read', 'target', 'segment', 'source'], 'properties': {'band': {'type': 'string'}, 'name': {'type': 'string'}, 'read': {'type': 'string'}, 'tone': {'enum': ['good', 'ok', 'warn', 'bad'], 'type': 'string'}, 'value': {'type': 'number'}, 'metric': {'type': 'string'}, 'source': {'type': 'string'}, 'target': {'type': 'string'}, 'display': {'type': 'string'}, 'segment': {'type': ['string', 'null']}}, 'additionalProperties': False}, 'description': 'Rule-of-thumb verdicts for the headline numbers'}, 'bookingUrl': {'type': 'string'}, 'calculator': {'type': 'string', 'description': 'Slug of the interactive calculator on rahuldsarker.co'}}, 'additionalProperties': False}
check_availability
Check Rahul D Sarker's open call times
List open times for a free call with Rahul D Sarker (fractional CMO and RevOps consultant), live from his calendar. Each time comes with a link that opens the booking form with that time selected; the person confirms and books on the site. Use when someone wants to talk to Rahul, get help with their marketing or RevOps, or book a consultation.
読み取り専用 外部アクセスあり
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'days': {'type': 'integer', 'maximum': 21, 'minimum': 1, 'description': 'How many days ahead to look, 1 to 21 (default 7)'}, 'timezone': {'type': 'string', 'maxLength': 60, 'description': 'IANA time zone for the times shown, e.g. "America/New_York" or "Asia/Kolkata" (default Asia/Kolkata)'}, 'meetingType': {'type': 'string', 'maxLength': 40, 'description': 'A meeting type id, if more than one is offered'}}}
competitor_ad_spend_benchmarker
Competitor Ad Spend Benchmarker
Estimate a competitor's ad spend from share-of-voice data, assuming spend maps roughly to share of voice within the same auction. See the full version at https://rahuldsarker.co/calculators/competitor-ad-spend-benchmarker
読み取り専用 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['yourSpend', 'yourSovPct', 'competitorSovPct'], 'properties': {'currency': {'type': 'string', 'pattern': '^[A-Za-z]{3}$', 'description': 'ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.'}, 'yourSpend': {'type': 'number', 'description': 'Your monthly ad spend'}, 'yourSovPct': {'type': 'number', 'description': 'Your share of voice / impression share in the category, as a percentage'}, 'competitorSovPct': {'type': 'number', 'description': 'Competitor share of voice, as a percentage, e.g. from an auction-insights tool'}}}
出力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['kind', 'tool', 'title', 'calculator', 'url', 'bookingUrl', 'currency', 'compact', 'inputs', 'metrics', 'notes', 'benchmarks'], 'properties': {'url': {'type': 'string'}, 'kind': {'type': 'string', 'const': 'calculator'}, 'tool': {'type': 'string', 'description': 'The calculator tool that produced this result'}, 'notes': {'type': 'array', 'items': {'type': 'string'}}, 'title': {'type': 'string'}, 'inputs': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'compact': {'type': 'boolean'}, 'metrics': {'type': 'array', 'items': {'type': 'object', 'required': ['label', 'value', 'unit', 'display'], 'properties': {'unit': {'anyOf': [{'enum': ['currency', 'x', '%', 'months'], 'type': 'string'}, {'type': 'null'}]}, 'label': {'type': 'string'}, 'value': {'type': ['number', 'null']}, 'display': {'type': 'string'}}, 'additionalProperties': False}, 'description': 'Every "Label: value" line of the result; value is the first number on the line'}, 'currency': {'type': ['string', 'null']}, 'benchmarks': {'type': 'array', 'items': {'type': 'object', 'required': ['metric', 'name', 'value', 'display', 'band', 'tone', 'read', 'target', 'segment', 'source'], 'properties': {'band': {'type': 'string'}, 'name': {'type': 'string'}, 'read': {'type': 'string'}, 'tone': {'enum': ['good', 'ok', 'warn', 'bad'], 'type': 'string'}, 'value': {'type': 'number'}, 'metric': {'type': 'string'}, 'source': {'type': 'string'}, 'target': {'type': 'string'}, 'display': {'type': 'string'}, 'segment': {'type': ['string', 'null']}}, 'additionalProperties': False}, 'description': 'Rule-of-thumb verdicts for the headline numbers'}, 'bookingUrl': {'type': 'string'}, 'calculator': {'type': 'string', 'description': 'Slug of the interactive calculator on rahuldsarker.co'}}, 'additionalProperties': False}
contract_redline_duration_predictor
Contract Redline Duration Predictor
Predict how long legal redlines will take, whether the deal will slip past quarter-end, and the revenue at risk. See the full version at https://rahuldsarker.co/calculators/contract-redline-duration-predictor
読み取り専用 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['baseLegalReviewDays', 'expectedRedlineRounds', 'daysPerRound', 'paper', 'dealValue', 'daysToQuarterEnd'], 'properties': {'paper': {'enum': ['yours', 'theirs'], 'type': 'string', 'description': 'Whose paper: "yours" for your standard MSA, "theirs" for their paper/custom contract (drags roughly 1.8x)'}, 'currency': {'type': 'string', 'pattern': '^[A-Za-z]{3}$', 'description': 'ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.'}, 'dealValue': {'type': 'number', 'description': 'Deal value'}, 'daysPerRound': {'type': 'number', 'description': 'Turnaround days per redline round'}, 'daysToQuarterEnd': {'type': 'number', 'description': 'Days remaining to quarter-end'}, 'baseLegalReviewDays': {'type': 'number', 'description': 'Base legal review time, in days'}, 'expectedRedlineRounds': {'type': 'number', 'description': 'Expected number of redline rounds'}}}
出力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['kind', 'tool', 'title', 'calculator', 'url', 'bookingUrl', 'currency', 'compact', 'inputs', 'metrics', 'notes', 'benchmarks'], 'properties': {'url': {'type': 'string'}, 'kind': {'type': 'string', 'const': 'calculator'}, 'tool': {'type': 'string', 'description': 'The calculator tool that produced this result'}, 'notes': {'type': 'array', 'items': {'type': 'string'}}, 'title': {'type': 'string'}, 'inputs': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'compact': {'type': 'boolean'}, 'metrics': {'type': 'array', 'items': {'type': 'object', 'required': ['label', 'value', 'unit', 'display'], 'properties': {'unit': {'anyOf': [{'enum': ['currency', 'x', '%', 'months'], 'type': 'string'}, {'type': 'null'}]}, 'label': {'type': 'string'}, 'value': {'type': ['number', 'null']}, 'display': {'type': 'string'}}, 'additionalProperties': False}, 'description': 'Every "Label: value" line of the result; value is the first number on the line'}, 'currency': {'type': ['string', 'null']}, 'benchmarks': {'type': 'array', 'items': {'type': 'object', 'required': ['metric', 'name', 'value', 'display', 'band', 'tone', 'read', 'target', 'segment', 'source'], 'properties': {'band': {'type': 'string'}, 'name': {'type': 'string'}, 'read': {'type': 'string'}, 'tone': {'enum': ['good', 'ok', 'warn', 'bad'], 'type': 'string'}, 'value': {'type': 'number'}, 'metric': {'type': 'string'}, 'source': {'type': 'string'}, 'target': {'type': 'string'}, 'display': {'type': 'string'}, 'segment': {'type': ['string', 'null']}}, 'additionalProperties': False}, 'description': 'Rule-of-thumb verdicts for the headline numbers'}, 'bookingUrl': {'type': 'string'}, 'calculator': {'type': 'string', 'description': 'Slug of the interactive calculator on rahuldsarker.co'}}, 'additionalProperties': False}
conversion_funnel
Conversion Funnel Calculator
Calculate conversion rate and the traffic needed to hit a target number of conversions at that rate. See the full version at https://rahuldsarker.co/calculators/conversion-funnel
読み取り専用 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['visitors', 'conversions', 'target'], 'properties': {'target': {'type': 'number', 'description': 'Target number of conversions to reach'}, 'currency': {'type': 'string', 'pattern': '^[A-Za-z]{3}$', 'description': 'ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.'}, 'visitors': {'type': 'number', 'description': 'Visitors in the period'}, 'conversions': {'type': 'number', 'description': 'Conversions (signups, leads, or purchases) in that same period'}}}
出力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['kind', 'tool', 'title', 'calculator', 'url', 'bookingUrl', 'currency', 'compact', 'inputs', 'metrics', 'notes', 'benchmarks'], 'properties': {'url': {'type': 'string'}, 'kind': {'type': 'string', 'const': 'calculator'}, 'tool': {'type': 'string', 'description': 'The calculator tool that produced this result'}, 'notes': {'type': 'array', 'items': {'type': 'string'}}, 'title': {'type': 'string'}, 'inputs': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'compact': {'type': 'boolean'}, 'metrics': {'type': 'array', 'items': {'type': 'object', 'required': ['label', 'value', 'unit', 'display'], 'properties': {'unit': {'anyOf': [{'enum': ['currency', 'x', '%', 'months'], 'type': 'string'}, {'type': 'null'}]}, 'label': {'type': 'string'}, 'value': {'type': ['number', 'null']}, 'display': {'type': 'string'}}, 'additionalProperties': False}, 'description': 'Every "Label: value" line of the result; value is the first number on the line'}, 'currency': {'type': ['string', 'null']}, 'benchmarks': {'type': 'array', 'items': {'type': 'object', 'required': ['metric', 'name', 'value', 'display', 'band', 'tone', 'read', 'target', 'segment', 'source'], 'properties': {'band': {'type': 'string'}, 'name': {'type': 'string'}, 'read': {'type': 'string'}, 'tone': {'enum': ['good', 'ok', 'warn', 'bad'], 'type': 'string'}, 'value': {'type': 'number'}, 'metric': {'type': 'string'}, 'source': {'type': 'string'}, 'target': {'type': 'string'}, 'display': {'type': 'string'}, 'segment': {'type': ['string', 'null']}}, 'additionalProperties': False}, 'description': 'Rule-of-thumb verdicts for the headline numbers'}, 'bookingUrl': {'type': 'string'}, 'calculator': {'type': 'string', 'description': 'Slug of the interactive calculator on rahuldsarker.co'}}, 'additionalProperties': False}
cpa_to_cac_scalability_matrix
CPA to CAC Scalability Matrix
Project how CPA/CAC inflates as you double and triple ad spend, given a per-doubling decay rate. See the full version at https://rahuldsarker.co/calculators/cpa-to-cac-scalability-matrix
読み取り専用 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['spend', 'cpa', 'decayPct'], 'properties': {'cpa': {'type': 'number', 'description': 'Current CPA / CAC'}, 'spend': {'type': 'number', 'description': 'Current monthly ad spend'}, 'currency': {'type': 'string', 'pattern': '^[A-Za-z]{3}$', 'description': 'ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.'}, 'decayPct': {'type': 'number', 'description': 'CPA inflation per doubling of spend, as a percentage'}}}
出力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['kind', 'tool', 'title', 'calculator', 'url', 'bookingUrl', 'currency', 'compact', 'inputs', 'metrics', 'notes', 'benchmarks'], 'properties': {'url': {'type': 'string'}, 'kind': {'type': 'string', 'const': 'calculator'}, 'tool': {'type': 'string', 'description': 'The calculator tool that produced this result'}, 'notes': {'type': 'array', 'items': {'type': 'string'}}, 'title': {'type': 'string'}, 'inputs': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'compact': {'type': 'boolean'}, 'metrics': {'type': 'array', 'items': {'type': 'object', 'required': ['label', 'value', 'unit', 'display'], 'properties': {'unit': {'anyOf': [{'enum': ['currency', 'x', '%', 'months'], 'type': 'string'}, {'type': 'null'}]}, 'label': {'type': 'string'}, 'value': {'type': ['number', 'null']}, 'display': {'type': 'string'}}, 'additionalProperties': False}, 'description': 'Every "Label: value" line of the result; value is the first number on the line'}, 'currency': {'type': ['string', 'null']}, 'benchmarks': {'type': 'array', 'items': {'type': 'object', 'required': ['metric', 'name', 'value', 'display', 'band', 'tone', 'read', 'target', 'segment', 'source'], 'properties': {'band': {'type': 'string'}, 'name': {'type': 'string'}, 'read': {'type': 'string'}, 'tone': {'enum': ['good', 'ok', 'warn', 'bad'], 'type': 'string'}, 'value': {'type': 'number'}, 'metric': {'type': 'string'}, 'source': {'type': 'string'}, 'target': {'type': 'string'}, 'display': {'type': 'string'}, 'segment': {'type': ['string', 'null']}}, 'additionalProperties': False}, 'description': 'Rule-of-thumb verdicts for the headline numbers'}, 'bookingUrl': {'type': 'string'}, 'calculator': {'type': 'string', 'description': 'Slug of the interactive calculator on rahuldsarker.co'}}, 'additionalProperties': False}
cpl_cpa_calculator
CPL / CPA Calculator
Calculate cost per lead, expected customers, and cost per acquisition from spend, leads, and a lead-to-customer conversion rate. See the full version at https://rahuldsarker.co/calculators/cpl-cpa
読み取り専用 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['spend', 'leads', 'convPct'], 'properties': {'leads': {'type': 'number', 'description': 'Leads generated'}, 'spend': {'type': 'number', 'description': 'Ad spend'}, 'convPct': {'type': 'number', 'description': 'Lead-to-customer conversion rate, as a percentage'}, 'currency': {'type': 'string', 'pattern': '^[A-Za-z]{3}$', 'description': 'ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.'}}}
出力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['kind', 'tool', 'title', 'calculator', 'url', 'bookingUrl', 'currency', 'compact', 'inputs', 'metrics', 'notes', 'benchmarks'], 'properties': {'url': {'type': 'string'}, 'kind': {'type': 'string', 'const': 'calculator'}, 'tool': {'type': 'string', 'description': 'The calculator tool that produced this result'}, 'notes': {'type': 'array', 'items': {'type': 'string'}}, 'title': {'type': 'string'}, 'inputs': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'compact': {'type': 'boolean'}, 'metrics': {'type': 'array', 'items': {'type': 'object', 'required': ['label', 'value', 'unit', 'display'], 'properties': {'unit': {'anyOf': [{'enum': ['currency', 'x', '%', 'months'], 'type': 'string'}, {'type': 'null'}]}, 'label': {'type': 'string'}, 'value': {'type': ['number', 'null']}, 'display': {'type': 'string'}}, 'additionalProperties': False}, 'description': 'Every "Label: value" line of the result; value is the first number on the line'}, 'currency': {'type': ['string', 'null']}, 'benchmarks': {'type': 'array', 'items': {'type': 'object', 'required': ['metric', 'name', 'value', 'display', 'band', 'tone', 'read', 'target', 'segment', 'source'], 'properties': {'band': {'type': 'string'}, 'name': {'type': 'string'}, 'read': {'type': 'string'}, 'tone': {'enum': ['good', 'ok', 'warn', 'bad'], 'type': 'string'}, 'value': {'type': 'number'}, 'metric': {'type': 'string'}, 'source': {'type': 'string'}, 'target': {'type': 'string'}, 'display': {'type': 'string'}, 'segment': {'type': ['string', 'null']}}, 'additionalProperties': False}, 'description': 'Rule-of-thumb verdicts for the headline numbers'}, 'bookingUrl': {'type': 'string'}, 'calculator': {'type': 'string', 'description': 'Slug of the interactive calculator on rahuldsarker.co'}}, 'additionalProperties': False}
creative_testing_duration_forecaster
Creative Testing Duration Forecaster
Forecast how many days an ad creative test needs to reach a sound sample size, from daily spend, expected CPA, variant count, and conversions needed per variant. See the full version at https://rahuldsarker.co/calculators/creative-testing-duration-forecaster
読み取り専用 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['dailySpend', 'cpa', 'variants', 'convPerVariant'], 'properties': {'cpa': {'type': 'number', 'description': 'Expected CPA'}, 'currency': {'type': 'string', 'pattern': '^[A-Za-z]{3}$', 'description': 'ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.'}, 'variants': {'type': 'number', 'description': 'Number of variants being tested'}, 'dailySpend': {'type': 'number', 'description': 'Daily test spend'}, 'convPerVariant': {'type': 'number', 'description': 'Conversions needed per variant for a stable read'}}}
出力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['kind', 'tool', 'title', 'calculator', 'url', 'bookingUrl', 'currency', 'compact', 'inputs', 'metrics', 'notes', 'benchmarks'], 'properties': {'url': {'type': 'string'}, 'kind': {'type': 'string', 'const': 'calculator'}, 'tool': {'type': 'string', 'description': 'The calculator tool that produced this result'}, 'notes': {'type': 'array', 'items': {'type': 'string'}}, 'title': {'type': 'string'}, 'inputs': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'compact': {'type': 'boolean'}, 'metrics': {'type': 'array', 'items': {'type': 'object', 'required': ['label', 'value', 'unit', 'display'], 'properties': {'unit': {'anyOf': [{'enum': ['currency', 'x', '%', 'months'], 'type': 'string'}, {'type': 'null'}]}, 'label': {'type': 'string'}, 'value': {'type': ['number', 'null']}, 'display': {'type': 'string'}}, 'additionalProperties': False}, 'description': 'Every "Label: value" line of the result; value is the first number on the line'}, 'currency': {'type': ['string', 'null']}, 'benchmarks': {'type': 'array', 'items': {'type': 'object', 'required': ['metric', 'name', 'value', 'display', 'band', 'tone', 'read', 'target', 'segment', 'source'], 'properties': {'band': {'type': 'string'}, 'name': {'type': 'string'}, 'read': {'type': 'string'}, 'tone': {'enum': ['good', 'ok', 'warn', 'bad'], 'type': 'string'}, 'value': {'type': 'number'}, 'metric': {'type': 'string'}, 'source': {'type': 'string'}, 'target': {'type': 'string'}, 'display': {'type': 'string'}, 'segment': {'type': ['string', 'null']}}, 'additionalProperties': False}, 'description': 'Rule-of-thumb verdicts for the headline numbers'}, 'bookingUrl': {'type': 'string'}, 'calculator': {'type': 'string', 'description': 'Slug of the interactive calculator on rahuldsarker.co'}}, 'additionalProperties': False}
crm_cleanup_roi_calculator
CRM Cleanup ROI Calculator
Quantify the rep hours and revenue lost to dirty CRM data each year, and the selling capacity a cleanup would free up. See the full version at https://rahuldsarker.co/calculators/crm-cleanup-roi-calculator
読み取り専用 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['reps', 'hoursWastedPerWeek', 'hourlyCost'], 'properties': {'reps': {'type': 'number', 'description': 'Reps/users on the CRM'}, 'currency': {'type': 'string', 'pattern': '^[A-Za-z]{3}$', 'description': 'ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.'}, 'hourlyCost': {'type': 'number', 'description': 'Fully-loaded hourly cost per rep'}, 'hoursWastedPerWeek': {'type': 'number', 'description': 'Hours per week lost to bad data, per rep'}}}
出力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['kind', 'tool', 'title', 'calculator', 'url', 'bookingUrl', 'currency', 'compact', 'inputs', 'metrics', 'notes', 'benchmarks'], 'properties': {'url': {'type': 'string'}, 'kind': {'type': 'string', 'const': 'calculator'}, 'tool': {'type': 'string', 'description': 'The calculator tool that produced this result'}, 'notes': {'type': 'array', 'items': {'type': 'string'}}, 'title': {'type': 'string'}, 'inputs': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'compact': {'type': 'boolean'}, 'metrics': {'type': 'array', 'items': {'type': 'object', 'required': ['label', 'value', 'unit', 'display'], 'properties': {'unit': {'anyOf': [{'enum': ['currency', 'x', '%', 'months'], 'type': 'string'}, {'type': 'null'}]}, 'label': {'type': 'string'}, 'value': {'type': ['number', 'null']}, 'display': {'type': 'string'}}, 'additionalProperties': False}, 'description': 'Every "Label: value" line of the result; value is the first number on the line'}, 'currency': {'type': ['string', 'null']}, 'benchmarks': {'type': 'array', 'items': {'type': 'object', 'required': ['metric', 'name', 'value', 'display', 'band', 'tone', 'read', 'target', 'segment', 'source'], 'properties': {'band': {'type': 'string'}, 'name': {'type': 'string'}, 'read': {'type': 'string'}, 'tone': {'enum': ['good', 'ok', 'warn', 'bad'], 'type': 'string'}, 'value': {'type': 'number'}, 'metric': {'type': 'string'}, 'source': {'type': 'string'}, 'target': {'type': 'string'}, 'display': {'type': 'string'}, 'segment': {'type': ['string', 'null']}}, 'additionalProperties': False}, 'description': 'Rule-of-thumb verdicts for the headline numbers'}, 'bookingUrl': {'type': 'string'}, 'calculator': {'type': 'string', 'description': 'Slug of the interactive calculator on rahuldsarker.co'}}, 'additionalProperties': False}
crm_roi_calculator
CRM ROI Calculator
Weigh a CRM subscription and implementation cost against the win-rate lift it buys. See the full version at https://rahuldsarker.co/calculators/crm-roi-calculator
読み取り専用 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['annualCost', 'implementationCost', 'reps', 'dealsPerRepPerYear', 'avgDealValue', 'winRateLiftPct'], 'properties': {'reps': {'type': 'number', 'description': 'Number of sales reps'}, 'currency': {'type': 'string', 'pattern': '^[A-Za-z]{3}$', 'description': 'ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.'}, 'annualCost': {'type': 'number', 'description': 'Annual CRM subscription cost'}, 'avgDealValue': {'type': 'number', 'description': 'Average deal value'}, 'winRateLiftPct': {'type': 'number', 'description': 'Expected win-rate improvement from the CRM, as a percentage'}, 'dealsPerRepPerYear': {'type': 'number', 'description': 'Average deals closed per rep per year, before the CRM'}, 'implementationCost': {'type': 'number', 'description': 'One-time implementation/setup cost'}}}
出力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['kind', 'tool', 'title', 'calculator', 'url', 'bookingUrl', 'currency', 'compact', 'inputs', 'metrics', 'notes', 'benchmarks'], 'properties': {'url': {'type': 'string'}, 'kind': {'type': 'string', 'const': 'calculator'}, 'tool': {'type': 'string', 'description': 'The calculator tool that produced this result'}, 'notes': {'type': 'array', 'items': {'type': 'string'}}, 'title': {'type': 'string'}, 'inputs': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'compact': {'type': 'boolean'}, 'metrics': {'type': 'array', 'items': {'type': 'object', 'required': ['label', 'value', 'unit', 'display'], 'properties': {'unit': {'anyOf': [{'enum': ['currency', 'x', '%', 'months'], 'type': 'string'}, {'type': 'null'}]}, 'label': {'type': 'string'}, 'value': {'type': ['number', 'null']}, 'display': {'type': 'string'}}, 'additionalProperties': False}, 'description': 'Every "Label: value" line of the result; value is the first number on the line'}, 'currency': {'type': ['string', 'null']}, 'benchmarks': {'type': 'array', 'items': {'type': 'object', 'required': ['metric', 'name', 'value', 'display', 'band', 'tone', 'read', 'target', 'segment', 'source'], 'properties': {'band': {'type': 'string'}, 'name': {'type': 'string'}, 'read': {'type': 'string'}, 'tone': {'enum': ['good', 'ok', 'warn', 'bad'], 'type': 'string'}, 'value': {'type': 'number'}, 'metric': {'type': 'string'}, 'source': {'type': 'string'}, 'target': {'type': 'string'}, 'display': {'type': 'string'}, 'segment': {'type': ['string', 'null']}}, 'additionalProperties': False}, 'description': 'Rule-of-thumb verdicts for the headline numbers'}, 'bookingUrl': {'type': 'string'}, 'calculator': {'type': 'string', 'description': 'Slug of the interactive calculator on rahuldsarker.co'}}, 'additionalProperties': False}
cross_channel_ad_spend_allocator
Cross-Channel Ad Spend Allocator
Suggest a starting Google/Meta/LinkedIn budget split based on total budget and average contract value. See the full version at https://rahuldsarker.co/calculators/cross-channel-ad-spend-allocator
読み取り専用 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['budget', 'acv'], 'properties': {'acv': {'type': 'number', 'description': 'Average contract value'}, 'budget': {'type': 'number', 'description': 'Total monthly budget'}, 'currency': {'type': 'string', 'pattern': '^[A-Za-z]{3}$', 'description': 'ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.'}}}
出力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['kind', 'tool', 'title', 'calculator', 'url', 'bookingUrl', 'currency', 'compact', 'inputs', 'metrics', 'notes', 'benchmarks'], 'properties': {'url': {'type': 'string'}, 'kind': {'type': 'string', 'const': 'calculator'}, 'tool': {'type': 'string', 'description': 'The calculator tool that produced this result'}, 'notes': {'type': 'array', 'items': {'type': 'string'}}, 'title': {'type': 'string'}, 'inputs': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'compact': {'type': 'boolean'}, 'metrics': {'type': 'array', 'items': {'type': 'object', 'required': ['label', 'value', 'unit', 'display'], 'properties': {'unit': {'anyOf': [{'enum': ['currency', 'x', '%', 'months'], 'type': 'string'}, {'type': 'null'}]}, 'label': {'type': 'string'}, 'value': {'type': ['number', 'null']}, 'display': {'type': 'string'}}, 'additionalProperties': False}, 'description': 'Every "Label: value" line of the result; value is the first number on the line'}, 'currency': {'type': ['string', 'null']}, 'benchmarks': {'type': 'array', 'items': {'type': 'object', 'required': ['metric', 'name', 'value', 'display', 'band', 'tone', 'read', 'target', 'segment', 'source'], 'properties': {'band': {'type': 'string'}, 'name': {'type': 'string'}, 'read': {'type': 'string'}, 'tone': {'enum': ['good', 'ok', 'warn', 'bad'], 'type': 'string'}, 'value': {'type': 'number'}, 'metric': {'type': 'string'}, 'source': {'type': 'string'}, 'target': {'type': 'string'}, 'display': {'type': 'string'}, 'segment': {'type': ['string', 'null']}}, 'additionalProperties': False}, 'description': 'Rule-of-thumb verdicts for the headline numbers'}, 'bookingUrl': {'type': 'string'}, 'calculator': {'type': 'string', 'description': 'Slug of the interactive calculator on rahuldsarker.co'}}, 'additionalProperties': False}
cross_sell_opportunity_estimator
Cross-Sell Opportunity Estimator
Estimate the expansion ARR available from cross-selling a second product into your existing single-product customer base. See the full version at https://rahuldsarker.co/calculators/cross-sell-opportunity-estimator
読み取り専用 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['activeCustomers', 'singleProductSharePct', 'expectedAttachRatePct', 'crossSellAcv'], 'properties': {'currency': {'type': 'string', 'pattern': '^[A-Za-z]{3}$', 'description': 'ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.'}, 'crossSellAcv': {'type': 'number', 'description': 'Cross-sell ACV'}, 'activeCustomers': {'type': 'number', 'description': 'Active customers'}, 'expectedAttachRatePct': {'type': 'number', 'description': 'Expected attach rate among eligible customers, as a percentage'}, 'singleProductSharePct': {'type': 'number', 'description': 'Share of customers on a single product (not yet cross-sold), as a percentage'}}}
出力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['kind', 'tool', 'title', 'calculator', 'url', 'bookingUrl', 'currency', 'compact', 'inputs', 'metrics', 'notes', 'benchmarks'], 'properties': {'url': {'type': 'string'}, 'kind': {'type': 'string', 'const': 'calculator'}, 'tool': {'type': 'string', 'description': 'The calculator tool that produced this result'}, 'notes': {'type': 'array', 'items': {'type': 'string'}}, 'title': {'type': 'string'}, 'inputs': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'compact': {'type': 'boolean'}, 'metrics': {'type': 'array', 'items': {'type': 'object', 'required': ['label', 'value', 'unit', 'display'], 'properties': {'unit': {'anyOf': [{'enum': ['currency', 'x', '%', 'months'], 'type': 'string'}, {'type': 'null'}]}, 'label': {'type': 'string'}, 'value': {'type': ['number', 'null']}, 'display': {'type': 'string'}}, 'additionalProperties': False}, 'description': 'Every "Label: value" line of the result; value is the first number on the line'}, 'currency': {'type': ['string', 'null']}, 'benchmarks': {'type': 'array', 'items': {'type': 'object', 'required': ['metric', 'name', 'value', 'display', 'band', 'tone', 'read', 'target', 'segment', 'source'], 'properties': {'band': {'type': 'string'}, 'name': {'type': 'string'}, 'read': {'type': 'string'}, 'tone': {'enum': ['good', 'ok', 'warn', 'bad'], 'type': 'string'}, 'value': {'type': 'number'}, 'metric': {'type': 'string'}, 'source': {'type': 'string'}, 'target': {'type': 'string'}, 'display': {'type': 'string'}, 'segment': {'type': ['string', 'null']}}, 'additionalProperties': False}, 'description': 'Rule-of-thumb verdicts for the headline numbers'}, 'bookingUrl': {'type': 'string'}, 'calculator': {'type': 'string', 'description': 'Slug of the interactive calculator on rahuldsarker.co'}}, 'additionalProperties': False}
cta_visual_hierarchy_tester
CTA Visual Hierarchy Tester
Score a call-to-action button's visibility using its real WCAG contrast ratio against the background plus size and placement. See the full version at https://rahuldsarker.co/calculators/cta-visual-hierarchy-tester
読み取り専用 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['buttonColorHex', 'backgroundColorHex', 'size', 'placement'], 'properties': {'size': {'enum': ['large', 'medium', 'small'], 'type': 'string', 'description': 'Button size: large/prominent, medium, or small/text-like'}, 'currency': {'type': 'string', 'pattern': '^[A-Za-z]{3}$', 'description': 'ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.'}, 'placement': {'enum': ['primary', 'inline', 'buried'], 'type': 'string', 'description': 'Placement: primary (above fold, standout), inline with content, or buried (below fold/crowded)'}, 'buttonColorHex': {'type': 'string', 'description': 'Button color as a hex code, e.g. "#7C3AED"'}, 'backgroundColorHex': {'type': 'string', 'description': 'Background color as a hex code, e.g. "#FAFAFB"'}}}
出力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['kind', 'tool', 'title', 'calculator', 'url', 'bookingUrl', 'currency', 'compact', 'inputs', 'metrics', 'notes', 'benchmarks'], 'properties': {'url': {'type': 'string'}, 'kind': {'type': 'string', 'const': 'calculator'}, 'tool': {'type': 'string', 'description': 'The calculator tool that produced this result'}, 'notes': {'type': 'array', 'items': {'type': 'string'}}, 'title': {'type': 'string'}, 'inputs': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'compact': {'type': 'boolean'}, 'metrics': {'type': 'array', 'items': {'type': 'object', 'required': ['label', 'value', 'unit', 'display'], 'properties': {'unit': {'anyOf': [{'enum': ['currency', 'x', '%', 'months'], 'type': 'string'}, {'type': 'null'}]}, 'label': {'type': 'string'}, 'value': {'type': ['number', 'null']}, 'display': {'type': 'string'}}, 'additionalProperties': False}, 'description': 'Every "Label: value" line of the result; value is the first number on the line'}, 'currency': {'type': ['string', 'null']}, 'benchmarks': {'type': 'array', 'items': {'type': 'object', 'required': ['metric', 'name', 'value', 'display', 'band', 'tone', 'read', 'target', 'segment', 'source'], 'properties': {'band': {'type': 'string'}, 'name': {'type': 'string'}, 'read': {'type': 'string'}, 'tone': {'enum': ['good', 'ok', 'warn', 'bad'], 'type': 'string'}, 'value': {'type': 'number'}, 'metric': {'type': 'string'}, 'source': {'type': 'string'}, 'target': {'type': 'string'}, 'display': {'type': 'string'}, 'segment': {'type': ['string', 'null']}}, 'additionalProperties': False}, 'description': 'Rule-of-thumb verdicts for the headline numbers'}, 'bookingUrl': {'type': 'string'}, 'calculator': {'type': 'string', 'description': 'Slug of the interactive calculator on rahuldsarker.co'}}, 'additionalProperties': False}
customer_expansion_revenue_matrix
Customer Expansion Revenue Matrix
Compound net monthly expansion revenue (upsell + cross-sell minus contraction) forward 1, 2, and 3 years from current ARR, with no new logos. See the full version at https://rahuldsarker.co/calculators/customer-expansion-revenue-matrix
読み取り専用 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['arr', 'monthlyExpansionPct'], 'properties': {'arr': {'type': 'number', 'description': 'Current ARR'}, 'currency': {'type': 'string', 'pattern': '^[A-Za-z]{3}$', 'description': 'ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.'}, 'monthlyExpansionPct': {'type': 'number', 'description': 'Net monthly expansion rate from existing accounts, as a percentage'}}}
出力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['kind', 'tool', 'title', 'calculator', 'url', 'bookingUrl', 'currency', 'compact', 'inputs', 'metrics', 'notes', 'benchmarks'], 'properties': {'url': {'type': 'string'}, 'kind': {'type': 'string', 'const': 'calculator'}, 'tool': {'type': 'string', 'description': 'The calculator tool that produced this result'}, 'notes': {'type': 'array', 'items': {'type': 'string'}}, 'title': {'type': 'string'}, 'inputs': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'compact': {'type': 'boolean'}, 'metrics': {'type': 'array', 'items': {'type': 'object', 'required': ['label', 'value', 'unit', 'display'], 'properties': {'unit': {'anyOf': [{'enum': ['currency', 'x', '%', 'months'], 'type': 'string'}, {'type': 'null'}]}, 'label': {'type': 'string'}, 'value': {'type': ['number', 'null']}, 'display': {'type': 'string'}}, 'additionalProperties': False}, 'description': 'Every "Label: value" line of the result; value is the first number on the line'}, 'currency': {'type': ['string', 'null']}, 'benchmarks': {'type': 'array', 'items': {'type': 'object', 'required': ['metric', 'name', 'value', 'display', 'band', 'tone', 'read', 'target', 'segment', 'source'], 'properties': {'band': {'type': 'string'}, 'name': {'type': 'string'}, 'read': {'type': 'string'}, 'tone': {'enum': ['good', 'ok', 'warn', 'bad'], 'type': 'string'}, 'value': {'type': 'number'}, 'metric': {'type': 'string'}, 'source': {'type': 'string'}, 'target': {'type': 'string'}, 'display': {'type': 'string'}, 'segment': {'type': ['string', 'null']}}, 'additionalProperties': False}, 'description': 'Rule-of-thumb verdicts for the headline numbers'}, 'bookingUrl': {'type': 'string'}, 'calculator': {'type': 'string', 'description': 'Slug of the interactive calculator on rahuldsarker.co'}}, 'additionalProperties': False}
customer_success_capacity_planner
Customer Success Capacity Planner
Compare CSM account load against a healthy book size to see capacity utilization and the hiring gap. See the full version at https://rahuldsarker.co/calculators/customer-success-capacity-planner
読み取り専用 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['totalAccounts', 'csmCount', 'healthyAccountsPerCsm'], 'properties': {'csmCount': {'type': 'number', 'description': 'Number of customer success managers'}, 'currency': {'type': 'string', 'pattern': '^[A-Za-z]{3}$', 'description': 'ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.'}, 'totalAccounts': {'type': 'number', 'description': 'Total accounts under management'}, 'healthyAccountsPerCsm': {'type': 'number', 'description': 'Healthy accounts per CSM, before retention starts slipping'}}}
出力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['kind', 'tool', 'title', 'calculator', 'url', 'bookingUrl', 'currency', 'compact', 'inputs', 'metrics', 'notes', 'benchmarks'], 'properties': {'url': {'type': 'string'}, 'kind': {'type': 'string', 'const': 'calculator'}, 'tool': {'type': 'string', 'description': 'The calculator tool that produced this result'}, 'notes': {'type': 'array', 'items': {'type': 'string'}}, 'title': {'type': 'string'}, 'inputs': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'compact': {'type': 'boolean'}, 'metrics': {'type': 'array', 'items': {'type': 'object', 'required': ['label', 'value', 'unit', 'display'], 'properties': {'unit': {'anyOf': [{'enum': ['currency', 'x', '%', 'months'], 'type': 'string'}, {'type': 'null'}]}, 'label': {'type': 'string'}, 'value': {'type': ['number', 'null']}, 'display': {'type': 'string'}}, 'additionalProperties': False}, 'description': 'Every "Label: value" line of the result; value is the first number on the line'}, 'currency': {'type': ['string', 'null']}, 'benchmarks': {'type': 'array', 'items': {'type': 'object', 'required': ['metric', 'name', 'value', 'display', 'band', 'tone', 'read', 'target', 'segment', 'source'], 'properties': {'band': {'type': 'string'}, 'name': {'type': 'string'}, 'read': {'type': 'string'}, 'tone': {'enum': ['good', 'ok', 'warn', 'bad'], 'type': 'string'}, 'value': {'type': 'number'}, 'metric': {'type': 'string'}, 'source': {'type': 'string'}, 'target': {'type': 'string'}, 'display': {'type': 'string'}, 'segment': {'type': ['string', 'null']}}, 'additionalProperties': False}, 'description': 'Rule-of-thumb verdicts for the headline numbers'}, 'bookingUrl': {'type': 'string'}, 'calculator': {'type': 'string', 'description': 'Slug of the interactive calculator on rahuldsarker.co'}}, 'additionalProperties': False}
data_enrichment_value_predictor
Data Enrichment Value Predictor
Compare the cost of manual rep research against an enrichment tool subscription, and calculate the net monthly savings and ROI. See the full version at https://rahuldsarker.co/calculators/data-enrichment-value-predictor
読み取り専用 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['repsDoingResearch', 'leadsResearchedPerWeek', 'minutesPerLead', 'hourlyCost', 'toolCostPerMonth'], 'properties': {'currency': {'type': 'string', 'pattern': '^[A-Za-z]{3}$', 'description': 'ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.'}, 'hourlyCost': {'type': 'number', 'description': 'Fully-loaded hourly cost per rep'}, 'minutesPerLead': {'type': 'number', 'description': 'Minutes per lead spent on manual research'}, 'toolCostPerMonth': {'type': 'number', 'description': 'Enrichment tool cost per month'}, 'repsDoingResearch': {'type': 'number', 'description': 'Reps doing manual research'}, 'leadsResearchedPerWeek': {'type': 'number', 'description': 'Leads researched per week, per rep'}}}
出力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['kind', 'tool', 'title', 'calculator', 'url', 'bookingUrl', 'currency', 'compact', 'inputs', 'metrics', 'notes', 'benchmarks'], 'properties': {'url': {'type': 'string'}, 'kind': {'type': 'string', 'const': 'calculator'}, 'tool': {'type': 'string', 'description': 'The calculator tool that produced this result'}, 'notes': {'type': 'array', 'items': {'type': 'string'}}, 'title': {'type': 'string'}, 'inputs': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'compact': {'type': 'boolean'}, 'metrics': {'type': 'array', 'items': {'type': 'object', 'required': ['label', 'value', 'unit', 'display'], 'properties': {'unit': {'anyOf': [{'enum': ['currency', 'x', '%', 'months'], 'type': 'string'}, {'type': 'null'}]}, 'label': {'type': 'string'}, 'value': {'type': ['number', 'null']}, 'display': {'type': 'string'}}, 'additionalProperties': False}, 'description': 'Every "Label: value" line of the result; value is the first number on the line'}, 'currency': {'type': ['string', 'null']}, 'benchmarks': {'type': 'array', 'items': {'type': 'object', 'required': ['metric', 'name', 'value', 'display', 'band', 'tone', 'read', 'target', 'segment', 'source'], 'properties': {'band': {'type': 'string'}, 'name': {'type': 'string'}, 'read': {'type': 'string'}, 'tone': {'enum': ['good', 'ok', 'warn', 'bad'], 'type': 'string'}, 'value': {'type': 'number'}, 'metric': {'type': 'string'}, 'source': {'type': 'string'}, 'target': {'type': 'string'}, 'display': {'type': 'string'}, 'segment': {'type': ['string', 'null']}}, 'additionalProperties': False}, 'description': 'Rule-of-thumb verdicts for the headline numbers'}, 'bookingUrl': {'type': 'string'}, 'calculator': {'type': 'string', 'description': 'Slug of the interactive calculator on rahuldsarker.co'}}, 'additionalProperties': False}
deferred_revenue_amortization_planner
Deferred Revenue Amortization Planner
Straight-line an upfront payment across the contract term to see revenue recognized to date versus the remaining deferred-revenue liability. See the full version at https://rahuldsarker.co/calculators/deferred-revenue-amortization-planner
読み取り専用 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['upfrontPayment', 'termMonths', 'monthsElapsed'], 'properties': {'currency': {'type': 'string', 'pattern': '^[A-Za-z]{3}$', 'description': 'ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.'}, 'termMonths': {'type': 'number', 'description': 'Contract term, in months'}, 'monthsElapsed': {'type': 'number', 'description': 'Months elapsed since the contract started'}, 'upfrontPayment': {'type': 'number', 'description': 'Upfront payment collected'}}}
出力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['kind', 'tool', 'title', 'calculator', 'url', 'bookingUrl', 'currency', 'compact', 'inputs', 'metrics', 'notes', 'benchmarks'], 'properties': {'url': {'type': 'string'}, 'kind': {'type': 'string', 'const': 'calculator'}, 'tool': {'type': 'string', 'description': 'The calculator tool that produced this result'}, 'notes': {'type': 'array', 'items': {'type': 'string'}}, 'title': {'type': 'string'}, 'inputs': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'compact': {'type': 'boolean'}, 'metrics': {'type': 'array', 'items': {'type': 'object', 'required': ['label', 'value', 'unit', 'display'], 'properties': {'unit': {'anyOf': [{'enum': ['currency', 'x', '%', 'months'], 'type': 'string'}, {'type': 'null'}]}, 'label': {'type': 'string'}, 'value': {'type': ['number', 'null']}, 'display': {'type': 'string'}}, 'additionalProperties': False}, 'description': 'Every "Label: value" line of the result; value is the first number on the line'}, 'currency': {'type': ['string', 'null']}, 'benchmarks': {'type': 'array', 'items': {'type': 'object', 'required': ['metric', 'name', 'value', 'display', 'band', 'tone', 'read', 'target', 'segment', 'source'], 'properties': {'band': {'type': 'string'}, 'name': {'type': 'string'}, 'read': {'type': 'string'}, 'tone': {'enum': ['good', 'ok', 'warn', 'bad'], 'type': 'string'}, 'value': {'type': 'number'}, 'metric': {'type': 'string'}, 'source': {'type': 'string'}, 'target': {'type': 'string'}, 'display': {'type': 'string'}, 'segment': {'type': ['string', 'null']}}, 'additionalProperties': False}, 'description': 'Rule-of-thumb verdicts for the headline numbers'}, 'bookingUrl': {'type': 'string'}, 'calculator': {'type': 'string', 'description': 'Slug of the interactive calculator on rahuldsarker.co'}}, 'additionalProperties': False}
enterprise_contract_discount_evaluator
Enterprise Contract Discount Evaluator
Show how much lifetime profit an enterprise discount actually gives away, since cost-to-serve does not drop with price. See the full version at https://rahuldsarker.co/calculators/enterprise-contract-discount-evaluator
読み取り専用 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['listAcv', 'discountPct', 'termYears', 'grossMarginPct'], 'properties': {'listAcv': {'type': 'number', 'description': 'List (undiscounted) annual contract value'}, 'currency': {'type': 'string', 'pattern': '^[A-Za-z]{3}$', 'description': 'ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.'}, 'termYears': {'type': 'number', 'description': 'Contract term, in years'}, 'discountPct': {'type': 'number', 'description': 'Discount offered, as a percentage'}, 'grossMarginPct': {'type': 'number', 'description': 'Gross margin, as a percentage'}}}
出力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['kind', 'tool', 'title', 'calculator', 'url', 'bookingUrl', 'currency', 'compact', 'inputs', 'metrics', 'notes', 'benchmarks'], 'properties': {'url': {'type': 'string'}, 'kind': {'type': 'string', 'const': 'calculator'}, 'tool': {'type': 'string', 'description': 'The calculator tool that produced this result'}, 'notes': {'type': 'array', 'items': {'type': 'string'}}, 'title': {'type': 'string'}, 'inputs': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'compact': {'type': 'boolean'}, 'metrics': {'type': 'array', 'items': {'type': 'object', 'required': ['label', 'value', 'unit', 'display'], 'properties': {'unit': {'anyOf': [{'enum': ['currency', 'x', '%', 'months'], 'type': 'string'}, {'type': 'null'}]}, 'label': {'type': 'string'}, 'value': {'type': ['number', 'null']}, 'display': {'type': 'string'}}, 'additionalProperties': False}, 'description': 'Every "Label: value" line of the result; value is the first number on the line'}, 'currency': {'type': ['string', 'null']}, 'benchmarks': {'type': 'array', 'items': {'type': 'object', 'required': ['metric', 'name', 'value', 'display', 'band', 'tone', 'read', 'target', 'segment', 'source'], 'properties': {'band': {'type': 'string'}, 'name': {'type': 'string'}, 'read': {'type': 'string'}, 'tone': {'enum': ['good', 'ok', 'warn', 'bad'], 'type': 'string'}, 'value': {'type': 'number'}, 'metric': {'type': 'string'}, 'source': {'type': 'string'}, 'target': {'type': 'string'}, 'display': {'type': 'string'}, 'segment': {'type': ['string', 'null']}}, 'additionalProperties': False}, 'description': 'Rule-of-thumb verdicts for the headline numbers'}, 'bookingUrl': {'type': 'string'}, 'calculator': {'type': 'string', 'description': 'Slug of the interactive calculator on rahuldsarker.co'}}, 'additionalProperties': False}
exit_intent_timing_optimizer
Exit-Intent Timing Optimizer
Estimate the best time to fire a timed exit-intent popup, based on average session duration, pages per session, and engaged-visitor share. See the full version at https://rahuldsarker.co/calculators/exit-intent-timing-optimizer
読み取り専用 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['avgSessionSeconds', 'pagesPerSession', 'engagedSharePct'], 'properties': {'currency': {'type': 'string', 'pattern': '^[A-Za-z]{3}$', 'description': 'ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.'}, 'engagedSharePct': {'type': 'number', 'description': 'Engaged-visitor share, as a percentage: roughly how far into a session real intent forms'}, 'pagesPerSession': {'type': 'number', 'description': 'Pages per session'}, 'avgSessionSeconds': {'type': 'number', 'description': 'Average session duration, in seconds'}}}
出力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['kind', 'tool', 'title', 'calculator', 'url', 'bookingUrl', 'currency', 'compact', 'inputs', 'metrics', 'notes', 'benchmarks'], 'properties': {'url': {'type': 'string'}, 'kind': {'type': 'string', 'const': 'calculator'}, 'tool': {'type': 'string', 'description': 'The calculator tool that produced this result'}, 'notes': {'type': 'array', 'items': {'type': 'string'}}, 'title': {'type': 'string'}, 'inputs': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'compact': {'type': 'boolean'}, 'metrics': {'type': 'array', 'items': {'type': 'object', 'required': ['label', 'value', 'unit', 'display'], 'properties': {'unit': {'anyOf': [{'enum': ['currency', 'x', '%', 'months'], 'type': 'string'}, {'type': 'null'}]}, 'label': {'type': 'string'}, 'value': {'type': ['number', 'null']}, 'display': {'type': 'string'}}, 'additionalProperties': False}, 'description': 'Every "Label: value" line of the result; value is the first number on the line'}, 'currency': {'type': ['string', 'null']}, 'benchmarks': {'type': 'array', 'items': {'type': 'object', 'required': ['metric', 'name', 'value', 'display', 'band', 'tone', 'read', 'target', 'segment', 'source'], 'properties': {'band': {'type': 'string'}, 'name': {'type': 'string'}, 'read': {'type': 'string'}, 'tone': {'enum': ['good', 'ok', 'warn', 'bad'], 'type': 'string'}, 'value': {'type': 'number'}, 'metric': {'type': 'string'}, 'source': {'type': 'string'}, 'target': {'type': 'string'}, 'display': {'type': 'string'}, 'segment': {'type': ['string', 'null']}}, 'additionalProperties': False}, 'description': 'Rule-of-thumb verdicts for the headline numbers'}, 'bookingUrl': {'type': 'string'}, 'calculator': {'type': 'string', 'description': 'Slug of the interactive calculator on rahuldsarker.co'}}, 'additionalProperties': False}
expansion_revenue_impact_simulator
Expansion Revenue Impact Simulator
Estimate expansion ARR from an upsell offer and the new-logo CAC it would take to buy the same growth. See the full version at https://rahuldsarker.co/calculators/expansion-revenue-impact-simulator
読み取り専用 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['existingCustomers', 'adoptionRatePct', 'upsellAcv', 'newLogoCac'], 'properties': {'currency': {'type': 'string', 'pattern': '^[A-Za-z]{3}$', 'description': 'ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.'}, 'upsellAcv': {'type': 'number', 'description': 'Annual contract value of the upsell'}, 'newLogoCac': {'type': 'number', 'description': 'CAC to acquire a new logo, for comparison'}, 'adoptionRatePct': {'type': 'number', 'description': 'Share of existing customers expected to take the upsell offer, as a percentage'}, 'existingCustomers': {'type': 'number', 'description': 'Number of existing customers'}}}
出力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['kind', 'tool', 'title', 'calculator', 'url', 'bookingUrl', 'currency', 'compact', 'inputs', 'metrics', 'notes', 'benchmarks'], 'properties': {'url': {'type': 'string'}, 'kind': {'type': 'string', 'const': 'calculator'}, 'tool': {'type': 'string', 'description': 'The calculator tool that produced this result'}, 'notes': {'type': 'array', 'items': {'type': 'string'}}, 'title': {'type': 'string'}, 'inputs': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'compact': {'type': 'boolean'}, 'metrics': {'type': 'array', 'items': {'type': 'object', 'required': ['label', 'value', 'unit', 'display'], 'properties': {'unit': {'anyOf': [{'enum': ['currency', 'x', '%', 'months'], 'type': 'string'}, {'type': 'null'}]}, 'label': {'type': 'string'}, 'value': {'type': ['number', 'null']}, 'display': {'type': 'string'}}, 'additionalProperties': False}, 'description': 'Every "Label: value" line of the result; value is the first number on the line'}, 'currency': {'type': ['string', 'null']}, 'benchmarks': {'type': 'array', 'items': {'type': 'object', 'required': ['metric', 'name', 'value', 'display', 'band', 'tone', 'read', 'target', 'segment', 'source'], 'properties': {'band': {'type': 'string'}, 'name': {'type': 'string'}, 'read': {'type': 'string'}, 'tone': {'enum': ['good', 'ok', 'warn', 'bad'], 'type': 'string'}, 'value': {'type': 'number'}, 'metric': {'type': 'string'}, 'source': {'type': 'string'}, 'target': {'type': 'string'}, 'display': {'type': 'string'}, 'segment': {'type': ['string', 'null']}}, 'additionalProperties': False}, 'description': 'Rule-of-thumb verdicts for the headline numbers'}, 'bookingUrl': {'type': 'string'}, 'calculator': {'type': 'string', 'description': 'Slug of the interactive calculator on rahuldsarker.co'}}, 'additionalProperties': False}
find_calculator
Find the right calculator
Search the 110+ marketing, sales, RevOps and SaaS calculators by what you want to work out (e.g. "payback on ad spend", "churn", "valuation"). Returns tool names and their inputs; run one with run_calculator or call it directly.
読み取り専用 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['query'], 'properties': {'limit': {'type': 'integer', 'maximum': 10, 'minimum': 1, 'description': 'How many matches, 1 to 10 (default 5)'}, 'query': {'type': 'string', 'maxLength': 200, 'minLength': 2, 'description': 'What to calculate, in plain words'}}}
form_field_friction_cost_calculator
Form Field Friction Cost Calculator
Estimate the extra leads and pipeline value unlocked by trimming form fields, using a per-field conversion recovery rate. See the full version at https://rahuldsarker.co/calculators/form-field-friction-cost-calculator
読み取り専用 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['monthlyVisitors', 'currentFields', 'targetFields', 'currentConversionPct', 'recoveryPerFieldPct', 'valuePerLead'], 'properties': {'currency': {'type': 'string', 'pattern': '^[A-Za-z]{3}$', 'description': 'ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.'}, 'targetFields': {'type': 'number', 'description': 'Target number of form fields'}, 'valuePerLead': {'type': 'number', 'description': 'Value per lead'}, 'currentFields': {'type': 'number', 'description': 'Current number of form fields'}, 'monthlyVisitors': {'type': 'number', 'description': 'Form visitors per month'}, 'recoveryPerFieldPct': {'type': 'number', 'description': 'Relative conversion recovered per field removed, as a percentage, typically 3-8'}, 'currentConversionPct': {'type': 'number', 'description': 'Current form conversion rate, as a percentage'}}}
出力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['kind', 'tool', 'title', 'calculator', 'url', 'bookingUrl', 'currency', 'compact', 'inputs', 'metrics', 'notes', 'benchmarks'], 'properties': {'url': {'type': 'string'}, 'kind': {'type': 'string', 'const': 'calculator'}, 'tool': {'type': 'string', 'description': 'The calculator tool that produced this result'}, 'notes': {'type': 'array', 'items': {'type': 'string'}}, 'title': {'type': 'string'}, 'inputs': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'compact': {'type': 'boolean'}, 'metrics': {'type': 'array', 'items': {'type': 'object', 'required': ['label', 'value', 'unit', 'display'], 'properties': {'unit': {'anyOf': [{'enum': ['currency', 'x', '%', 'months'], 'type': 'string'}, {'type': 'null'}]}, 'label': {'type': 'string'}, 'value': {'type': ['number', 'null']}, 'display': {'type': 'string'}}, 'additionalProperties': False}, 'description': 'Every "Label: value" line of the result; value is the first number on the line'}, 'currency': {'type': ['string', 'null']}, 'benchmarks': {'type': 'array', 'items': {'type': 'object', 'required': ['metric', 'name', 'value', 'display', 'band', 'tone', 'read', 'target', 'segment', 'source'], 'properties': {'band': {'type': 'string'}, 'name': {'type': 'string'}, 'read': {'type': 'string'}, 'tone': {'enum': ['good', 'ok', 'warn', 'bad'], 'type': 'string'}, 'value': {'type': 'number'}, 'metric': {'type': 'string'}, 'source': {'type': 'string'}, 'target': {'type': 'string'}, 'display': {'type': 'string'}, 'segment': {'type': ['string', 'null']}}, 'additionalProperties': False}, 'description': 'Rule-of-thumb verdicts for the headline numbers'}, 'bookingUrl': {'type': 'string'}, 'calculator': {'type': 'string', 'description': 'Slug of the interactive calculator on rahuldsarker.co'}}, 'additionalProperties': False}
freemium_to_paid_pipeline_modeler
Freemium to Paid Pipeline Modeler
Model monthly and annual new ARR from a freemium funnel, and the ARR still lagging in the upgrade pipeline. See the full version at https://rahuldsarker.co/calculators/freemium-to-paid-pipeline-modeler
読み取り専用 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['monthlySignups', 'conversionRatePct', 'timeToUpgradeMonths', 'paidAcv'], 'properties': {'paidAcv': {'type': 'number', 'description': 'Annual contract value once a user converts to paid'}, 'currency': {'type': 'string', 'pattern': '^[A-Za-z]{3}$', 'description': 'ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.'}, 'monthlySignups': {'type': 'number', 'description': 'Free signups per month'}, 'conversionRatePct': {'type': 'number', 'description': 'Free-to-paid conversion rate, as a percentage'}, 'timeToUpgradeMonths': {'type': 'number', 'description': 'Average time to upgrade, in months'}}}
出力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['kind', 'tool', 'title', 'calculator', 'url', 'bookingUrl', 'currency', 'compact', 'inputs', 'metrics', 'notes', 'benchmarks'], 'properties': {'url': {'type': 'string'}, 'kind': {'type': 'string', 'const': 'calculator'}, 'tool': {'type': 'string', 'description': 'The calculator tool that produced this result'}, 'notes': {'type': 'array', 'items': {'type': 'string'}}, 'title': {'type': 'string'}, 'inputs': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'compact': {'type': 'boolean'}, 'metrics': {'type': 'array', 'items': {'type': 'object', 'required': ['label', 'value', 'unit', 'display'], 'properties': {'unit': {'anyOf': [{'enum': ['currency', 'x', '%', 'months'], 'type': 'string'}, {'type': 'null'}]}, 'label': {'type': 'string'}, 'value': {'type': ['number', 'null']}, 'display': {'type': 'string'}}, 'additionalProperties': False}, 'description': 'Every "Label: value" line of the result; value is the first number on the line'}, 'currency': {'type': ['string', 'null']}, 'benchmarks': {'type': 'array', 'items': {'type': 'object', 'required': ['metric', 'name', 'value', 'display', 'band', 'tone', 'read', 'target', 'segment', 'source'], 'properties': {'band': {'type': 'string'}, 'name': {'type': 'string'}, 'read': {'type': 'string'}, 'tone': {'enum': ['good', 'ok', 'warn', 'bad'], 'type': 'string'}, 'value': {'type': 'number'}, 'metric': {'type': 'string'}, 'source': {'type': 'string'}, 'target': {'type': 'string'}, 'display': {'type': 'string'}, 'segment': {'type': ['string', 'null']}}, 'additionalProperties': False}, 'description': 'Rule-of-thumb verdicts for the headline numbers'}, 'bookingUrl': {'type': 'string'}, 'calculator': {'type': 'string', 'description': 'Slug of the interactive calculator on rahuldsarker.co'}}, 'additionalProperties': False}
friction_point_identifier
Friction Point Identifier
Count how many of 8 common conversion-flow friction points are present and turn that into a flow health score. See the full version at https://rahuldsarker.co/calculators/friction-point-identifier
読み取り専用 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['accountRequiredBeforeValue', 'tooManyFormFields', 'unclearOrLateErrors', 'forcedUpsells', 'noProgressIndicator', 'limitedPaymentOptions', 'slowOrLaggySteps', 'noTrustSignals'], 'properties': {'currency': {'type': 'string', 'pattern': '^[A-Za-z]{3}$', 'description': 'ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.'}, 'forcedUpsells': {'type': 'boolean', 'description': 'Forced upsells or interstitials mid-flow'}, 'noTrustSignals': {'type': 'boolean', 'description': 'No trust/security signals at the point of entry'}, 'slowOrLaggySteps': {'type': 'boolean', 'description': 'Slow steps or laggy interactions'}, 'tooManyFormFields': {'type': 'boolean', 'description': 'Too many form fields'}, 'noProgressIndicator': {'type': 'boolean', 'description': 'No progress indicator on multi-step flows'}, 'unclearOrLateErrors': {'type': 'boolean', 'description': 'Unclear or late error messages'}, 'limitedPaymentOptions': {'type': 'boolean', 'description': 'Limited payment / wallet options'}, 'accountRequiredBeforeValue': {'type': 'boolean', 'description': 'Account required before purchase / value'}}}
出力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['kind', 'tool', 'title', 'calculator', 'url', 'bookingUrl', 'currency', 'compact', 'inputs', 'metrics', 'notes', 'benchmarks'], 'properties': {'url': {'type': 'string'}, 'kind': {'type': 'string', 'const': 'calculator'}, 'tool': {'type': 'string', 'description': 'The calculator tool that produced this result'}, 'notes': {'type': 'array', 'items': {'type': 'string'}}, 'title': {'type': 'string'}, 'inputs': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'compact': {'type': 'boolean'}, 'metrics': {'type': 'array', 'items': {'type': 'object', 'required': ['label', 'value', 'unit', 'display'], 'properties': {'unit': {'anyOf': [{'enum': ['currency', 'x', '%', 'months'], 'type': 'string'}, {'type': 'null'}]}, 'label': {'type': 'string'}, 'value': {'type': ['number', 'null']}, 'display': {'type': 'string'}}, 'additionalProperties': False}, 'description': 'Every "Label: value" line of the result; value is the first number on the line'}, 'currency': {'type': ['string', 'null']}, 'benchmarks': {'type': 'array', 'items': {'type': 'object', 'required': ['metric', 'name', 'value', 'display', 'band', 'tone', 'read', 'target', 'segment', 'source'], 'properties': {'band': {'type': 'string'}, 'name': {'type': 'string'}, 'read': {'type': 'string'}, 'tone': {'enum': ['good', 'ok', 'warn', 'bad'], 'type': 'string'}, 'value': {'type': 'number'}, 'metric': {'type': 'string'}, 'source': {'type': 'string'}, 'target': {'type': 'string'}, 'display': {'type': 'string'}, 'segment': {'type': ['string', 'null']}}, 'additionalProperties': False}, 'description': 'Rule-of-thumb verdicts for the headline numbers'}, 'bookingUrl': {'type': 'string'}, 'calculator': {'type': 'string', 'description': 'Slug of the interactive calculator on rahuldsarker.co'}}, 'additionalProperties': False}
google_search_impression_share_value_estimator
Google Search Impression Share Value Estimator
Estimate missed clicks, conversions, and revenue from operating below 100% search impression share. See the full version at https://rahuldsarker.co/calculators/impression-share-opportunity-matrix
読み取り専用 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['clicks', 'impressionSharePct', 'convRatePct', 'valuePerConversion'], 'properties': {'clicks': {'type': 'number', 'description': 'Current clicks per month'}, 'currency': {'type': 'string', 'pattern': '^[A-Za-z]{3}$', 'description': 'ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.'}, 'convRatePct': {'type': 'number', 'description': 'Click-to-conversion rate, as a percentage'}, 'impressionSharePct': {'type': 'number', 'description': 'Search impression share, as a percentage'}, 'valuePerConversion': {'type': 'number', 'description': 'Value per conversion'}}}
出力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['kind', 'tool', 'title', 'calculator', 'url', 'bookingUrl', 'currency', 'compact', 'inputs', 'metrics', 'notes', 'benchmarks'], 'properties': {'url': {'type': 'string'}, 'kind': {'type': 'string', 'const': 'calculator'}, 'tool': {'type': 'string', 'description': 'The calculator tool that produced this result'}, 'notes': {'type': 'array', 'items': {'type': 'string'}}, 'title': {'type': 'string'}, 'inputs': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'compact': {'type': 'boolean'}, 'metrics': {'type': 'array', 'items': {'type': 'object', 'required': ['label', 'value', 'unit', 'display'], 'properties': {'unit': {'anyOf': [{'enum': ['currency', 'x', '%', 'months'], 'type': 'string'}, {'type': 'null'}]}, 'label': {'type': 'string'}, 'value': {'type': ['number', 'null']}, 'display': {'type': 'string'}}, 'additionalProperties': False}, 'description': 'Every "Label: value" line of the result; value is the first number on the line'}, 'currency': {'type': ['string', 'null']}, 'benchmarks': {'type': 'array', 'items': {'type': 'object', 'required': ['metric', 'name', 'value', 'display', 'band', 'tone', 'read', 'target', 'segment', 'source'], 'properties': {'band': {'type': 'string'}, 'name': {'type': 'string'}, 'read': {'type': 'string'}, 'tone': {'enum': ['good', 'ok', 'warn', 'bad'], 'type': 'string'}, 'value': {'type': 'number'}, 'metric': {'type': 'string'}, 'source': {'type': 'string'}, 'target': {'type': 'string'}, 'display': {'type': 'string'}, 'segment': {'type': ['string', 'null']}}, 'additionalProperties': False}, 'description': 'Rule-of-thumb verdicts for the headline numbers'}, 'bookingUrl': {'type': 'string'}, 'calculator': {'type': 'string', 'description': 'Slug of the interactive calculator on rahuldsarker.co'}}, 'additionalProperties': False}
gross_margin_impact_calculator
Gross Margin Impact Calculator
Calculate gross profit and gross margin from revenue, infrastructure cost, and support/delivery cost. See the full version at https://rahuldsarker.co/calculators/gross-margin-impact-calculator
読み取り専用 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['revenue', 'infrastructureCost', 'supportCost'], 'properties': {'revenue': {'type': 'number', 'description': 'Annual recurring revenue'}, 'currency': {'type': 'string', 'pattern': '^[A-Za-z]{3}$', 'description': 'ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.'}, 'supportCost': {'type': 'number', 'description': 'Support and delivery cost'}, 'infrastructureCost': {'type': 'number', 'description': 'Cloud/infrastructure cost'}}}
出力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['kind', 'tool', 'title', 'calculator', 'url', 'bookingUrl', 'currency', 'compact', 'inputs', 'metrics', 'notes', 'benchmarks'], 'properties': {'url': {'type': 'string'}, 'kind': {'type': 'string', 'const': 'calculator'}, 'tool': {'type': 'string', 'description': 'The calculator tool that produced this result'}, 'notes': {'type': 'array', 'items': {'type': 'string'}}, 'title': {'type': 'string'}, 'inputs': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'compact': {'type': 'boolean'}, 'metrics': {'type': 'array', 'items': {'type': 'object', 'required': ['label', 'value', 'unit', 'display'], 'properties': {'unit': {'anyOf': [{'enum': ['currency', 'x', '%', 'months'], 'type': 'string'}, {'type': 'null'}]}, 'label': {'type': 'string'}, 'value': {'type': ['number', 'null']}, 'display': {'type': 'string'}}, 'additionalProperties': False}, 'description': 'Every "Label: value" line of the result; value is the first number on the line'}, 'currency': {'type': ['string', 'null']}, 'benchmarks': {'type': 'array', 'items': {'type': 'object', 'required': ['metric', 'name', 'value', 'display', 'band', 'tone', 'read', 'target', 'segment', 'source'], 'properties': {'band': {'type': 'string'}, 'name': {'type': 'string'}, 'read': {'type': 'string'}, 'tone': {'enum': ['good', 'ok', 'warn', 'bad'], 'type': 'string'}, 'value': {'type': 'number'}, 'metric': {'type': 'string'}, 'source': {'type': 'string'}, 'target': {'type': 'string'}, 'display': {'type': 'string'}, 'segment': {'type': ['string', 'null']}}, 'additionalProperties': False}, 'description': 'Rule-of-thumb verdicts for the headline numbers'}, 'bookingUrl': {'type': 'string'}, 'calculator': {'type': 'string', 'description': 'Slug of the interactive calculator on rahuldsarker.co'}}, 'additionalProperties': False}
growth_runway_extension_simulator
Growth Runway Extension Simulator
See how much cash runway a cut to gross burn buys you, given current cash, burn, and revenue. See the full version at https://rahuldsarker.co/calculators/growth-runway-extension-simulator
読み取り専用 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['cash', 'grossBurn', 'revenue', 'burnReductionPct'], 'properties': {'cash': {'type': 'number', 'description': 'Cash in bank'}, 'revenue': {'type': 'number', 'description': 'Monthly revenue'}, 'currency': {'type': 'string', 'pattern': '^[A-Za-z]{3}$', 'description': 'ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.'}, 'grossBurn': {'type': 'number', 'description': 'Gross monthly burn'}, 'burnReductionPct': {'type': 'number', 'description': 'Burn reduction from efficiency gains, as a percentage'}}}
出力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['kind', 'tool', 'title', 'calculator', 'url', 'bookingUrl', 'currency', 'compact', 'inputs', 'metrics', 'notes', 'benchmarks'], 'properties': {'url': {'type': 'string'}, 'kind': {'type': 'string', 'const': 'calculator'}, 'tool': {'type': 'string', 'description': 'The calculator tool that produced this result'}, 'notes': {'type': 'array', 'items': {'type': 'string'}}, 'title': {'type': 'string'}, 'inputs': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'compact': {'type': 'boolean'}, 'metrics': {'type': 'array', 'items': {'type': 'object', 'required': ['label', 'value', 'unit', 'display'], 'properties': {'unit': {'anyOf': [{'enum': ['currency', 'x', '%', 'months'], 'type': 'string'}, {'type': 'null'}]}, 'label': {'type': 'string'}, 'value': {'type': ['number', 'null']}, 'display': {'type': 'string'}}, 'additionalProperties': False}, 'description': 'Every "Label: value" line of the result; value is the first number on the line'}, 'currency': {'type': ['string', 'null']}, 'benchmarks': {'type': 'array', 'items': {'type': 'object', 'required': ['metric', 'name', 'value', 'display', 'band', 'tone', 'read', 'target', 'segment', 'source'], 'properties': {'band': {'type': 'string'}, 'name': {'type': 'string'}, 'read': {'type': 'string'}, 'tone': {'enum': ['good', 'ok', 'warn', 'bad'], 'type': 'string'}, 'value': {'type': 'number'}, 'metric': {'type': 'string'}, 'source': {'type': 'string'}, 'target': {'type': 'string'}, 'display': {'type': 'string'}, 'segment': {'type': ['string', 'null']}}, 'additionalProperties': False}, 'description': 'Rule-of-thumb verdicts for the headline numbers'}, 'bookingUrl': {'type': 'string'}, 'calculator': {'type': 'string', 'description': 'Slug of the interactive calculator on rahuldsarker.co'}}, 'additionalProperties': False}
growth_strategy_prioritization_tool
Growth Strategy Prioritization Tool (ICE Scoring)
Rank growth ideas by ICE score (Impact, Confidence, Ease averaged, each scored 1-10) to decide what to run next. See the full version at https://rahuldsarker.co/calculators/growth-strategy-prioritization-tool
読み取り専用 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['ideas'], 'properties': {'ideas': {'type': 'array', 'items': {'type': 'object', 'required': ['name', 'impact', 'confidence', 'ease'], 'properties': {'ease': {'type': 'number', 'description': 'Ease score, 1-10'}, 'name': {'type': 'string', 'description': 'Name of the growth idea'}, 'impact': {'type': 'number', 'description': 'Impact score, 1-10'}, 'confidence': {'type': 'number', 'description': 'Confidence score, 1-10'}}}, 'description': 'List of growth ideas to score and rank'}, 'currency': {'type': 'string', 'pattern': '^[A-Za-z]{3}$', 'description': 'ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.'}}}
出力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['kind', 'tool', 'title', 'calculator', 'url', 'bookingUrl', 'currency', 'compact', 'inputs', 'metrics', 'notes', 'benchmarks'], 'properties': {'url': {'type': 'string'}, 'kind': {'type': 'string', 'const': 'calculator'}, 'tool': {'type': 'string', 'description': 'The calculator tool that produced this result'}, 'notes': {'type': 'array', 'items': {'type': 'string'}}, 'title': {'type': 'string'}, 'inputs': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'compact': {'type': 'boolean'}, 'metrics': {'type': 'array', 'items': {'type': 'object', 'required': ['label', 'value', 'unit', 'display'], 'properties': {'unit': {'anyOf': [{'enum': ['currency', 'x', '%', 'months'], 'type': 'string'}, {'type': 'null'}]}, 'label': {'type': 'string'}, 'value': {'type': ['number', 'null']}, 'display': {'type': 'string'}}, 'additionalProperties': False}, 'description': 'Every "Label: value" line of the result; value is the first number on the line'}, 'currency': {'type': ['string', 'null']}, 'benchmarks': {'type': 'array', 'items': {'type': 'object', 'required': ['metric', 'name', 'value', 'display', 'band', 'tone', 'read', 'target', 'segment', 'source'], 'properties': {'band': {'type': 'string'}, 'name': {'type': 'string'}, 'read': {'type': 'string'}, 'tone': {'enum': ['good', 'ok', 'warn', 'bad'], 'type': 'string'}, 'value': {'type': 'number'}, 'metric': {'type': 'string'}, 'source': {'type': 'string'}, 'target': {'type': 'string'}, 'display': {'type': 'string'}, 'segment': {'type': ['string', 'null']}}, 'additionalProperties': False}, 'description': 'Rule-of-thumb verdicts for the headline numbers'}, 'bookingUrl': {'type': 'string'}, 'calculator': {'type': 'string', 'description': 'Slug of the interactive calculator on rahuldsarker.co'}}, 'additionalProperties': False}
growth_team_hiring_sequence_planner
Growth Team Hiring Sequence Planner
Recommend the right growth/marketing hiring sequence for your ARR band, from founder-led at pre-$1M to a full leadership team at $10M+. See the full version at https://rahuldsarker.co/calculators/growth-team-hiring-sequence-planner
読み取り専用 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['arr'], 'properties': {'arr': {'type': 'number', 'description': 'Current annual recurring revenue (ARR)'}, 'currency': {'type': 'string', 'pattern': '^[A-Za-z]{3}$', 'description': 'ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.'}}}
出力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['kind', 'tool', 'title', 'calculator', 'url', 'bookingUrl', 'currency', 'compact', 'inputs', 'metrics', 'notes', 'benchmarks'], 'properties': {'url': {'type': 'string'}, 'kind': {'type': 'string', 'const': 'calculator'}, 'tool': {'type': 'string', 'description': 'The calculator tool that produced this result'}, 'notes': {'type': 'array', 'items': {'type': 'string'}}, 'title': {'type': 'string'}, 'inputs': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'compact': {'type': 'boolean'}, 'metrics': {'type': 'array', 'items': {'type': 'object', 'required': ['label', 'value', 'unit', 'display'], 'properties': {'unit': {'anyOf': [{'enum': ['currency', 'x', '%', 'months'], 'type': 'string'}, {'type': 'null'}]}, 'label': {'type': 'string'}, 'value': {'type': ['number', 'null']}, 'display': {'type': 'string'}}, 'additionalProperties': False}, 'description': 'Every "Label: value" line of the result; value is the first number on the line'}, 'currency': {'type': ['string', 'null']}, 'benchmarks': {'type': 'array', 'items': {'type': 'object', 'required': ['metric', 'name', 'value', 'display', 'band', 'tone', 'read', 'target', 'segment', 'source'], 'properties': {'band': {'type': 'string'}, 'name': {'type': 'string'}, 'read': {'type': 'string'}, 'tone': {'enum': ['good', 'ok', 'warn', 'bad'], 'type': 'string'}, 'value': {'type': 'number'}, 'metric': {'type': 'string'}, 'source': {'type': 'string'}, 'target': {'type': 'string'}, 'display': {'type': 'string'}, 'segment': {'type': ['string', 'null']}}, 'additionalProperties': False}, 'description': 'Rule-of-thumb verdicts for the headline numbers'}, 'bookingUrl': {'type': 'string'}, 'calculator': {'type': 'string', 'description': 'Slug of the interactive calculator on rahuldsarker.co'}}, 'additionalProperties': False}
gtm_audit_scorecard
GTM Tracking Audit Scorecard
Score your Google Tag Manager container health across eight weighted dimensions covering tag hygiene, consent, and reconciliation. See the full version at https://rahuldsarker.co/calculators/gtm-audit-scorecard
読み取り専用 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['taggedOwnership', 'noDuplicateTags', 'noOverfiringTriggers', 'consentModeV2', 'dataLayerDocumented', 'previewBeforePublish', 'versionChangeNotes', 'monthlyReconciliation'], 'properties': {'currency': {'type': 'string', 'pattern': '^[A-Za-z]{3}$', 'description': 'ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.'}, 'consentModeV2': {'enum': ['yes', 'partial', 'no'], 'type': 'string', 'description': 'Consent Mode v2 is implemented and verified, weight 15'}, 'noDuplicateTags': {'enum': ['yes', 'partial', 'no'], 'type': 'string', 'description': 'No duplicate tags tracking the same event, weight 15'}, 'taggedOwnership': {'enum': ['yes', 'partial', 'no'], 'type': 'string', 'description': 'Every tag has a documented purpose and owner, weight 15'}, 'versionChangeNotes': {'enum': ['yes', 'partial', 'no'], 'type': 'string', 'description': 'Every container version has a change note, weight 10'}, 'dataLayerDocumented': {'enum': ['yes', 'partial', 'no'], 'type': 'string', 'description': 'Data layer is versioned and documented, weight 15'}, 'noOverfiringTriggers': {'enum': ['yes', 'partial', 'no'], 'type': 'string', 'description': 'No tags trigger on "All Pages" that should not, weight 15'}, 'previewBeforePublish': {'enum': ['yes', 'partial', 'no'], 'type': 'string', 'description': 'Every publish goes through Preview mode first, weight 10'}, 'monthlyReconciliation': {'enum': ['yes', 'partial', 'no'], 'type': 'string', 'description': 'GA4, Ads and CRM numbers are reconciled monthly, weight 5'}}}
出力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['kind', 'tool', 'title', 'calculator', 'url', 'bookingUrl', 'currency', 'compact', 'inputs', 'metrics', 'notes', 'benchmarks'], 'properties': {'url': {'type': 'string'}, 'kind': {'type': 'string', 'const': 'calculator'}, 'tool': {'type': 'string', 'description': 'The calculator tool that produced this result'}, 'notes': {'type': 'array', 'items': {'type': 'string'}}, 'title': {'type': 'string'}, 'inputs': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'compact': {'type': 'boolean'}, 'metrics': {'type': 'array', 'items': {'type': 'object', 'required': ['label', 'value', 'unit', 'display'], 'properties': {'unit': {'anyOf': [{'enum': ['currency', 'x', '%', 'months'], 'type': 'string'}, {'type': 'null'}]}, 'label': {'type': 'string'}, 'value': {'type': ['number', 'null']}, 'display': {'type': 'string'}}, 'additionalProperties': False}, 'description': 'Every "Label: value" line of the result; value is the first number on the line'}, 'currency': {'type': ['string', 'null']}, 'benchmarks': {'type': 'array', 'items': {'type': 'object', 'required': ['metric', 'name', 'value', 'display', 'band', 'tone', 'read', 'target', 'segment', 'source'], 'properties': {'band': {'type': 'string'}, 'name': {'type': 'string'}, 'read': {'type': 'string'}, 'tone': {'enum': ['good', 'ok', 'warn', 'bad'], 'type': 'string'}, 'value': {'type': 'number'}, 'metric': {'type': 'string'}, 'source': {'type': 'string'}, 'target': {'type': 'string'}, 'display': {'type': 'string'}, 'segment': {'type': ['string', 'null']}}, 'additionalProperties': False}, 'description': 'Rule-of-thumb verdicts for the headline numbers'}, 'bookingUrl': {'type': 'string'}, 'calculator': {'type': 'string', 'description': 'Slug of the interactive calculator on rahuldsarker.co'}}, 'additionalProperties': False}
historical_data_drift_estimator
Historical Data Drift Estimator
Estimate how much of a contact database has gone stale since it was last cleansed, using an annual B2B data decay rate. See the full version at https://rahuldsarker.co/calculators/historical-data-drift-estimator
読み取り専用 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['totalContacts', 'annualDecayRatePct', 'monthsSinceLastCleanse'], 'properties': {'currency': {'type': 'string', 'pattern': '^[A-Za-z]{3}$', 'description': 'ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.'}, 'totalContacts': {'type': 'number', 'description': 'Total contacts in the database'}, 'annualDecayRatePct': {'type': 'number', 'description': 'Annual data decay rate, as a percentage, B2B data typically decays 20-30%/year'}, 'monthsSinceLastCleanse': {'type': 'number', 'description': 'Months since the database was last cleansed/verified'}}}
出力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['kind', 'tool', 'title', 'calculator', 'url', 'bookingUrl', 'currency', 'compact', 'inputs', 'metrics', 'notes', 'benchmarks'], 'properties': {'url': {'type': 'string'}, 'kind': {'type': 'string', 'const': 'calculator'}, 'tool': {'type': 'string', 'description': 'The calculator tool that produced this result'}, 'notes': {'type': 'array', 'items': {'type': 'string'}}, 'title': {'type': 'string'}, 'inputs': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'compact': {'type': 'boolean'}, 'metrics': {'type': 'array', 'items': {'type': 'object', 'required': ['label', 'value', 'unit', 'display'], 'properties': {'unit': {'anyOf': [{'enum': ['currency', 'x', '%', 'months'], 'type': 'string'}, {'type': 'null'}]}, 'label': {'type': 'string'}, 'value': {'type': ['number', 'null']}, 'display': {'type': 'string'}}, 'additionalProperties': False}, 'description': 'Every "Label: value" line of the result; value is the first number on the line'}, 'currency': {'type': ['string', 'null']}, 'benchmarks': {'type': 'array', 'items': {'type': 'object', 'required': ['metric', 'name', 'value', 'display', 'band', 'tone', 'read', 'target', 'segment', 'source'], 'properties': {'band': {'type': 'string'}, 'name': {'type': 'string'}, 'read': {'type': 'string'}, 'tone': {'enum': ['good', 'ok', 'warn', 'bad'], 'type': 'string'}, 'value': {'type': 'number'}, 'metric': {'type': 'string'}, 'source': {'type': 'string'}, 'target': {'type': 'string'}, 'display': {'type': 'string'}, 'segment': {'type': ['string', 'null']}}, 'additionalProperties': False}, 'description': 'Rule-of-thumb verdicts for the headline numbers'}, 'bookingUrl': {'type': 'string'}, 'calculator': {'type': 'string', 'description': 'Slug of the interactive calculator on rahuldsarker.co'}}, 'additionalProperties': False}
impression_share_opportunity_matrix
Impression Share Opportunity Matrix
Estimate missed conversions and revenue from operating below 100% impression share on a search campaign. See the full version at https://rahuldsarker.co/calculators/impression-share-opportunity-matrix
読み取り専用 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['impressionSharePct', 'conversions', 'valuePerConversion'], 'properties': {'currency': {'type': 'string', 'pattern': '^[A-Za-z]{3}$', 'description': 'ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.'}, 'conversions': {'type': 'number', 'description': 'Conversions per month, now'}, 'impressionSharePct': {'type': 'number', 'description': 'Current impression share, as a percentage'}, 'valuePerConversion': {'type': 'number', 'description': 'Value per conversion'}}}
出力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['kind', 'tool', 'title', 'calculator', 'url', 'bookingUrl', 'currency', 'compact', 'inputs', 'metrics', 'notes', 'benchmarks'], 'properties': {'url': {'type': 'string'}, 'kind': {'type': 'string', 'const': 'calculator'}, 'tool': {'type': 'string', 'description': 'The calculator tool that produced this result'}, 'notes': {'type': 'array', 'items': {'type': 'string'}}, 'title': {'type': 'string'}, 'inputs': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'compact': {'type': 'boolean'}, 'metrics': {'type': 'array', 'items': {'type': 'object', 'required': ['label', 'value', 'unit', 'display'], 'properties': {'unit': {'anyOf': [{'enum': ['currency', 'x', '%', 'months'], 'type': 'string'}, {'type': 'null'}]}, 'label': {'type': 'string'}, 'value': {'type': ['number', 'null']}, 'display': {'type': 'string'}}, 'additionalProperties': False}, 'description': 'Every "Label: value" line of the result; value is the first number on the line'}, 'currency': {'type': ['string', 'null']}, 'benchmarks': {'type': 'array', 'items': {'type': 'object', 'required': ['metric', 'name', 'value', 'display', 'band', 'tone', 'read', 'target', 'segment', 'source'], 'properties': {'band': {'type': 'string'}, 'name': {'type': 'string'}, 'read': {'type': 'string'}, 'tone': {'enum': ['good', 'ok', 'warn', 'bad'], 'type': 'string'}, 'value': {'type': 'number'}, 'metric': {'type': 'string'}, 'source': {'type': 'string'}, 'target': {'type': 'string'}, 'display': {'type': 'string'}, 'segment': {'type': ['string', 'null']}}, 'additionalProperties': False}, 'description': 'Rule-of-thumb verdicts for the headline numbers'}, 'bookingUrl': {'type': 'string'}, 'calculator': {'type': 'string', 'description': 'Slug of the interactive calculator on rahuldsarker.co'}}, 'additionalProperties': False}
inbound_call_center_routing_auditor
Inbound Call Center Routing Auditor
Estimate the customers and ARR put at risk each year by slow support routing and SLA breaches. See the full version at https://rahuldsarker.co/calculators/inbound-call-center-routing-auditor
読み取り専用 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['activeCustomers', 'slowSupportSharePct', 'excessChurnPct', 'annualRevenuePerCustomer'], 'properties': {'currency': {'type': 'string', 'pattern': '^[A-Za-z]{3}$', 'description': 'ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.'}, 'excessChurnPct': {'type': 'number', 'description': 'Extra annual churn among those affected, from poor experience, as a percentage'}, 'activeCustomers': {'type': 'number', 'description': 'Active customers'}, 'slowSupportSharePct': {'type': 'number', 'description': 'Share of customers hitting slow support (breaching your response SLA), as a percentage'}, 'annualRevenuePerCustomer': {'type': 'number', 'description': 'Annual revenue per customer (ARPU)'}}}
出力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['kind', 'tool', 'title', 'calculator', 'url', 'bookingUrl', 'currency', 'compact', 'inputs', 'metrics', 'notes', 'benchmarks'], 'properties': {'url': {'type': 'string'}, 'kind': {'type': 'string', 'const': 'calculator'}, 'tool': {'type': 'string', 'description': 'The calculator tool that produced this result'}, 'notes': {'type': 'array', 'items': {'type': 'string'}}, 'title': {'type': 'string'}, 'inputs': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'compact': {'type': 'boolean'}, 'metrics': {'type': 'array', 'items': {'type': 'object', 'required': ['label', 'value', 'unit', 'display'], 'properties': {'unit': {'anyOf': [{'enum': ['currency', 'x', '%', 'months'], 'type': 'string'}, {'type': 'null'}]}, 'label': {'type': 'string'}, 'value': {'type': ['number', 'null']}, 'display': {'type': 'string'}}, 'additionalProperties': False}, 'description': 'Every "Label: value" line of the result; value is the first number on the line'}, 'currency': {'type': ['string', 'null']}, 'benchmarks': {'type': 'array', 'items': {'type': 'object', 'required': ['metric', 'name', 'value', 'display', 'band', 'tone', 'read', 'target', 'segment', 'source'], 'properties': {'band': {'type': 'string'}, 'name': {'type': 'string'}, 'read': {'type': 'string'}, 'tone': {'enum': ['good', 'ok', 'warn', 'bad'], 'type': 'string'}, 'value': {'type': 'number'}, 'metric': {'type': 'string'}, 'source': {'type': 'string'}, 'target': {'type': 'string'}, 'display': {'type': 'string'}, 'segment': {'type': ['string', 'null']}}, 'additionalProperties': False}, 'description': 'Rule-of-thumb verdicts for the headline numbers'}, 'bookingUrl': {'type': 'string'}, 'calculator': {'type': 'string', 'description': 'Slug of the interactive calculator on rahuldsarker.co'}}, 'additionalProperties': False}
in_house_vs_fractional_cmo
In-House vs Fractional CMO Calculator
Compare the loaded annual cost of a full-time CMO hire against a fractional CMO retainer, including the ramp-up cost before a full-time hire makes impact. See the full version at https://rahuldsarker.co/calculators/in-house-vs-fractional-cmo
読み取り専用 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['salary', 'loadedPct', 'recruiting', 'rampMonths', 'fractionalMonthly'], 'properties': {'salary': {'type': 'number', 'description': 'Full-time CMO base salary'}, 'currency': {'type': 'string', 'pattern': '^[A-Za-z]{3}$', 'description': 'ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.'}, 'loadedPct': {'type': 'number', 'description': 'Benefits + overhead loading on top of salary, as a percentage, e.g. 30 for 30%'}, 'rampMonths': {'type': 'number', 'description': 'Months of ramp before the full-time hire delivers impact'}, 'recruiting': {'type': 'number', 'description': 'Recruiting / search cost for the full-time hire'}, 'fractionalMonthly': {'type': 'number', 'description': 'Fractional CMO monthly retainer'}}}
出力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['kind', 'tool', 'title', 'calculator', 'url', 'bookingUrl', 'currency', 'compact', 'inputs', 'metrics', 'notes', 'benchmarks'], 'properties': {'url': {'type': 'string'}, 'kind': {'type': 'string', 'const': 'calculator'}, 'tool': {'type': 'string', 'description': 'The calculator tool that produced this result'}, 'notes': {'type': 'array', 'items': {'type': 'string'}}, 'title': {'type': 'string'}, 'inputs': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'compact': {'type': 'boolean'}, 'metrics': {'type': 'array', 'items': {'type': 'object', 'required': ['label', 'value', 'unit', 'display'], 'properties': {'unit': {'anyOf': [{'enum': ['currency', 'x', '%', 'months'], 'type': 'string'}, {'type': 'null'}]}, 'label': {'type': 'string'}, 'value': {'type': ['number', 'null']}, 'display': {'type': 'string'}}, 'additionalProperties': False}, 'description': 'Every "Label: value" line of the result; value is the first number on the line'}, 'currency': {'type': ['string', 'null']}, 'benchmarks': {'type': 'array', 'items': {'type': 'object', 'required': ['metric', 'name', 'value', 'display', 'band', 'tone', 'read', 'target', 'segment', 'source'], 'properties': {'band': {'type': 'string'}, 'name': {'type': 'string'}, 'read': {'type': 'string'}, 'tone': {'enum': ['good', 'ok', 'warn', 'bad'], 'type': 'string'}, 'value': {'type': 'number'}, 'metric': {'type': 'string'}, 'source': {'type': 'string'}, 'target': {'type': 'string'}, 'display': {'type': 'string'}, 'segment': {'type': ['string', 'null']}}, 'additionalProperties': False}, 'description': 'Rule-of-thumb verdicts for the headline numbers'}, 'bookingUrl': {'type': 'string'}, 'calculator': {'type': 'string', 'description': 'Slug of the interactive calculator on rahuldsarker.co'}}, 'additionalProperties': False}
internationalization_market_prioritization_grid
Internationalization Market Prioritization Grid
Score a candidate international market on size, localization ease, competitive whitespace, regulatory ease, and payments/GTM readiness to decide whether to prioritize, plan, or deprioritize it. See the full version at https://rahuldsarker.co/calculators/internationalization-market-prioritization-grid
読み取り専用 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['size', 'localization', 'competition', 'regulatory', 'payments'], 'properties': {'size': {'enum': ['high', 'med', 'low'], 'type': 'string', 'description': 'Market size / demand: high/med/low. Weight 30'}, 'currency': {'type': 'string', 'pattern': '^[A-Za-z]{3}$', 'description': 'ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.'}, 'payments': {'enum': ['high', 'med', 'low'], 'type': 'string', 'description': 'Payments & go-to-market readiness: high/med/low. Weight 15'}, 'regulatory': {'enum': ['high', 'med', 'low'], 'type': 'string', 'description': 'Regulatory / compliance ease: high/med/low. Weight 15'}, 'competition': {'enum': ['high', 'med', 'low'], 'type': 'string', 'description': 'Whitespace vs. competition: high/med/low. Weight 20'}, 'localization': {'enum': ['high', 'med', 'low'], 'type': 'string', 'description': 'Localization ease (language, product): high/med/low. Weight 20'}}}
出力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['kind', 'tool', 'title', 'calculator', 'url', 'bookingUrl', 'currency', 'compact', 'inputs', 'metrics', 'notes', 'benchmarks'], 'properties': {'url': {'type': 'string'}, 'kind': {'type': 'string', 'const': 'calculator'}, 'tool': {'type': 'string', 'description': 'The calculator tool that produced this result'}, 'notes': {'type': 'array', 'items': {'type': 'string'}}, 'title': {'type': 'string'}, 'inputs': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'compact': {'type': 'boolean'}, 'metrics': {'type': 'array', 'items': {'type': 'object', 'required': ['label', 'value', 'unit', 'display'], 'properties': {'unit': {'anyOf': [{'enum': ['currency', 'x', '%', 'months'], 'type': 'string'}, {'type': 'null'}]}, 'label': {'type': 'string'}, 'value': {'type': ['number', 'null']}, 'display': {'type': 'string'}}, 'additionalProperties': False}, 'description': 'Every "Label: value" line of the result; value is the first number on the line'}, 'currency': {'type': ['string', 'null']}, 'benchmarks': {'type': 'array', 'items': {'type': 'object', 'required': ['metric', 'name', 'value', 'display', 'band', 'tone', 'read', 'target', 'segment', 'source'], 'properties': {'band': {'type': 'string'}, 'name': {'type': 'string'}, 'read': {'type': 'string'}, 'tone': {'enum': ['good', 'ok', 'warn', 'bad'], 'type': 'string'}, 'value': {'type': 'number'}, 'metric': {'type': 'string'}, 'source': {'type': 'string'}, 'target': {'type': 'string'}, 'display': {'type': 'string'}, 'segment': {'type': ['string', 'null']}}, 'additionalProperties': False}, 'description': 'Rule-of-thumb verdicts for the headline numbers'}, 'bookingUrl': {'type': 'string'}, 'calculator': {'type': 'string', 'description': 'Slug of the interactive calculator on rahuldsarker.co'}}, 'additionalProperties': False}
landing_page_vs_ad_match_quality_auditor
Landing Page vs. Ad Match Quality Auditor
Score message-match continuity between an ad and its landing page across five weighted criteria (headline, keyword, offer, CTA, visuals). See the full version at https://rahuldsarker.co/calculators/landing-page-vs-ad-match-quality-auditor
読み取り専用 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['headline', 'keyword', 'offer', 'cta', 'visual'], 'properties': {'cta': {'enum': ['yes', 'partial', 'no'], 'type': 'string', 'description': 'CTA wording is consistent (weight 15)'}, 'offer': {'enum': ['yes', 'partial', 'no'], 'type': 'string', 'description': 'Ad offer / promise matches the page (weight 25)'}, 'visual': {'enum': ['yes', 'partial', 'no'], 'type': 'string', 'description': 'Creative visuals match the page (weight 10)'}, 'keyword': {'enum': ['yes', 'partial', 'no'], 'type': 'string', 'description': 'Target keyword present above the fold (weight 20)'}, 'currency': {'type': 'string', 'pattern': '^[A-Za-z]{3}$', 'description': 'ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.'}, 'headline': {'enum': ['yes', 'partial', 'no'], 'type': 'string', 'description': 'Ad headline echoed in the page H1 (weight 30)'}}}
出力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['kind', 'tool', 'title', 'calculator', 'url', 'bookingUrl', 'currency', 'compact', 'inputs', 'metrics', 'notes', 'benchmarks'], 'properties': {'url': {'type': 'string'}, 'kind': {'type': 'string', 'const': 'calculator'}, 'tool': {'type': 'string', 'description': 'The calculator tool that produced this result'}, 'notes': {'type': 'array', 'items': {'type': 'string'}}, 'title': {'type': 'string'}, 'inputs': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'compact': {'type': 'boolean'}, 'metrics': {'type': 'array', 'items': {'type': 'object', 'required': ['label', 'value', 'unit', 'display'], 'properties': {'unit': {'anyOf': [{'enum': ['currency', 'x', '%', 'months'], 'type': 'string'}, {'type': 'null'}]}, 'label': {'type': 'string'}, 'value': {'type': ['number', 'null']}, 'display': {'type': 'string'}}, 'additionalProperties': False}, 'description': 'Every "Label: value" line of the result; value is the first number on the line'}, 'currency': {'type': ['string', 'null']}, 'benchmarks': {'type': 'array', 'items': {'type': 'object', 'required': ['metric', 'name', 'value', 'display', 'band', 'tone', 'read', 'target', 'segment', 'source'], 'properties': {'band': {'type': 'string'}, 'name': {'type': 'string'}, 'read': {'type': 'string'}, 'tone': {'enum': ['good', 'ok', 'warn', 'bad'], 'type': 'string'}, 'value': {'type': 'number'}, 'metric': {'type': 'string'}, 'source': {'type': 'string'}, 'target': {'type': 'string'}, 'display': {'type': 'string'}, 'segment': {'type': ['string', 'null']}}, 'additionalProperties': False}, 'description': 'Rule-of-thumb verdicts for the headline numbers'}, 'bookingUrl': {'type': 'string'}, 'calculator': {'type': 'string', 'description': 'Slug of the interactive calculator on rahuldsarker.co'}}, 'additionalProperties': False}
lead_grading_calculator
Lead Grading Calculator
Turn firmographic fit criteria into an A–F lead grade, distinct from behavioral lead scoring. See the full version at https://rahuldsarker.co/calculators/lead-grading-calculator
読み取り専用 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['industryFit', 'companySizeFit', 'budgetConfirmed', 'decisionMakerAccess', 'serviceableGeography'], 'properties': {'currency': {'type': 'string', 'pattern': '^[A-Za-z]{3}$', 'description': 'ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.'}, 'industryFit': {'enum': ['yes', 'partial', 'no'], 'type': 'string', 'description': 'Right industry / vertical, weight 25'}, 'companySizeFit': {'enum': ['yes', 'partial', 'no'], 'type': 'string', 'description': 'Right company size, weight 20'}, 'budgetConfirmed': {'enum': ['yes', 'partial', 'no'], 'type': 'string', 'description': 'Budget confirmed or implied, weight 20'}, 'decisionMakerAccess': {'enum': ['yes', 'partial', 'no'], 'type': 'string', 'description': 'Talking to a decision-maker, weight 20'}, 'serviceableGeography': {'enum': ['yes', 'partial', 'no'], 'type': 'string', 'description': 'Serviceable geography, weight 15'}}}
出力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['kind', 'tool', 'title', 'calculator', 'url', 'bookingUrl', 'currency', 'compact', 'inputs', 'metrics', 'notes', 'benchmarks'], 'properties': {'url': {'type': 'string'}, 'kind': {'type': 'string', 'const': 'calculator'}, 'tool': {'type': 'string', 'description': 'The calculator tool that produced this result'}, 'notes': {'type': 'array', 'items': {'type': 'string'}}, 'title': {'type': 'string'}, 'inputs': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'compact': {'type': 'boolean'}, 'metrics': {'type': 'array', 'items': {'type': 'object', 'required': ['label', 'value', 'unit', 'display'], 'properties': {'unit': {'anyOf': [{'enum': ['currency', 'x', '%', 'months'], 'type': 'string'}, {'type': 'null'}]}, 'label': {'type': 'string'}, 'value': {'type': ['number', 'null']}, 'display': {'type': 'string'}}, 'additionalProperties': False}, 'description': 'Every "Label: value" line of the result; value is the first number on the line'}, 'currency': {'type': ['string', 'null']}, 'benchmarks': {'type': 'array', 'items': {'type': 'object', 'required': ['metric', 'name', 'value', 'display', 'band', 'tone', 'read', 'target', 'segment', 'source'], 'properties': {'band': {'type': 'string'}, 'name': {'type': 'string'}, 'read': {'type': 'string'}, 'tone': {'enum': ['good', 'ok', 'warn', 'bad'], 'type': 'string'}, 'value': {'type': 'number'}, 'metric': {'type': 'string'}, 'source': {'type': 'string'}, 'target': {'type': 'string'}, 'display': {'type': 'string'}, 'segment': {'type': ['string', 'null']}}, 'additionalProperties': False}, 'description': 'Rule-of-thumb verdicts for the headline numbers'}, 'bookingUrl': {'type': 'string'}, 'calculator': {'type': 'string', 'description': 'Slug of the interactive calculator on rahuldsarker.co'}}, 'additionalProperties': False}
lead_magnet_copy_grader
Lead Magnet Copy Grader
Score a lead magnet's perceived opt-in value across five weighted criteria into a 0-100 score. See the full version at https://rahuldsarker.co/calculators/lead-magnet-copy-grader
読み取り専用 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['specificTangibleOutcome', 'deliversValueFast', 'appealingFormat', 'feelsCredible', 'relevantToIcpProblem'], 'properties': {'currency': {'type': 'string', 'pattern': '^[A-Za-z]{3}$', 'description': 'ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.'}, 'feelsCredible': {'enum': ['yes', 'partial', 'no'], 'type': 'string', 'description': 'Feels credible / worth an email (weight 15)'}, 'appealingFormat': {'enum': ['yes', 'partial', 'no'], 'type': 'string', 'description': 'Format is appealing, tool/template over PDF (weight 15)'}, 'deliversValueFast': {'enum': ['yes', 'partial', 'no'], 'type': 'string', 'description': 'Delivers value fast, not a 40-page slog (weight 20)'}, 'relevantToIcpProblem': {'enum': ['yes', 'partial', 'no'], 'type': 'string', 'description': "Directly relevant to your ICP's problem (weight 25)"}, 'specificTangibleOutcome': {'enum': ['yes', 'partial', 'no'], 'type': 'string', 'description': 'Promises a specific, tangible outcome (weight 25)'}}}
出力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['kind', 'tool', 'title', 'calculator', 'url', 'bookingUrl', 'currency', 'compact', 'inputs', 'metrics', 'notes', 'benchmarks'], 'properties': {'url': {'type': 'string'}, 'kind': {'type': 'string', 'const': 'calculator'}, 'tool': {'type': 'string', 'description': 'The calculator tool that produced this result'}, 'notes': {'type': 'array', 'items': {'type': 'string'}}, 'title': {'type': 'string'}, 'inputs': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'compact': {'type': 'boolean'}, 'metrics': {'type': 'array', 'items': {'type': 'object', 'required': ['label', 'value', 'unit', 'display'], 'properties': {'unit': {'anyOf': [{'enum': ['currency', 'x', '%', 'months'], 'type': 'string'}, {'type': 'null'}]}, 'label': {'type': 'string'}, 'value': {'type': ['number', 'null']}, 'display': {'type': 'string'}}, 'additionalProperties': False}, 'description': 'Every "Label: value" line of the result; value is the first number on the line'}, 'currency': {'type': ['string', 'null']}, 'benchmarks': {'type': 'array', 'items': {'type': 'object', 'required': ['metric', 'name', 'value', 'display', 'band', 'tone', 'read', 'target', 'segment', 'source'], 'properties': {'band': {'type': 'string'}, 'name': {'type': 'string'}, 'read': {'type': 'string'}, 'tone': {'enum': ['good', 'ok', 'warn', 'bad'], 'type': 'string'}, 'value': {'type': 'number'}, 'metric': {'type': 'string'}, 'source': {'type': 'string'}, 'target': {'type': 'string'}, 'display': {'type': 'string'}, 'segment': {'type': ['string', 'null']}}, 'additionalProperties': False}, 'description': 'Rule-of-thumb verdicts for the headline numbers'}, 'bookingUrl': {'type': 'string'}, 'calculator': {'type': 'string', 'description': 'Slug of the interactive calculator on rahuldsarker.co'}}, 'additionalProperties': False}
lead_quality_intent_evaluator
Lead Quality & Intent Evaluator
Split signups into corporate-email vs personal-email intent segments, apply different close rates to each, and score overall lead quality. See the full version at https://rahuldsarker.co/calculators/lead-quality-intent-evaluator
読み取り専用 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['signupsPerMonth', 'corporateEmailSharePct', 'corporateCloseRatePct', 'personalCloseRatePct'], 'properties': {'currency': {'type': 'string', 'pattern': '^[A-Za-z]{3}$', 'description': 'ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.'}, 'signupsPerMonth': {'type': 'number', 'description': 'Signups per month'}, 'personalCloseRatePct': {'type': 'number', 'description': 'Personal-email close rate, as a percentage'}, 'corporateCloseRatePct': {'type': 'number', 'description': 'Corporate-email close rate, as a percentage'}, 'corporateEmailSharePct': {'type': 'number', 'description': 'Corporate-email share, as a percentage, vs gmail/outlook/free personal domains'}}}
出力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['kind', 'tool', 'title', 'calculator', 'url', 'bookingUrl', 'currency', 'compact', 'inputs', 'metrics', 'notes', 'benchmarks'], 'properties': {'url': {'type': 'string'}, 'kind': {'type': 'string', 'const': 'calculator'}, 'tool': {'type': 'string', 'description': 'The calculator tool that produced this result'}, 'notes': {'type': 'array', 'items': {'type': 'string'}}, 'title': {'type': 'string'}, 'inputs': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'compact': {'type': 'boolean'}, 'metrics': {'type': 'array', 'items': {'type': 'object', 'required': ['label', 'value', 'unit', 'display'], 'properties': {'unit': {'anyOf': [{'enum': ['currency', 'x', '%', 'months'], 'type': 'string'}, {'type': 'null'}]}, 'label': {'type': 'string'}, 'value': {'type': ['number', 'null']}, 'display': {'type': 'string'}}, 'additionalProperties': False}, 'description': 'Every "Label: value" line of the result; value is the first number on the line'}, 'currency': {'type': ['string', 'null']}, 'benchmarks': {'type': 'array', 'items': {'type': 'object', 'required': ['metric', 'name', 'value', 'display', 'band', 'tone', 'read', 'target', 'segment', 'source'], 'properties': {'band': {'type': 'string'}, 'name': {'type': 'string'}, 'read': {'type': 'string'}, 'tone': {'enum': ['good', 'ok', 'warn', 'bad'], 'type': 'string'}, 'value': {'type': 'number'}, 'metric': {'type': 'string'}, 'source': {'type': 'string'}, 'target': {'type': 'string'}, 'display': {'type': 'string'}, 'segment': {'type': ['string', 'null']}}, 'additionalProperties': False}, 'description': 'Rule-of-thumb verdicts for the headline numbers'}, 'bookingUrl': {'type': 'string'}, 'calculator': {'type': 'string', 'description': 'Slug of the interactive calculator on rahuldsarker.co'}}, 'additionalProperties': False}
lead_routing_delay_cost_calculator
Lead Routing Delay Cost Calculator
Estimate the deals and revenue lost each month from slow lead response times, modeling how conversion decays with response delay. See the full version at https://rahuldsarker.co/calculators/lead-routing-delay-cost-calculator
読み取り専用 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['monthlyLeads', 'currentResponseMinutes', 'targetResponseMinutes', 'conversionAtTargetPct', 'dealValue'], 'properties': {'currency': {'type': 'string', 'pattern': '^[A-Za-z]{3}$', 'description': 'ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.'}, 'dealValue': {'type': 'number', 'description': 'Average deal value'}, 'monthlyLeads': {'type': 'number', 'description': 'Inbound leads per month'}, 'conversionAtTargetPct': {'type': 'number', 'description': 'Lead-to-deal conversion rate when responding at the target speed, as a percentage'}, 'targetResponseMinutes': {'type': 'number', 'description': 'Target response time, in minutes'}, 'currentResponseMinutes': {'type': 'number', 'description': 'Current average response time, in minutes'}}}
出力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['kind', 'tool', 'title', 'calculator', 'url', 'bookingUrl', 'currency', 'compact', 'inputs', 'metrics', 'notes', 'benchmarks'], 'properties': {'url': {'type': 'string'}, 'kind': {'type': 'string', 'const': 'calculator'}, 'tool': {'type': 'string', 'description': 'The calculator tool that produced this result'}, 'notes': {'type': 'array', 'items': {'type': 'string'}}, 'title': {'type': 'string'}, 'inputs': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'compact': {'type': 'boolean'}, 'metrics': {'type': 'array', 'items': {'type': 'object', 'required': ['label', 'value', 'unit', 'display'], 'properties': {'unit': {'anyOf': [{'enum': ['currency', 'x', '%', 'months'], 'type': 'string'}, {'type': 'null'}]}, 'label': {'type': 'string'}, 'value': {'type': ['number', 'null']}, 'display': {'type': 'string'}}, 'additionalProperties': False}, 'description': 'Every "Label: value" line of the result; value is the first number on the line'}, 'currency': {'type': ['string', 'null']}, 'benchmarks': {'type': 'array', 'items': {'type': 'object', 'required': ['metric', 'name', 'value', 'display', 'band', 'tone', 'read', 'target', 'segment', 'source'], 'properties': {'band': {'type': 'string'}, 'name': {'type': 'string'}, 'read': {'type': 'string'}, 'tone': {'enum': ['good', 'ok', 'warn', 'bad'], 'type': 'string'}, 'value': {'type': 'number'}, 'metric': {'type': 'string'}, 'source': {'type': 'string'}, 'target': {'type': 'string'}, 'display': {'type': 'string'}, 'segment': {'type': ['string', 'null']}}, 'additionalProperties': False}, 'description': 'Rule-of-thumb verdicts for the headline numbers'}, 'bookingUrl': {'type': 'string'}, 'calculator': {'type': 'string', 'description': 'Slug of the interactive calculator on rahuldsarker.co'}}, 'additionalProperties': False}
lead_scoring_logic_architect
Lead Scoring Logic Architect
Score a lead on weighted fit and behavior criteria and get a routing recommendation (route to sales, nurture, or disqualify). See the full version at https://rahuldsarker.co/calculators/lead-scoring-logic-architect
読み取り専用 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['industryFit', 'companySizeFit', 'titleSeniority', 'pricingPageVisit', 'contentEngagement', 'highIntentAction'], 'properties': {'currency': {'type': 'string', 'pattern': '^[A-Za-z]{3}$', 'description': 'ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.'}, 'industryFit': {'enum': ['strong', 'moderate', 'weak', 'none'], 'type': 'string', 'description': 'Industry / ICP match, weight 15'}, 'companySizeFit': {'enum': ['strong', 'moderate', 'weak', 'none'], 'type': 'string', 'description': 'Company size fit, weight 15'}, 'titleSeniority': {'enum': ['strong', 'moderate', 'weak', 'none'], 'type': 'string', 'description': 'Job title / seniority match, weight 10'}, 'highIntentAction': {'enum': ['strong', 'moderate', 'weak', 'none'], 'type': 'string', 'description': 'High-intent action such as trial or contact, weight 25'}, 'pricingPageVisit': {'enum': ['strong', 'moderate', 'weak', 'none'], 'type': 'string', 'description': 'Visited pricing / demo page, weight 20'}, 'contentEngagement': {'enum': ['strong', 'moderate', 'weak', 'none'], 'type': 'string', 'description': 'Content / email engagement, weight 15'}}}
出力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['kind', 'tool', 'title', 'calculator', 'url', 'bookingUrl', 'currency', 'compact', 'inputs', 'metrics', 'notes', 'benchmarks'], 'properties': {'url': {'type': 'string'}, 'kind': {'type': 'string', 'const': 'calculator'}, 'tool': {'type': 'string', 'description': 'The calculator tool that produced this result'}, 'notes': {'type': 'array', 'items': {'type': 'string'}}, 'title': {'type': 'string'}, 'inputs': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'compact': {'type': 'boolean'}, 'metrics': {'type': 'array', 'items': {'type': 'object', 'required': ['label', 'value', 'unit', 'display'], 'properties': {'unit': {'anyOf': [{'enum': ['currency', 'x', '%', 'months'], 'type': 'string'}, {'type': 'null'}]}, 'label': {'type': 'string'}, 'value': {'type': ['number', 'null']}, 'display': {'type': 'string'}}, 'additionalProperties': False}, 'description': 'Every "Label: value" line of the result; value is the first number on the line'}, 'currency': {'type': ['string', 'null']}, 'benchmarks': {'type': 'array', 'items': {'type': 'object', 'required': ['metric', 'name', 'value', 'display', 'band', 'tone', 'read', 'target', 'segment', 'source'], 'properties': {'band': {'type': 'string'}, 'name': {'type': 'string'}, 'read': {'type': 'string'}, 'tone': {'enum': ['good', 'ok', 'warn', 'bad'], 'type': 'string'}, 'value': {'type': 'number'}, 'metric': {'type': 'string'}, 'source': {'type': 'string'}, 'target': {'type': 'string'}, 'display': {'type': 'string'}, 'segment': {'type': ['string', 'null']}}, 'additionalProperties': False}, 'description': 'Rule-of-thumb verdicts for the headline numbers'}, 'bookingUrl': {'type': 'string'}, 'calculator': {'type': 'string', 'description': 'Slug of the interactive calculator on rahuldsarker.co'}}, 'additionalProperties': False}
linkedin_ad_cost_threshold_calculator
LinkedIn Ad Cost Threshold Calculator
Calculate implied CAC from LinkedIn CPC, landing conversion, and close rate, and check it against the maximum CAC a contract can fund. See the full version at https://rahuldsarker.co/calculators/linkedin-ad-cost-threshold-calculator
読み取り専用 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['cpc', 'landingConvPct', 'closeRatePct', 'contractValue', 'grossMarginPct'], 'properties': {'cpc': {'type': 'number', 'description': 'LinkedIn cost per click'}, 'currency': {'type': 'string', 'pattern': '^[A-Za-z]{3}$', 'description': 'ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.'}, 'closeRatePct': {'type': 'number', 'description': 'Lead-to-customer close rate, as a percentage'}, 'contractValue': {'type': 'number', 'description': 'Contract value'}, 'grossMarginPct': {'type': 'number', 'description': 'Gross margin, as a percentage'}, 'landingConvPct': {'type': 'number', 'description': 'Landing page conversion rate, as a percentage'}}}
出力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['kind', 'tool', 'title', 'calculator', 'url', 'bookingUrl', 'currency', 'compact', 'inputs', 'metrics', 'notes', 'benchmarks'], 'properties': {'url': {'type': 'string'}, 'kind': {'type': 'string', 'const': 'calculator'}, 'tool': {'type': 'string', 'description': 'The calculator tool that produced this result'}, 'notes': {'type': 'array', 'items': {'type': 'string'}}, 'title': {'type': 'string'}, 'inputs': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'compact': {'type': 'boolean'}, 'metrics': {'type': 'array', 'items': {'type': 'object', 'required': ['label', 'value', 'unit', 'display'], 'properties': {'unit': {'anyOf': [{'enum': ['currency', 'x', '%', 'months'], 'type': 'string'}, {'type': 'null'}]}, 'label': {'type': 'string'}, 'value': {'type': ['number', 'null']}, 'display': {'type': 'string'}}, 'additionalProperties': False}, 'description': 'Every "Label: value" line of the result; value is the first number on the line'}, 'currency': {'type': ['string', 'null']}, 'benchmarks': {'type': 'array', 'items': {'type': 'object', 'required': ['metric', 'name', 'value', 'display', 'band', 'tone', 'read', 'target', 'segment', 'source'], 'properties': {'band': {'type': 'string'}, 'name': {'type': 'string'}, 'read': {'type': 'string'}, 'tone': {'enum': ['good', 'ok', 'warn', 'bad'], 'type': 'string'}, 'value': {'type': 'number'}, 'metric': {'type': 'string'}, 'source': {'type': 'string'}, 'target': {'type': 'string'}, 'display': {'type': 'string'}, 'segment': {'type': ['string', 'null']}}, 'additionalProperties': False}, 'description': 'Rule-of-thumb verdicts for the headline numbers'}, 'bookingUrl': {'type': 'string'}, 'calculator': {'type': 'string', 'description': 'Slug of the interactive calculator on rahuldsarker.co'}}, 'additionalProperties': False}
lookalike_audience_pool_calculator
Lookalike Audience Pool Calculator
Estimate the addressable pool from a lookalike percentage and market population, and grade seed audience quality. See the full version at https://rahuldsarker.co/calculators/lookalike-audience-pool-calculator
読み取り専用 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['population', 'lookalikePct', 'seed'], 'properties': {'seed': {'type': 'number', 'description': 'Seed audience size (customers/leads the model is built from)'}, 'currency': {'type': 'string', 'pattern': '^[A-Za-z]{3}$', 'description': 'ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.'}, 'population': {'type': 'number', 'description': 'Target market population (addressable users in the country/region)'}, 'lookalikePct': {'type': 'number', 'description': 'Lookalike percentage, e.g. 1 for tightest match, 10 for broadest'}}}
出力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['kind', 'tool', 'title', 'calculator', 'url', 'bookingUrl', 'currency', 'compact', 'inputs', 'metrics', 'notes', 'benchmarks'], 'properties': {'url': {'type': 'string'}, 'kind': {'type': 'string', 'const': 'calculator'}, 'tool': {'type': 'string', 'description': 'The calculator tool that produced this result'}, 'notes': {'type': 'array', 'items': {'type': 'string'}}, 'title': {'type': 'string'}, 'inputs': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'compact': {'type': 'boolean'}, 'metrics': {'type': 'array', 'items': {'type': 'object', 'required': ['label', 'value', 'unit', 'display'], 'properties': {'unit': {'anyOf': [{'enum': ['currency', 'x', '%', 'months'], 'type': 'string'}, {'type': 'null'}]}, 'label': {'type': 'string'}, 'value': {'type': ['number', 'null']}, 'display': {'type': 'string'}}, 'additionalProperties': False}, 'description': 'Every "Label: value" line of the result; value is the first number on the line'}, 'currency': {'type': ['string', 'null']}, 'benchmarks': {'type': 'array', 'items': {'type': 'object', 'required': ['metric', 'name', 'value', 'display', 'band', 'tone', 'read', 'target', 'segment', 'source'], 'properties': {'band': {'type': 'string'}, 'name': {'type': 'string'}, 'read': {'type': 'string'}, 'tone': {'enum': ['good', 'ok', 'warn', 'bad'], 'type': 'string'}, 'value': {'type': 'number'}, 'metric': {'type': 'string'}, 'source': {'type': 'string'}, 'target': {'type': 'string'}, 'display': {'type': 'string'}, 'segment': {'type': ['string', 'null']}}, 'additionalProperties': False}, 'description': 'Rule-of-thumb verdicts for the headline numbers'}, 'bookingUrl': {'type': 'string'}, 'calculator': {'type': 'string', 'description': 'Slug of the interactive calculator on rahuldsarker.co'}}, 'additionalProperties': False}
ltv_cac_calculator
LTV : CAC Ratio Calculator
Calculate customer LTV, CAC, the LTV:CAC ratio, and CAC payback period. See the full version at https://rahuldsarker.co/calculators/cac-ltv
読み取り専用 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['monthlyArpa', 'grossMarginPct', 'monthlyChurnPct', 'salesAndMarketingSpend', 'newCustomers'], 'properties': {'segment': {'enum': ['smb', 'mid_market', 'enterprise'], 'type': 'string', 'description': 'Customer segment for the benchmark verdict: smb, mid_market or enterprise (default smb)'}, 'currency': {'type': 'string', 'pattern': '^[A-Za-z]{3}$', 'description': 'ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.'}, 'monthlyArpa': {'type': 'number', 'description': 'Average monthly revenue per account (ARPA)'}, 'newCustomers': {'type': 'number', 'description': 'New customers acquired in that same period'}, 'grossMarginPct': {'type': 'number', 'description': 'Gross margin, as a percentage'}, 'monthlyChurnPct': {'type': 'number', 'description': 'Monthly customer churn rate, as a percentage'}, 'salesAndMarketingSpend': {'type': 'number', 'description': 'Total sales and marketing spend for the period'}}}
出力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['kind', 'tool', 'title', 'calculator', 'url', 'bookingUrl', 'currency', 'compact', 'inputs', 'metrics', 'notes', 'benchmarks'], 'properties': {'url': {'type': 'string'}, 'kind': {'type': 'string', 'const': 'calculator'}, 'tool': {'type': 'string', 'description': 'The calculator tool that produced this result'}, 'notes': {'type': 'array', 'items': {'type': 'string'}}, 'title': {'type': 'string'}, 'inputs': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'compact': {'type': 'boolean'}, 'metrics': {'type': 'array', 'items': {'type': 'object', 'required': ['label', 'value', 'unit', 'display'], 'properties': {'unit': {'anyOf': [{'enum': ['currency', 'x', '%', 'months'], 'type': 'string'}, {'type': 'null'}]}, 'label': {'type': 'string'}, 'value': {'type': ['number', 'null']}, 'display': {'type': 'string'}}, 'additionalProperties': False}, 'description': 'Every "Label: value" line of the result; value is the first number on the line'}, 'currency': {'type': ['string', 'null']}, 'benchmarks': {'type': 'array', 'items': {'type': 'object', 'required': ['metric', 'name', 'value', 'display', 'band', 'tone', 'read', 'target', 'segment', 'source'], 'properties': {'band': {'type': 'string'}, 'name': {'type': 'string'}, 'read': {'type': 'string'}, 'tone': {'enum': ['good', 'ok', 'warn', 'bad'], 'type': 'string'}, 'value': {'type': 'number'}, 'metric': {'type': 'string'}, 'source': {'type': 'string'}, 'target': {'type': 'string'}, 'display': {'type': 'string'}, 'segment': {'type': ['string', 'null']}}, 'additionalProperties': False}, 'description': 'Rule-of-thumb verdicts for the headline numbers'}, 'bookingUrl': {'type': 'string'}, 'calculator': {'type': 'string', 'description': 'Slug of the interactive calculator on rahuldsarker.co'}}, 'additionalProperties': False}
ltv_growth_multiplier_simulator
LTV Growth Multiplier Simulator
Show how much gross-margin LTV grows when monthly churn improves, using LTV = ARPA x gross margin / monthly churn. See the full version at https://rahuldsarker.co/calculators/ltv-growth-multiplier-simulator
読み取り専用 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['arpa', 'grossMarginPct', 'currentChurnPct', 'improvedChurnPct'], 'properties': {'arpa': {'type': 'number', 'description': 'Monthly revenue per account (ARPA)'}, 'currency': {'type': 'string', 'pattern': '^[A-Za-z]{3}$', 'description': 'ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.'}, 'grossMarginPct': {'type': 'number', 'description': 'Gross margin, as a percentage'}, 'currentChurnPct': {'type': 'number', 'description': 'Current monthly churn, as a percentage'}, 'improvedChurnPct': {'type': 'number', 'description': 'Improved monthly churn, as a percentage'}}}
出力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['kind', 'tool', 'title', 'calculator', 'url', 'bookingUrl', 'currency', 'compact', 'inputs', 'metrics', 'notes', 'benchmarks'], 'properties': {'url': {'type': 'string'}, 'kind': {'type': 'string', 'const': 'calculator'}, 'tool': {'type': 'string', 'description': 'The calculator tool that produced this result'}, 'notes': {'type': 'array', 'items': {'type': 'string'}}, 'title': {'type': 'string'}, 'inputs': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'compact': {'type': 'boolean'}, 'metrics': {'type': 'array', 'items': {'type': 'object', 'required': ['label', 'value', 'unit', 'display'], 'properties': {'unit': {'anyOf': [{'enum': ['currency', 'x', '%', 'months'], 'type': 'string'}, {'type': 'null'}]}, 'label': {'type': 'string'}, 'value': {'type': ['number', 'null']}, 'display': {'type': 'string'}}, 'additionalProperties': False}, 'description': 'Every "Label: value" line of the result; value is the first number on the line'}, 'currency': {'type': ['string', 'null']}, 'benchmarks': {'type': 'array', 'items': {'type': 'object', 'required': ['metric', 'name', 'value', 'display', 'band', 'tone', 'read', 'target', 'segment', 'source'], 'properties': {'band': {'type': 'string'}, 'name': {'type': 'string'}, 'read': {'type': 'string'}, 'tone': {'enum': ['good', 'ok', 'warn', 'bad'], 'type': 'string'}, 'value': {'type': 'number'}, 'metric': {'type': 'string'}, 'source': {'type': 'string'}, 'target': {'type': 'string'}, 'display': {'type': 'string'}, 'segment': {'type': ['string', 'null']}}, 'additionalProperties': False}, 'description': 'Rule-of-thumb verdicts for the headline numbers'}, 'bookingUrl': {'type': 'string'}, 'calculator': {'type': 'string', 'description': 'Slug of the interactive calculator on rahuldsarker.co'}}, 'additionalProperties': False}
ltv_to_cac_ratio_health_grader
LTV : CAC Ratio Health Grader
Grade the LTV:CAC ratio on a gross-margin basis against health bands, from losing money to under-investing. See the full version at https://rahuldsarker.co/calculators/cac-ltv
読み取り専用 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['ltv', 'grossMarginPct', 'cac'], 'properties': {'cac': {'type': 'number', 'description': 'Fully-loaded customer acquisition cost'}, 'ltv': {'type': 'number', 'description': 'Customer LTV (revenue basis)'}, 'currency': {'type': 'string', 'pattern': '^[A-Za-z]{3}$', 'description': 'ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.'}, 'grossMarginPct': {'type': 'number', 'description': 'Gross margin, as a percentage, applied to LTV'}}}
出力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['kind', 'tool', 'title', 'calculator', 'url', 'bookingUrl', 'currency', 'compact', 'inputs', 'metrics', 'notes', 'benchmarks'], 'properties': {'url': {'type': 'string'}, 'kind': {'type': 'string', 'const': 'calculator'}, 'tool': {'type': 'string', 'description': 'The calculator tool that produced this result'}, 'notes': {'type': 'array', 'items': {'type': 'string'}}, 'title': {'type': 'string'}, 'inputs': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'compact': {'type': 'boolean'}, 'metrics': {'type': 'array', 'items': {'type': 'object', 'required': ['label', 'value', 'unit', 'display'], 'properties': {'unit': {'anyOf': [{'enum': ['currency', 'x', '%', 'months'], 'type': 'string'}, {'type': 'null'}]}, 'label': {'type': 'string'}, 'value': {'type': ['number', 'null']}, 'display': {'type': 'string'}}, 'additionalProperties': False}, 'description': 'Every "Label: value" line of the result; value is the first number on the line'}, 'currency': {'type': ['string', 'null']}, 'benchmarks': {'type': 'array', 'items': {'type': 'object', 'required': ['metric', 'name', 'value', 'display', 'band', 'tone', 'read', 'target', 'segment', 'source'], 'properties': {'band': {'type': 'string'}, 'name': {'type': 'string'}, 'read': {'type': 'string'}, 'tone': {'enum': ['good', 'ok', 'warn', 'bad'], 'type': 'string'}, 'value': {'type': 'number'}, 'metric': {'type': 'string'}, 'source': {'type': 'string'}, 'target': {'type': 'string'}, 'display': {'type': 'string'}, 'segment': {'type': ['string', 'null']}}, 'additionalProperties': False}, 'description': 'Rule-of-thumb verdicts for the headline numbers'}, 'bookingUrl': {'type': 'string'}, 'calculator': {'type': 'string', 'description': 'Slug of the interactive calculator on rahuldsarker.co'}}, 'additionalProperties': False}
marketing_agency_pitch_bullshit_detector
Marketing Agency Pitch Bullshit Detector
Score an agency pitch on whether it's grounded in real, verifiable outcomes or dressed-up vanity metrics and vague promises. Answer 6 checks and get a credibility score, a BS meter, and a verdict before you sign anything. See the full version at https://rahuldsarker.co/calculators/marketing-agency-pitch-bullshit-detector
読み取り専用 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['pipeline', 'attribution', 'reporting', 'references', 'ownership', 'guarantees'], 'properties': {'currency': {'type': 'string', 'pattern': '^[A-Za-z]{3}$', 'description': 'ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.'}, 'pipeline': {'enum': ['yes', 'vague', 'no'], 'type': 'string', 'description': 'Ties work to pipeline/revenue, not just impressions: yes/vague/no. Weight 25'}, 'ownership': {'enum': ['yes', 'vague', 'no'], 'type': 'string', 'description': 'You own the accounts, assets & data: yes/vague/no. Weight 15'}, 'reporting': {'enum': ['yes', 'vague', 'no'], 'type': 'string', 'description': 'Transparent reporting & data access: yes/vague/no. Weight 15'}, 'guarantees': {'enum': ['yes', 'vague', 'no'], 'type': 'string', 'description': 'Avoids guaranteed-results / vanity promises: yes/vague/no. Weight 10'}, 'references': {'enum': ['yes', 'vague', 'no'], 'type': 'string', 'description': 'Relevant references / case studies: yes/vague/no. Weight 15'}, 'attribution': {'enum': ['yes', 'vague', 'no'], 'type': 'string', 'description': 'Explains how they attribute results: yes/vague/no. Weight 20'}}}
出力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['kind', 'tool', 'title', 'calculator', 'url', 'bookingUrl', 'currency', 'compact', 'inputs', 'metrics', 'notes', 'benchmarks'], 'properties': {'url': {'type': 'string'}, 'kind': {'type': 'string', 'const': 'calculator'}, 'tool': {'type': 'string', 'description': 'The calculator tool that produced this result'}, 'notes': {'type': 'array', 'items': {'type': 'string'}}, 'title': {'type': 'string'}, 'inputs': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'compact': {'type': 'boolean'}, 'metrics': {'type': 'array', 'items': {'type': 'object', 'required': ['label', 'value', 'unit', 'display'], 'properties': {'unit': {'anyOf': [{'enum': ['currency', 'x', '%', 'months'], 'type': 'string'}, {'type': 'null'}]}, 'label': {'type': 'string'}, 'value': {'type': ['number', 'null']}, 'display': {'type': 'string'}}, 'additionalProperties': False}, 'description': 'Every "Label: value" line of the result; value is the first number on the line'}, 'currency': {'type': ['string', 'null']}, 'benchmarks': {'type': 'array', 'items': {'type': 'object', 'required': ['metric', 'name', 'value', 'display', 'band', 'tone', 'read', 'target', 'segment', 'source'], 'properties': {'band': {'type': 'string'}, 'name': {'type': 'string'}, 'read': {'type': 'string'}, 'tone': {'enum': ['good', 'ok', 'warn', 'bad'], 'type': 'string'}, 'value': {'type': 'number'}, 'metric': {'type': 'string'}, 'source': {'type': 'string'}, 'target': {'type': 'string'}, 'display': {'type': 'string'}, 'segment': {'type': ['string', 'null']}}, 'additionalProperties': False}, 'description': 'Rule-of-thumb verdicts for the headline numbers'}, 'bookingUrl': {'type': 'string'}, 'calculator': {'type': 'string', 'description': 'Slug of the interactive calculator on rahuldsarker.co'}}, 'additionalProperties': False}
marketing_budget
Marketing Budget Calculator
Size an annual and monthly marketing budget as a percentage of revenue, based on a growth posture (maintain, grow, or aggressive) or a custom override. See the full version at https://rahuldsarker.co/calculators/marketing-budget
読み取り専用 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['annualRevenue'], 'properties': {'posture': {'enum': ['maintain', 'grow', 'aggressive'], 'type': 'string', 'description': "Growth posture benchmark: 'maintain' (~6% of revenue, hold position), 'grow' (~11%, take share), or 'aggressive' (~18%, capture the market). Defaults to 'grow'."}, 'currency': {'type': 'string', 'pattern': '^[A-Za-z]{3}$', 'description': 'ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.'}, 'customPct': {'type': 'number', 'description': 'Custom percentage of revenue, overrides the posture benchmark when set'}, 'annualRevenue': {'type': 'number', 'description': 'Annual revenue'}}}
出力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['kind', 'tool', 'title', 'calculator', 'url', 'bookingUrl', 'currency', 'compact', 'inputs', 'metrics', 'notes', 'benchmarks'], 'properties': {'url': {'type': 'string'}, 'kind': {'type': 'string', 'const': 'calculator'}, 'tool': {'type': 'string', 'description': 'The calculator tool that produced this result'}, 'notes': {'type': 'array', 'items': {'type': 'string'}}, 'title': {'type': 'string'}, 'inputs': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'compact': {'type': 'boolean'}, 'metrics': {'type': 'array', 'items': {'type': 'object', 'required': ['label', 'value', 'unit', 'display'], 'properties': {'unit': {'anyOf': [{'enum': ['currency', 'x', '%', 'months'], 'type': 'string'}, {'type': 'null'}]}, 'label': {'type': 'string'}, 'value': {'type': ['number', 'null']}, 'display': {'type': 'string'}}, 'additionalProperties': False}, 'description': 'Every "Label: value" line of the result; value is the first number on the line'}, 'currency': {'type': ['string', 'null']}, 'benchmarks': {'type': 'array', 'items': {'type': 'object', 'required': ['metric', 'name', 'value', 'display', 'band', 'tone', 'read', 'target', 'segment', 'source'], 'properties': {'band': {'type': 'string'}, 'name': {'type': 'string'}, 'read': {'type': 'string'}, 'tone': {'enum': ['good', 'ok', 'warn', 'bad'], 'type': 'string'}, 'value': {'type': 'number'}, 'metric': {'type': 'string'}, 'source': {'type': 'string'}, 'target': {'type': 'string'}, 'display': {'type': 'string'}, 'segment': {'type': ['string', 'null']}}, 'additionalProperties': False}, 'description': 'Rule-of-thumb verdicts for the headline numbers'}, 'bookingUrl': {'type': 'string'}, 'calculator': {'type': 'string', 'description': 'Slug of the interactive calculator on rahuldsarker.co'}}, 'additionalProperties': False}
micro_budget_ad_feasibility_checker
Micro-Budget Ad Feasibility Checker
Check whether a small daily ad budget can generate the ~50 weekly conversions platforms typically need to exit the learning phase. See the full version at https://rahuldsarker.co/calculators/micro-budget-ad-feasibility-checker
読み取り専用 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['dailyBudget', 'estCpa'], 'properties': {'estCpa': {'type': 'number', 'description': 'Estimated CPA (cost per optimization event)'}, 'currency': {'type': 'string', 'pattern': '^[A-Za-z]{3}$', 'description': 'ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.'}, 'dailyBudget': {'type': 'number', 'description': 'Daily ad budget'}}}
出力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['kind', 'tool', 'title', 'calculator', 'url', 'bookingUrl', 'currency', 'compact', 'inputs', 'metrics', 'notes', 'benchmarks'], 'properties': {'url': {'type': 'string'}, 'kind': {'type': 'string', 'const': 'calculator'}, 'tool': {'type': 'string', 'description': 'The calculator tool that produced this result'}, 'notes': {'type': 'array', 'items': {'type': 'string'}}, 'title': {'type': 'string'}, 'inputs': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'compact': {'type': 'boolean'}, 'metrics': {'type': 'array', 'items': {'type': 'object', 'required': ['label', 'value', 'unit', 'display'], 'properties': {'unit': {'anyOf': [{'enum': ['currency', 'x', '%', 'months'], 'type': 'string'}, {'type': 'null'}]}, 'label': {'type': 'string'}, 'value': {'type': ['number', 'null']}, 'display': {'type': 'string'}}, 'additionalProperties': False}, 'description': 'Every "Label: value" line of the result; value is the first number on the line'}, 'currency': {'type': ['string', 'null']}, 'benchmarks': {'type': 'array', 'items': {'type': 'object', 'required': ['metric', 'name', 'value', 'display', 'band', 'tone', 'read', 'target', 'segment', 'source'], 'properties': {'band': {'type': 'string'}, 'name': {'type': 'string'}, 'read': {'type': 'string'}, 'tone': {'enum': ['good', 'ok', 'warn', 'bad'], 'type': 'string'}, 'value': {'type': 'number'}, 'metric': {'type': 'string'}, 'source': {'type': 'string'}, 'target': {'type': 'string'}, 'display': {'type': 'string'}, 'segment': {'type': ['string', 'null']}}, 'additionalProperties': False}, 'description': 'Rule-of-thumb verdicts for the headline numbers'}, 'bookingUrl': {'type': 'string'}, 'calculator': {'type': 'string', 'description': 'Slug of the interactive calculator on rahuldsarker.co'}}, 'additionalProperties': False}
micro_conversion_value_modeler
Micro-Conversion Value Modeler
Back into a proxy dollar value for an early-funnel micro-conversion from the value of a won customer and the micro-to-customer conversion rate. See the full version at https://rahuldsarker.co/calculators/micro-conversion-value-modeler
読み取り専用 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['wonCustomerValue', 'microToCustomerRatePct', 'monthlyMicroConversions'], 'properties': {'currency': {'type': 'string', 'pattern': '^[A-Za-z]{3}$', 'description': 'ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.'}, 'wonCustomerValue': {'type': 'number', 'description': 'Value of a won customer'}, 'microToCustomerRatePct': {'type': 'number', 'description': 'Micro-action to customer conversion rate, as a percentage'}, 'monthlyMicroConversions': {'type': 'number', 'description': 'Micro-conversions per month'}}}
出力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['kind', 'tool', 'title', 'calculator', 'url', 'bookingUrl', 'currency', 'compact', 'inputs', 'metrics', 'notes', 'benchmarks'], 'properties': {'url': {'type': 'string'}, 'kind': {'type': 'string', 'const': 'calculator'}, 'tool': {'type': 'string', 'description': 'The calculator tool that produced this result'}, 'notes': {'type': 'array', 'items': {'type': 'string'}}, 'title': {'type': 'string'}, 'inputs': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'compact': {'type': 'boolean'}, 'metrics': {'type': 'array', 'items': {'type': 'object', 'required': ['label', 'value', 'unit', 'display'], 'properties': {'unit': {'anyOf': [{'enum': ['currency', 'x', '%', 'months'], 'type': 'string'}, {'type': 'null'}]}, 'label': {'type': 'string'}, 'value': {'type': ['number', 'null']}, 'display': {'type': 'string'}}, 'additionalProperties': False}, 'description': 'Every "Label: value" line of the result; value is the first number on the line'}, 'currency': {'type': ['string', 'null']}, 'benchmarks': {'type': 'array', 'items': {'type': 'object', 'required': ['metric', 'name', 'value', 'display', 'band', 'tone', 'read', 'target', 'segment', 'source'], 'properties': {'band': {'type': 'string'}, 'name': {'type': 'string'}, 'read': {'type': 'string'}, 'tone': {'enum': ['good', 'ok', 'warn', 'bad'], 'type': 'string'}, 'value': {'type': 'number'}, 'metric': {'type': 'string'}, 'source': {'type': 'string'}, 'target': {'type': 'string'}, 'display': {'type': 'string'}, 'segment': {'type': ['string', 'null']}}, 'additionalProperties': False}, 'description': 'Rule-of-thumb verdicts for the headline numbers'}, 'bookingUrl': {'type': 'string'}, 'calculator': {'type': 'string', 'description': 'Slug of the interactive calculator on rahuldsarker.co'}}, 'additionalProperties': False}
mobile_checkout_friction_tester
Mobile Checkout Friction Tester
Score a mobile checkout flow's friction from step count, guest checkout, wallet pay, autofill, and mobile input types into a 0-100 score. See the full version at https://rahuldsarker.co/calculators/mobile-checkout-friction-tester
読み取り専用 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['steps', 'guestCheckout', 'walletPay', 'autofillSupported', 'correctMobileInputs'], 'properties': {'steps': {'enum': ['one', 'two', 'threeplus'], 'type': 'string', 'description': 'Checkout steps/screens: one (single page), two, or threeplus'}, 'currency': {'type': 'string', 'pattern': '^[A-Za-z]{3}$', 'description': 'ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.'}, 'walletPay': {'enum': ['yes', 'partial', 'no'], 'type': 'string', 'description': 'Wallet / one-tap pay (Apple/Google Pay) available'}, 'guestCheckout': {'enum': ['yes', 'partial', 'no'], 'type': 'string', 'description': 'Guest checkout available'}, 'autofillSupported': {'enum': ['yes', 'partial', 'no'], 'type': 'string', 'description': 'Autofill & saved details supported'}, 'correctMobileInputs': {'enum': ['yes', 'partial', 'no'], 'type': 'string', 'description': 'Correct mobile input types & keyboards used'}}}
出力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['kind', 'tool', 'title', 'calculator', 'url', 'bookingUrl', 'currency', 'compact', 'inputs', 'metrics', 'notes', 'benchmarks'], 'properties': {'url': {'type': 'string'}, 'kind': {'type': 'string', 'const': 'calculator'}, 'tool': {'type': 'string', 'description': 'The calculator tool that produced this result'}, 'notes': {'type': 'array', 'items': {'type': 'string'}}, 'title': {'type': 'string'}, 'inputs': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'compact': {'type': 'boolean'}, 'metrics': {'type': 'array', 'items': {'type': 'object', 'required': ['label', 'value', 'unit', 'display'], 'properties': {'unit': {'anyOf': [{'enum': ['currency', 'x', '%', 'months'], 'type': 'string'}, {'type': 'null'}]}, 'label': {'type': 'string'}, 'value': {'type': ['number', 'null']}, 'display': {'type': 'string'}}, 'additionalProperties': False}, 'description': 'Every "Label: value" line of the result; value is the first number on the line'}, 'currency': {'type': ['string', 'null']}, 'benchmarks': {'type': 'array', 'items': {'type': 'object', 'required': ['metric', 'name', 'value', 'display', 'band', 'tone', 'read', 'target', 'segment', 'source'], 'properties': {'band': {'type': 'string'}, 'name': {'type': 'string'}, 'read': {'type': 'string'}, 'tone': {'enum': ['good', 'ok', 'warn', 'bad'], 'type': 'string'}, 'value': {'type': 'number'}, 'metric': {'type': 'string'}, 'source': {'type': 'string'}, 'target': {'type': 'string'}, 'display': {'type': 'string'}, 'segment': {'type': ['string', 'null']}}, 'additionalProperties': False}, 'description': 'Rule-of-thumb verdicts for the headline numbers'}, 'bookingUrl': {'type': 'string'}, 'calculator': {'type': 'string', 'description': 'Slug of the interactive calculator on rahuldsarker.co'}}, 'additionalProperties': False}
mql_calculator
MQL Calculator
Turn traffic and conversion rates into MQL volume, cost per lead, and cost per MQL. See the full version at https://rahuldsarker.co/calculators/mql-calculator
読み取り専用 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['monthlyVisitors', 'leadConversionPct', 'mqlRatePct', 'monthlySpend'], 'properties': {'currency': {'type': 'string', 'pattern': '^[A-Za-z]{3}$', 'description': 'ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.'}, 'mqlRatePct': {'type': 'number', 'description': 'Lead-to-MQL rate, as a percentage'}, 'monthlySpend': {'type': 'number', 'description': 'Monthly marketing spend driving this traffic'}, 'monthlyVisitors': {'type': 'number', 'description': 'Monthly website visitors'}, 'leadConversionPct': {'type': 'number', 'description': 'Visitor-to-lead conversion rate, as a percentage'}}}
出力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['kind', 'tool', 'title', 'calculator', 'url', 'bookingUrl', 'currency', 'compact', 'inputs', 'metrics', 'notes', 'benchmarks'], 'properties': {'url': {'type': 'string'}, 'kind': {'type': 'string', 'const': 'calculator'}, 'tool': {'type': 'string', 'description': 'The calculator tool that produced this result'}, 'notes': {'type': 'array', 'items': {'type': 'string'}}, 'title': {'type': 'string'}, 'inputs': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'compact': {'type': 'boolean'}, 'metrics': {'type': 'array', 'items': {'type': 'object', 'required': ['label', 'value', 'unit', 'display'], 'properties': {'unit': {'anyOf': [{'enum': ['currency', 'x', '%', 'months'], 'type': 'string'}, {'type': 'null'}]}, 'label': {'type': 'string'}, 'value': {'type': ['number', 'null']}, 'display': {'type': 'string'}}, 'additionalProperties': False}, 'description': 'Every "Label: value" line of the result; value is the first number on the line'}, 'currency': {'type': ['string', 'null']}, 'benchmarks': {'type': 'array', 'items': {'type': 'object', 'required': ['metric', 'name', 'value', 'display', 'band', 'tone', 'read', 'target', 'segment', 'source'], 'properties': {'band': {'type': 'string'}, 'name': {'type': 'string'}, 'read': {'type': 'string'}, 'tone': {'enum': ['good', 'ok', 'warn', 'bad'], 'type': 'string'}, 'value': {'type': 'number'}, 'metric': {'type': 'string'}, 'source': {'type': 'string'}, 'target': {'type': 'string'}, 'display': {'type': 'string'}, 'segment': {'type': ['string', 'null']}}, 'additionalProperties': False}, 'description': 'Rule-of-thumb verdicts for the headline numbers'}, 'bookingUrl': {'type': 'string'}, 'calculator': {'type': 'string', 'description': 'Slug of the interactive calculator on rahuldsarker.co'}}, 'additionalProperties': False}
mql_to_sales_disconnect_analyzer
MQL-to-Sales Disconnect Analyzer
Measure the marketing spend wasted on MQLs that sales rejects, based on the accept rate between the two teams. See the full version at https://rahuldsarker.co/calculators/mql-to-sales-disconnect-analyzer
読み取り専用 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['monthlyMqls', 'salesAcceptRatePct', 'costPerMql'], 'properties': {'currency': {'type': 'string', 'pattern': '^[A-Za-z]{3}$', 'description': 'ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.'}, 'costPerMql': {'type': 'number', 'description': 'Cost per MQL'}, 'monthlyMqls': {'type': 'number', 'description': 'MQLs generated per month'}, 'salesAcceptRatePct': {'type': 'number', 'description': 'Share of MQLs sales accepts as genuine SQLs, as a percentage'}}}
出力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['kind', 'tool', 'title', 'calculator', 'url', 'bookingUrl', 'currency', 'compact', 'inputs', 'metrics', 'notes', 'benchmarks'], 'properties': {'url': {'type': 'string'}, 'kind': {'type': 'string', 'const': 'calculator'}, 'tool': {'type': 'string', 'description': 'The calculator tool that produced this result'}, 'notes': {'type': 'array', 'items': {'type': 'string'}}, 'title': {'type': 'string'}, 'inputs': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'compact': {'type': 'boolean'}, 'metrics': {'type': 'array', 'items': {'type': 'object', 'required': ['label', 'value', 'unit', 'display'], 'properties': {'unit': {'anyOf': [{'enum': ['currency', 'x', '%', 'months'], 'type': 'string'}, {'type': 'null'}]}, 'label': {'type': 'string'}, 'value': {'type': ['number', 'null']}, 'display': {'type': 'string'}}, 'additionalProperties': False}, 'description': 'Every "Label: value" line of the result; value is the first number on the line'}, 'currency': {'type': ['string', 'null']}, 'benchmarks': {'type': 'array', 'items': {'type': 'object', 'required': ['metric', 'name', 'value', 'display', 'band', 'tone', 'read', 'target', 'segment', 'source'], 'properties': {'band': {'type': 'string'}, 'name': {'type': 'string'}, 'read': {'type': 'string'}, 'tone': {'enum': ['good', 'ok', 'warn', 'bad'], 'type': 'string'}, 'value': {'type': 'number'}, 'metric': {'type': 'string'}, 'source': {'type': 'string'}, 'target': {'type': 'string'}, 'display': {'type': 'string'}, 'segment': {'type': ['string', 'null']}}, 'additionalProperties': False}, 'description': 'Rule-of-thumb verdicts for the headline numbers'}, 'bookingUrl': {'type': 'string'}, 'calculator': {'type': 'string', 'description': 'Slug of the interactive calculator on rahuldsarker.co'}}, 'additionalProperties': False}
mrr_bridge_planner
MRR Bridge Planner
Bridge starting MRR to ending MRR across new, expansion, resurrected, contraction, and churned movements. See the full version at https://rahuldsarker.co/calculators/mrr-bridge-planner
読み取り専用 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['startingMrr', 'newMrr', 'expansionMrr', 'resurrectedMrr', 'contractionMrr', 'churnedMrr'], 'properties': {'newMrr': {'type': 'number', 'description': 'New MRR from new logos'}, 'currency': {'type': 'string', 'pattern': '^[A-Za-z]{3}$', 'description': 'ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.'}, 'churnedMrr': {'type': 'number', 'description': 'MRR lost to cancellations/churn'}, 'startingMrr': {'type': 'number', 'description': 'Starting MRR'}, 'expansionMrr': {'type': 'number', 'description': 'Expansion MRR from existing customers'}, 'contractionMrr': {'type': 'number', 'description': 'MRR lost to downgrades/contraction'}, 'resurrectedMrr': {'type': 'number', 'description': 'Resurrected MRR from win-back customers'}}}
出力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['kind', 'tool', 'title', 'calculator', 'url', 'bookingUrl', 'currency', 'compact', 'inputs', 'metrics', 'notes', 'benchmarks'], 'properties': {'url': {'type': 'string'}, 'kind': {'type': 'string', 'const': 'calculator'}, 'tool': {'type': 'string', 'description': 'The calculator tool that produced this result'}, 'notes': {'type': 'array', 'items': {'type': 'string'}}, 'title': {'type': 'string'}, 'inputs': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'compact': {'type': 'boolean'}, 'metrics': {'type': 'array', 'items': {'type': 'object', 'required': ['label', 'value', 'unit', 'display'], 'properties': {'unit': {'anyOf': [{'enum': ['currency', 'x', '%', 'months'], 'type': 'string'}, {'type': 'null'}]}, 'label': {'type': 'string'}, 'value': {'type': ['number', 'null']}, 'display': {'type': 'string'}}, 'additionalProperties': False}, 'description': 'Every "Label: value" line of the result; value is the first number on the line'}, 'currency': {'type': ['string', 'null']}, 'benchmarks': {'type': 'array', 'items': {'type': 'object', 'required': ['metric', 'name', 'value', 'display', 'band', 'tone', 'read', 'target', 'segment', 'source'], 'properties': {'band': {'type': 'string'}, 'name': {'type': 'string'}, 'read': {'type': 'string'}, 'tone': {'enum': ['good', 'ok', 'warn', 'bad'], 'type': 'string'}, 'value': {'type': 'number'}, 'metric': {'type': 'string'}, 'source': {'type': 'string'}, 'target': {'type': 'string'}, 'display': {'type': 'string'}, 'segment': {'type': ['string', 'null']}}, 'additionalProperties': False}, 'description': 'Rule-of-thumb verdicts for the headline numbers'}, 'bookingUrl': {'type': 'string'}, 'calculator': {'type': 'string', 'description': 'Slug of the interactive calculator on rahuldsarker.co'}}, 'additionalProperties': False}
mrr_to_arr_calculator
MRR to ARR Calculator
Annualize MRR into ARR, with an optional 12-month projection from expected net-new monthly revenue. See the full version at https://rahuldsarker.co/calculators/mrr-to-arr-calculator
読み取り専用 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['mrr'], 'properties': {'mrr': {'type': 'number', 'description': 'Current monthly recurring revenue (MRR)'}, 'currency': {'type': 'string', 'pattern': '^[A-Za-z]{3}$', 'description': 'ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.'}, 'monthlyChurnAndContraction': {'type': 'number', 'description': 'Expected monthly dollars lost to churn and contraction, optional, defaults to 0'}, 'monthlyExpansionAndNewBusiness': {'type': 'number', 'description': 'Expected monthly dollars added from new business plus expansion, optional, defaults to 0'}}}
出力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['kind', 'tool', 'title', 'calculator', 'url', 'bookingUrl', 'currency', 'compact', 'inputs', 'metrics', 'notes', 'benchmarks'], 'properties': {'url': {'type': 'string'}, 'kind': {'type': 'string', 'const': 'calculator'}, 'tool': {'type': 'string', 'description': 'The calculator tool that produced this result'}, 'notes': {'type': 'array', 'items': {'type': 'string'}}, 'title': {'type': 'string'}, 'inputs': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'compact': {'type': 'boolean'}, 'metrics': {'type': 'array', 'items': {'type': 'object', 'required': ['label', 'value', 'unit', 'display'], 'properties': {'unit': {'anyOf': [{'enum': ['currency', 'x', '%', 'months'], 'type': 'string'}, {'type': 'null'}]}, 'label': {'type': 'string'}, 'value': {'type': ['number', 'null']}, 'display': {'type': 'string'}}, 'additionalProperties': False}, 'description': 'Every "Label: value" line of the result; value is the first number on the line'}, 'currency': {'type': ['string', 'null']}, 'benchmarks': {'type': 'array', 'items': {'type': 'object', 'required': ['metric', 'name', 'value', 'display', 'band', 'tone', 'read', 'target', 'segment', 'source'], 'properties': {'band': {'type': 'string'}, 'name': {'type': 'string'}, 'read': {'type': 'string'}, 'tone': {'enum': ['good', 'ok', 'warn', 'bad'], 'type': 'string'}, 'value': {'type': 'number'}, 'metric': {'type': 'string'}, 'source': {'type': 'string'}, 'target': {'type': 'string'}, 'display': {'type': 'string'}, 'segment': {'type': ['string', 'null']}}, 'additionalProperties': False}, 'description': 'Rule-of-thumb verdicts for the headline numbers'}, 'bookingUrl': {'type': 'string'}, 'calculator': {'type': 'string', 'description': 'Slug of the interactive calculator on rahuldsarker.co'}}, 'additionalProperties': False}
net_promoter_score_impact_modeler
Net Promoter Score Impact Modeler
Turn promoter and detractor percentages into NPS, net advocacy, and the organic referral pipeline promoters generate. See the full version at https://rahuldsarker.co/calculators/net-promoter-score-impact-modeler
読み取り専用 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['customerBase', 'promoterPct', 'detractorPct', 'referralRatePct'], 'properties': {'currency': {'type': 'string', 'pattern': '^[A-Za-z]{3}$', 'description': 'ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.'}, 'promoterPct': {'type': 'number', 'description': 'Share of respondents who are promoters (score 9-10), as a percentage'}, 'customerBase': {'type': 'number', 'description': 'Customers surveyed or in the base'}, 'detractorPct': {'type': 'number', 'description': 'Share of respondents who are detractors (score 0-6), as a percentage'}, 'referralRatePct': {'type': 'number', 'description': 'Share of promoters who refer someone, as a percentage'}}}
出力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['kind', 'tool', 'title', 'calculator', 'url', 'bookingUrl', 'currency', 'compact', 'inputs', 'metrics', 'notes', 'benchmarks'], 'properties': {'url': {'type': 'string'}, 'kind': {'type': 'string', 'const': 'calculator'}, 'tool': {'type': 'string', 'description': 'The calculator tool that produced this result'}, 'notes': {'type': 'array', 'items': {'type': 'string'}}, 'title': {'type': 'string'}, 'inputs': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'compact': {'type': 'boolean'}, 'metrics': {'type': 'array', 'items': {'type': 'object', 'required': ['label', 'value', 'unit', 'display'], 'properties': {'unit': {'anyOf': [{'enum': ['currency', 'x', '%', 'months'], 'type': 'string'}, {'type': 'null'}]}, 'label': {'type': 'string'}, 'value': {'type': ['number', 'null']}, 'display': {'type': 'string'}}, 'additionalProperties': False}, 'description': 'Every "Label: value" line of the result; value is the first number on the line'}, 'currency': {'type': ['string', 'null']}, 'benchmarks': {'type': 'array', 'items': {'type': 'object', 'required': ['metric', 'name', 'value', 'display', 'band', 'tone', 'read', 'target', 'segment', 'source'], 'properties': {'band': {'type': 'string'}, 'name': {'type': 'string'}, 'read': {'type': 'string'}, 'tone': {'enum': ['good', 'ok', 'warn', 'bad'], 'type': 'string'}, 'value': {'type': 'number'}, 'metric': {'type': 'string'}, 'source': {'type': 'string'}, 'target': {'type': 'string'}, 'display': {'type': 'string'}, 'segment': {'type': ['string', 'null']}}, 'additionalProperties': False}, 'description': 'Rule-of-thumb verdicts for the headline numbers'}, 'bookingUrl': {'type': 'string'}, 'calculator': {'type': 'string', 'description': 'Slug of the interactive calculator on rahuldsarker.co'}}, 'additionalProperties': False}
net_revenue_retention_forecaster
Net Revenue Retention Forecaster
Project ARR over three years from net revenue retention (gross churn and expansion), compounded on the existing base with no new customers. See the full version at https://rahuldsarker.co/calculators/net-revenue-retention-forecaster
読み取り専用 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['arr', 'annualGrossChurnPct', 'annualExpansionPct'], 'properties': {'arr': {'type': 'number', 'description': 'Current annual recurring revenue (ARR)'}, 'segment': {'enum': ['smb', 'mid_market', 'enterprise'], 'type': 'string', 'description': 'Customer segment for the benchmark verdict: smb, mid_market or enterprise (default smb)'}, 'currency': {'type': 'string', 'pattern': '^[A-Za-z]{3}$', 'description': 'ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.'}, 'annualExpansionPct': {'type': 'number', 'description': 'Annual expansion from upsell and cross-sell, as a percentage'}, 'annualGrossChurnPct': {'type': 'number', 'description': 'Annual gross revenue churn, as a percentage'}}}
出力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['kind', 'tool', 'title', 'calculator', 'url', 'bookingUrl', 'currency', 'compact', 'inputs', 'metrics', 'notes', 'benchmarks'], 'properties': {'url': {'type': 'string'}, 'kind': {'type': 'string', 'const': 'calculator'}, 'tool': {'type': 'string', 'description': 'The calculator tool that produced this result'}, 'notes': {'type': 'array', 'items': {'type': 'string'}}, 'title': {'type': 'string'}, 'inputs': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'compact': {'type': 'boolean'}, 'metrics': {'type': 'array', 'items': {'type': 'object', 'required': ['label', 'value', 'unit', 'display'], 'properties': {'unit': {'anyOf': [{'enum': ['currency', 'x', '%', 'months'], 'type': 'string'}, {'type': 'null'}]}, 'label': {'type': 'string'}, 'value': {'type': ['number', 'null']}, 'display': {'type': 'string'}}, 'additionalProperties': False}, 'description': 'Every "Label: value" line of the result; value is the first number on the line'}, 'currency': {'type': ['string', 'null']}, 'benchmarks': {'type': 'array', 'items': {'type': 'object', 'required': ['metric', 'name', 'value', 'display', 'band', 'tone', 'read', 'target', 'segment', 'source'], 'properties': {'band': {'type': 'string'}, 'name': {'type': 'string'}, 'read': {'type': 'string'}, 'tone': {'enum': ['good', 'ok', 'warn', 'bad'], 'type': 'string'}, 'value': {'type': 'number'}, 'metric': {'type': 'string'}, 'source': {'type': 'string'}, 'target': {'type': 'string'}, 'display': {'type': 'string'}, 'segment': {'type': ['string', 'null']}}, 'additionalProperties': False}, 'description': 'Rule-of-thumb verdicts for the headline numbers'}, 'bookingUrl': {'type': 'string'}, 'calculator': {'type': 'string', 'description': 'Slug of the interactive calculator on rahuldsarker.co'}}, 'additionalProperties': False}
no_show_rate_revenue_restorer
No-Show Rate Revenue Restorer
Calculate the revenue lost each month to demo no-shows, and how much would be recovered by cutting the no-show rate by 5 or 10 points. See the full version at https://rahuldsarker.co/calculators/no-show-rate-revenue-restorer
読み取り専用 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['demosBookedPerMonth', 'noShowRatePct', 'heldDemoCloseRatePct', 'avgDealValue'], 'properties': {'currency': {'type': 'string', 'pattern': '^[A-Za-z]{3}$', 'description': 'ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.'}, 'avgDealValue': {'type': 'number', 'description': 'Average deal value'}, 'noShowRatePct': {'type': 'number', 'description': 'Current no-show rate, as a percentage'}, 'demosBookedPerMonth': {'type': 'number', 'description': 'Demos booked per month'}, 'heldDemoCloseRatePct': {'type': 'number', 'description': 'Close rate for held demos, as a percentage'}}}
出力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['kind', 'tool', 'title', 'calculator', 'url', 'bookingUrl', 'currency', 'compact', 'inputs', 'metrics', 'notes', 'benchmarks'], 'properties': {'url': {'type': 'string'}, 'kind': {'type': 'string', 'const': 'calculator'}, 'tool': {'type': 'string', 'description': 'The calculator tool that produced this result'}, 'notes': {'type': 'array', 'items': {'type': 'string'}}, 'title': {'type': 'string'}, 'inputs': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'compact': {'type': 'boolean'}, 'metrics': {'type': 'array', 'items': {'type': 'object', 'required': ['label', 'value', 'unit', 'display'], 'properties': {'unit': {'anyOf': [{'enum': ['currency', 'x', '%', 'months'], 'type': 'string'}, {'type': 'null'}]}, 'label': {'type': 'string'}, 'value': {'type': ['number', 'null']}, 'display': {'type': 'string'}}, 'additionalProperties': False}, 'description': 'Every "Label: value" line of the result; value is the first number on the line'}, 'currency': {'type': ['string', 'null']}, 'benchmarks': {'type': 'array', 'items': {'type': 'object', 'required': ['metric', 'name', 'value', 'display', 'band', 'tone', 'read', 'target', 'segment', 'source'], 'properties': {'band': {'type': 'string'}, 'name': {'type': 'string'}, 'read': {'type': 'string'}, 'tone': {'enum': ['good', 'ok', 'warn', 'bad'], 'type': 'string'}, 'value': {'type': 'number'}, 'metric': {'type': 'string'}, 'source': {'type': 'string'}, 'target': {'type': 'string'}, 'display': {'type': 'string'}, 'segment': {'type': ['string', 'null']}}, 'additionalProperties': False}, 'description': 'Rule-of-thumb verdicts for the headline numbers'}, 'bookingUrl': {'type': 'string'}, 'calculator': {'type': 'string', 'description': 'Slug of the interactive calculator on rahuldsarker.co'}}, 'additionalProperties': False}
organic_traffic_value_monetizer
Organic Traffic Value Monetizer
Value organic search traffic in ad-equivalent spend (clicks x CPC), and split out the non-branded portion that represents genuine, defensible SEO value. See the full version at https://rahuldsarker.co/calculators/organic-traffic-value-monetizer
読み取り専用 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['organicClicks', 'avgCpc', 'brandedSharePct'], 'properties': {'avgCpc': {'type': 'number', 'description': 'Average cost-per-click if these keywords were paid'}, 'currency': {'type': 'string', 'pattern': '^[A-Za-z]{3}$', 'description': 'ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.'}, 'organicClicks': {'type': 'number', 'description': 'Monthly organic clicks'}, 'brandedSharePct': {'type': 'number', 'description': 'Branded share of traffic, as a percentage (traffic you would likely get for free anyway)'}}}
出力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['kind', 'tool', 'title', 'calculator', 'url', 'bookingUrl', 'currency', 'compact', 'inputs', 'metrics', 'notes', 'benchmarks'], 'properties': {'url': {'type': 'string'}, 'kind': {'type': 'string', 'const': 'calculator'}, 'tool': {'type': 'string', 'description': 'The calculator tool that produced this result'}, 'notes': {'type': 'array', 'items': {'type': 'string'}}, 'title': {'type': 'string'}, 'inputs': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'compact': {'type': 'boolean'}, 'metrics': {'type': 'array', 'items': {'type': 'object', 'required': ['label', 'value', 'unit', 'display'], 'properties': {'unit': {'anyOf': [{'enum': ['currency', 'x', '%', 'months'], 'type': 'string'}, {'type': 'null'}]}, 'label': {'type': 'string'}, 'value': {'type': ['number', 'null']}, 'display': {'type': 'string'}}, 'additionalProperties': False}, 'description': 'Every "Label: value" line of the result; value is the first number on the line'}, 'currency': {'type': ['string', 'null']}, 'benchmarks': {'type': 'array', 'items': {'type': 'object', 'required': ['metric', 'name', 'value', 'display', 'band', 'tone', 'read', 'target', 'segment', 'source'], 'properties': {'band': {'type': 'string'}, 'name': {'type': 'string'}, 'read': {'type': 'string'}, 'tone': {'enum': ['good', 'ok', 'warn', 'bad'], 'type': 'string'}, 'value': {'type': 'number'}, 'metric': {'type': 'string'}, 'source': {'type': 'string'}, 'target': {'type': 'string'}, 'display': {'type': 'string'}, 'segment': {'type': ['string', 'null']}}, 'additionalProperties': False}, 'description': 'Rule-of-thumb verdicts for the headline numbers'}, 'bookingUrl': {'type': 'string'}, 'calculator': {'type': 'string', 'description': 'Slug of the interactive calculator on rahuldsarker.co'}}, 'additionalProperties': False}
page_speed_leak_calculator
Page Speed Leak Calculator
Estimate the extra conversions and revenue recovered by cutting page load time, using an industry-average per-second conversion penalty. See the full version at https://rahuldsarker.co/calculators/page-speed-leak-calculator
読み取り専用 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['monthlyVisitors', 'currentLoadSeconds', 'targetLoadSeconds', 'conversionRatePct', 'valuePerConversion'], 'properties': {'currency': {'type': 'string', 'pattern': '^[A-Za-z]{3}$', 'description': 'ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.'}, 'monthlyVisitors': {'type': 'number', 'description': 'Monthly visitors'}, 'lossPerSecondPct': {'type': 'number', 'description': 'Conversion loss per second of load time, as a percentage, defaults to 7 (studies cluster around 5-7%)'}, 'conversionRatePct': {'type': 'number', 'description': 'Current conversion rate, as a percentage'}, 'targetLoadSeconds': {'type': 'number', 'description': 'Target page load time, in seconds'}, 'currentLoadSeconds': {'type': 'number', 'description': 'Current page load time, in seconds'}, 'valuePerConversion': {'type': 'number', 'description': 'Value per conversion'}}}
出力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['kind', 'tool', 'title', 'calculator', 'url', 'bookingUrl', 'currency', 'compact', 'inputs', 'metrics', 'notes', 'benchmarks'], 'properties': {'url': {'type': 'string'}, 'kind': {'type': 'string', 'const': 'calculator'}, 'tool': {'type': 'string', 'description': 'The calculator tool that produced this result'}, 'notes': {'type': 'array', 'items': {'type': 'string'}}, 'title': {'type': 'string'}, 'inputs': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'compact': {'type': 'boolean'}, 'metrics': {'type': 'array', 'items': {'type': 'object', 'required': ['label', 'value', 'unit', 'display'], 'properties': {'unit': {'anyOf': [{'enum': ['currency', 'x', '%', 'months'], 'type': 'string'}, {'type': 'null'}]}, 'label': {'type': 'string'}, 'value': {'type': ['number', 'null']}, 'display': {'type': 'string'}}, 'additionalProperties': False}, 'description': 'Every "Label: value" line of the result; value is the first number on the line'}, 'currency': {'type': ['string', 'null']}, 'benchmarks': {'type': 'array', 'items': {'type': 'object', 'required': ['metric', 'name', 'value', 'display', 'band', 'tone', 'read', 'target', 'segment', 'source'], 'properties': {'band': {'type': 'string'}, 'name': {'type': 'string'}, 'read': {'type': 'string'}, 'tone': {'enum': ['good', 'ok', 'warn', 'bad'], 'type': 'string'}, 'value': {'type': 'number'}, 'metric': {'type': 'string'}, 'source': {'type': 'string'}, 'target': {'type': 'string'}, 'display': {'type': 'string'}, 'segment': {'type': ['string', 'null']}}, 'additionalProperties': False}, 'description': 'Rule-of-thumb verdicts for the headline numbers'}, 'bookingUrl': {'type': 'string'}, 'calculator': {'type': 'string', 'description': 'Slug of the interactive calculator on rahuldsarker.co'}}, 'additionalProperties': False}
paid_search_intent_tier_grader
Paid Search Intent Tier Grader
Grade a list of search keywords into transactional, commercial, or informational intent tiers, and flag the wasted-intent share. See the full version at https://rahuldsarker.co/calculators/paid-search-intent-tier-grader
読み取り専用 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['keywords'], 'properties': {'currency': {'type': 'string', 'pattern': '^[A-Za-z]{3}$', 'description': 'ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.'}, 'keywords': {'type': 'array', 'items': {'type': 'string'}, 'description': 'List of search keywords/queries to grade'}}}
出力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['kind', 'tool', 'title', 'calculator', 'url', 'bookingUrl', 'currency', 'compact', 'inputs', 'metrics', 'notes', 'benchmarks'], 'properties': {'url': {'type': 'string'}, 'kind': {'type': 'string', 'const': 'calculator'}, 'tool': {'type': 'string', 'description': 'The calculator tool that produced this result'}, 'notes': {'type': 'array', 'items': {'type': 'string'}}, 'title': {'type': 'string'}, 'inputs': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'compact': {'type': 'boolean'}, 'metrics': {'type': 'array', 'items': {'type': 'object', 'required': ['label', 'value', 'unit', 'display'], 'properties': {'unit': {'anyOf': [{'enum': ['currency', 'x', '%', 'months'], 'type': 'string'}, {'type': 'null'}]}, 'label': {'type': 'string'}, 'value': {'type': ['number', 'null']}, 'display': {'type': 'string'}}, 'additionalProperties': False}, 'description': 'Every "Label: value" line of the result; value is the first number on the line'}, 'currency': {'type': ['string', 'null']}, 'benchmarks': {'type': 'array', 'items': {'type': 'object', 'required': ['metric', 'name', 'value', 'display', 'band', 'tone', 'read', 'target', 'segment', 'source'], 'properties': {'band': {'type': 'string'}, 'name': {'type': 'string'}, 'read': {'type': 'string'}, 'tone': {'enum': ['good', 'ok', 'warn', 'bad'], 'type': 'string'}, 'value': {'type': 'number'}, 'metric': {'type': 'string'}, 'source': {'type': 'string'}, 'target': {'type': 'string'}, 'display': {'type': 'string'}, 'segment': {'type': ['string', 'null']}}, 'additionalProperties': False}, 'description': 'Rule-of-thumb verdicts for the headline numbers'}, 'bookingUrl': {'type': 'string'}, 'calculator': {'type': 'string', 'description': 'Slug of the interactive calculator on rahuldsarker.co'}}, 'additionalProperties': False}
performance_marketing_margin_protector
Performance Marketing Margin Protector
Calculate the break-even and maximum CPA that protect a target profit margin, and check current CPA against that ceiling. See the full version at https://rahuldsarker.co/calculators/performance-marketing-margin-protector
読み取り専用 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['aov', 'grossMarginPct', 'targetProfitPct', 'currentCpa'], 'properties': {'aov': {'type': 'number', 'description': 'Average order / contract value'}, 'currency': {'type': 'string', 'pattern': '^[A-Za-z]{3}$', 'description': 'ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.'}, 'currentCpa': {'type': 'number', 'description': 'Current CPA'}, 'grossMarginPct': {'type': 'number', 'description': 'Gross margin, as a percentage'}, 'targetProfitPct': {'type': 'number', 'description': 'Target profit margin to keep after ad cost, as a percentage'}}}
出力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['kind', 'tool', 'title', 'calculator', 'url', 'bookingUrl', 'currency', 'compact', 'inputs', 'metrics', 'notes', 'benchmarks'], 'properties': {'url': {'type': 'string'}, 'kind': {'type': 'string', 'const': 'calculator'}, 'tool': {'type': 'string', 'description': 'The calculator tool that produced this result'}, 'notes': {'type': 'array', 'items': {'type': 'string'}}, 'title': {'type': 'string'}, 'inputs': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'compact': {'type': 'boolean'}, 'metrics': {'type': 'array', 'items': {'type': 'object', 'required': ['label', 'value', 'unit', 'display'], 'properties': {'unit': {'anyOf': [{'enum': ['currency', 'x', '%', 'months'], 'type': 'string'}, {'type': 'null'}]}, 'label': {'type': 'string'}, 'value': {'type': ['number', 'null']}, 'display': {'type': 'string'}}, 'additionalProperties': False}, 'description': 'Every "Label: value" line of the result; value is the first number on the line'}, 'currency': {'type': ['string', 'null']}, 'benchmarks': {'type': 'array', 'items': {'type': 'object', 'required': ['metric', 'name', 'value', 'display', 'band', 'tone', 'read', 'target', 'segment', 'source'], 'properties': {'band': {'type': 'string'}, 'name': {'type': 'string'}, 'read': {'type': 'string'}, 'tone': {'enum': ['good', 'ok', 'warn', 'bad'], 'type': 'string'}, 'value': {'type': 'number'}, 'metric': {'type': 'string'}, 'source': {'type': 'string'}, 'target': {'type': 'string'}, 'display': {'type': 'string'}, 'segment': {'type': ['string', 'null']}}, 'additionalProperties': False}, 'description': 'Rule-of-thumb verdicts for the headline numbers'}, 'bookingUrl': {'type': 'string'}, 'calculator': {'type': 'string', 'description': 'Slug of the interactive calculator on rahuldsarker.co'}}, 'additionalProperties': False}
pipeline_velocity_equation_engine
Pipeline Velocity Equation Engine
Calculate sales velocity, the revenue your pipeline generates per day, from open opportunities, win rate, deal value, and cycle length. See the full version at https://rahuldsarker.co/calculators/pipeline-velocity-equation-engine
読み取り専用 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['openOpportunities', 'winRatePct', 'avgDealValue', 'cycleDays'], 'properties': {'currency': {'type': 'string', 'pattern': '^[A-Za-z]{3}$', 'description': 'ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.'}, 'cycleDays': {'type': 'number', 'description': 'Average sales cycle length, in days'}, 'winRatePct': {'type': 'number', 'description': 'Win rate, as a percentage'}, 'avgDealValue': {'type': 'number', 'description': 'Average deal value (ACV)'}, 'openOpportunities': {'type': 'number', 'description': 'Number of open opportunities'}}}
出力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['kind', 'tool', 'title', 'calculator', 'url', 'bookingUrl', 'currency', 'compact', 'inputs', 'metrics', 'notes', 'benchmarks'], 'properties': {'url': {'type': 'string'}, 'kind': {'type': 'string', 'const': 'calculator'}, 'tool': {'type': 'string', 'description': 'The calculator tool that produced this result'}, 'notes': {'type': 'array', 'items': {'type': 'string'}}, 'title': {'type': 'string'}, 'inputs': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'compact': {'type': 'boolean'}, 'metrics': {'type': 'array', 'items': {'type': 'object', 'required': ['label', 'value', 'unit', 'display'], 'properties': {'unit': {'anyOf': [{'enum': ['currency', 'x', '%', 'months'], 'type': 'string'}, {'type': 'null'}]}, 'label': {'type': 'string'}, 'value': {'type': ['number', 'null']}, 'display': {'type': 'string'}}, 'additionalProperties': False}, 'description': 'Every "Label: value" line of the result; value is the first number on the line'}, 'currency': {'type': ['string', 'null']}, 'benchmarks': {'type': 'array', 'items': {'type': 'object', 'required': ['metric', 'name', 'value', 'display', 'band', 'tone', 'read', 'target', 'segment', 'source'], 'properties': {'band': {'type': 'string'}, 'name': {'type': 'string'}, 'read': {'type': 'string'}, 'tone': {'enum': ['good', 'ok', 'warn', 'bad'], 'type': 'string'}, 'value': {'type': 'number'}, 'metric': {'type': 'string'}, 'source': {'type': 'string'}, 'target': {'type': 'string'}, 'display': {'type': 'string'}, 'segment': {'type': ['string', 'null']}}, 'additionalProperties': False}, 'description': 'Rule-of-thumb verdicts for the headline numbers'}, 'bookingUrl': {'type': 'string'}, 'calculator': {'type': 'string', 'description': 'Slug of the interactive calculator on rahuldsarker.co'}}, 'additionalProperties': False}
post_ios14_blended_attribution_modeler
Post-iOS14 Blended Attribution Modeler
Compare summed platform-claimed revenue against actual backend revenue to quantify over-reporting and the true blended ROAS. See the full version at https://rahuldsarker.co/calculators/post-ios14-blended-attribution-modeler
読み取り専用 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['platformRevenue', 'actualRevenue', 'adSpend'], 'properties': {'adSpend': {'type': 'number', 'description': 'Total ad spend'}, 'currency': {'type': 'string', 'pattern': '^[A-Za-z]{3}$', 'description': 'ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.'}, 'actualRevenue': {'type': 'number', 'description': 'Actual revenue from backend / finance system'}, 'platformRevenue': {'type': 'number', 'description': 'Sum of revenue all ad platforms report'}}}
出力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['kind', 'tool', 'title', 'calculator', 'url', 'bookingUrl', 'currency', 'compact', 'inputs', 'metrics', 'notes', 'benchmarks'], 'properties': {'url': {'type': 'string'}, 'kind': {'type': 'string', 'const': 'calculator'}, 'tool': {'type': 'string', 'description': 'The calculator tool that produced this result'}, 'notes': {'type': 'array', 'items': {'type': 'string'}}, 'title': {'type': 'string'}, 'inputs': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'compact': {'type': 'boolean'}, 'metrics': {'type': 'array', 'items': {'type': 'object', 'required': ['label', 'value', 'unit', 'display'], 'properties': {'unit': {'anyOf': [{'enum': ['currency', 'x', '%', 'months'], 'type': 'string'}, {'type': 'null'}]}, 'label': {'type': 'string'}, 'value': {'type': ['number', 'null']}, 'display': {'type': 'string'}}, 'additionalProperties': False}, 'description': 'Every "Label: value" line of the result; value is the first number on the line'}, 'currency': {'type': ['string', 'null']}, 'benchmarks': {'type': 'array', 'items': {'type': 'object', 'required': ['metric', 'name', 'value', 'display', 'band', 'tone', 'read', 'target', 'segment', 'source'], 'properties': {'band': {'type': 'string'}, 'name': {'type': 'string'}, 'read': {'type': 'string'}, 'tone': {'enum': ['good', 'ok', 'warn', 'bad'], 'type': 'string'}, 'value': {'type': 'number'}, 'metric': {'type': 'string'}, 'source': {'type': 'string'}, 'target': {'type': 'string'}, 'display': {'type': 'string'}, 'segment': {'type': ['string', 'null']}}, 'additionalProperties': False}, 'description': 'Rule-of-thumb verdicts for the headline numbers'}, 'bookingUrl': {'type': 'string'}, 'calculator': {'type': 'string', 'description': 'Slug of the interactive calculator on rahuldsarker.co'}}, 'additionalProperties': False}
ppc_click_volume_predictor
PPC Click Volume Predictor
Predict monthly clicks, conversions, and effective CPA from budget, CPC, and conversion rate, and check whether volume clears the ~50 weekly conversions platforms need to exit learning. See the full version at https://rahuldsarker.co/calculators/ppc-click-volume-predictor
読み取り専用 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['budget', 'cpc', 'convRatePct'], 'properties': {'cpc': {'type': 'number', 'description': 'Average cost per click'}, 'budget': {'type': 'number', 'description': 'Monthly budget'}, 'currency': {'type': 'string', 'pattern': '^[A-Za-z]{3}$', 'description': 'ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.'}, 'convRatePct': {'type': 'number', 'description': 'Click-to-conversion rate, as a percentage'}}}
出力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['kind', 'tool', 'title', 'calculator', 'url', 'bookingUrl', 'currency', 'compact', 'inputs', 'metrics', 'notes', 'benchmarks'], 'properties': {'url': {'type': 'string'}, 'kind': {'type': 'string', 'const': 'calculator'}, 'tool': {'type': 'string', 'description': 'The calculator tool that produced this result'}, 'notes': {'type': 'array', 'items': {'type': 'string'}}, 'title': {'type': 'string'}, 'inputs': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'compact': {'type': 'boolean'}, 'metrics': {'type': 'array', 'items': {'type': 'object', 'required': ['label', 'value', 'unit', 'display'], 'properties': {'unit': {'anyOf': [{'enum': ['currency', 'x', '%', 'months'], 'type': 'string'}, {'type': 'null'}]}, 'label': {'type': 'string'}, 'value': {'type': ['number', 'null']}, 'display': {'type': 'string'}}, 'additionalProperties': False}, 'description': 'Every "Label: value" line of the result; value is the first number on the line'}, 'currency': {'type': ['string', 'null']}, 'benchmarks': {'type': 'array', 'items': {'type': 'object', 'required': ['metric', 'name', 'value', 'display', 'band', 'tone', 'read', 'target', 'segment', 'source'], 'properties': {'band': {'type': 'string'}, 'name': {'type': 'string'}, 'read': {'type': 'string'}, 'tone': {'enum': ['good', 'ok', 'warn', 'bad'], 'type': 'string'}, 'value': {'type': 'number'}, 'metric': {'type': 'string'}, 'source': {'type': 'string'}, 'target': {'type': 'string'}, 'display': {'type': 'string'}, 'segment': {'type': ['string', 'null']}}, 'additionalProperties': False}, 'description': 'Rule-of-thumb verdicts for the headline numbers'}, 'bookingUrl': {'type': 'string'}, 'calculator': {'type': 'string', 'description': 'Slug of the interactive calculator on rahuldsarker.co'}}, 'additionalProperties': False}
pricing_elasticity_sandbox
Pricing Elasticity Sandbox
Model how a price change affects volume, revenue, and gross profit given a price elasticity of demand. See the full version at https://rahuldsarker.co/calculators/pricing-elasticity-sandbox
読み取り専用 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['price', 'volume', 'unitCost', 'priceChangePct', 'elasticity'], 'properties': {'price': {'type': 'number', 'description': 'Current price'}, 'volume': {'type': 'number', 'description': 'Current volume, units per month'}, 'currency': {'type': 'string', 'pattern': '^[A-Za-z]{3}$', 'description': 'ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.'}, 'unitCost': {'type': 'number', 'description': 'Unit / delivery cost'}, 'elasticity': {'type': 'number', 'description': 'Price elasticity of demand: percent volume change per 1% price change, usually negative'}, 'priceChangePct': {'type': 'number', 'description': 'Price change, as a percentage (positive = increase, negative = cut)'}}}
出力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['kind', 'tool', 'title', 'calculator', 'url', 'bookingUrl', 'currency', 'compact', 'inputs', 'metrics', 'notes', 'benchmarks'], 'properties': {'url': {'type': 'string'}, 'kind': {'type': 'string', 'const': 'calculator'}, 'tool': {'type': 'string', 'description': 'The calculator tool that produced this result'}, 'notes': {'type': 'array', 'items': {'type': 'string'}}, 'title': {'type': 'string'}, 'inputs': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'compact': {'type': 'boolean'}, 'metrics': {'type': 'array', 'items': {'type': 'object', 'required': ['label', 'value', 'unit', 'display'], 'properties': {'unit': {'anyOf': [{'enum': ['currency', 'x', '%', 'months'], 'type': 'string'}, {'type': 'null'}]}, 'label': {'type': 'string'}, 'value': {'type': ['number', 'null']}, 'display': {'type': 'string'}}, 'additionalProperties': False}, 'description': 'Every "Label: value" line of the result; value is the first number on the line'}, 'currency': {'type': ['string', 'null']}, 'benchmarks': {'type': 'array', 'items': {'type': 'object', 'required': ['metric', 'name', 'value', 'display', 'band', 'tone', 'read', 'target', 'segment', 'source'], 'properties': {'band': {'type': 'string'}, 'name': {'type': 'string'}, 'read': {'type': 'string'}, 'tone': {'enum': ['good', 'ok', 'warn', 'bad'], 'type': 'string'}, 'value': {'type': 'number'}, 'metric': {'type': 'string'}, 'source': {'type': 'string'}, 'target': {'type': 'string'}, 'display': {'type': 'string'}, 'segment': {'type': ['string', 'null']}}, 'additionalProperties': False}, 'description': 'Rule-of-thumb verdicts for the headline numbers'}, 'bookingUrl': {'type': 'string'}, 'calculator': {'type': 'string', 'description': 'Slug of the interactive calculator on rahuldsarker.co'}}, 'additionalProperties': False}
pricing_page_architecture_grader
Pricing Page Architecture Grader
Score a pricing page's choice architecture across six weighted criteria (tiers, highlighting, anchoring, comparison, CTA, billing toggle) into a 0-100 score. See the full version at https://rahuldsarker.co/calculators/pricing-page-architecture-grader
読み取り専用 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['threeToFourTiers', 'recommendedPlanHighlighted', 'anchoringPresent', 'clearFeatureComparison', 'oneCtaPerTier', 'billingToggleWithSavings'], 'properties': {'currency': {'type': 'string', 'pattern': '^[A-Za-z]{3}$', 'description': 'ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.'}, 'oneCtaPerTier': {'enum': ['yes', 'partial', 'no'], 'type': 'string', 'description': 'One clear CTA per tier (weight 15)'}, 'anchoringPresent': {'enum': ['yes', 'partial', 'no'], 'type': 'string', 'description': 'Anchoring, a high tier frames the others (weight 15)'}, 'threeToFourTiers': {'enum': ['yes', 'partial', 'no'], 'type': 'string', 'description': '3-4 tiers, not too few, not overwhelming (weight 15)'}, 'clearFeatureComparison': {'enum': ['yes', 'partial', 'no'], 'type': 'string', 'description': 'Clear feature comparison across tiers (weight 20)'}, 'billingToggleWithSavings': {'enum': ['yes', 'partial', 'no'], 'type': 'string', 'description': 'Monthly/annual toggle with savings shown (weight 15)'}, 'recommendedPlanHighlighted': {'enum': ['yes', 'partial', 'no'], 'type': 'string', 'description': 'A recommended / most-popular plan is highlighted (weight 20)'}}}
出力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['kind', 'tool', 'title', 'calculator', 'url', 'bookingUrl', 'currency', 'compact', 'inputs', 'metrics', 'notes', 'benchmarks'], 'properties': {'url': {'type': 'string'}, 'kind': {'type': 'string', 'const': 'calculator'}, 'tool': {'type': 'string', 'description': 'The calculator tool that produced this result'}, 'notes': {'type': 'array', 'items': {'type': 'string'}}, 'title': {'type': 'string'}, 'inputs': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'compact': {'type': 'boolean'}, 'metrics': {'type': 'array', 'items': {'type': 'object', 'required': ['label', 'value', 'unit', 'display'], 'properties': {'unit': {'anyOf': [{'enum': ['currency', 'x', '%', 'months'], 'type': 'string'}, {'type': 'null'}]}, 'label': {'type': 'string'}, 'value': {'type': ['number', 'null']}, 'display': {'type': 'string'}}, 'additionalProperties': False}, 'description': 'Every "Label: value" line of the result; value is the first number on the line'}, 'currency': {'type': ['string', 'null']}, 'benchmarks': {'type': 'array', 'items': {'type': 'object', 'required': ['metric', 'name', 'value', 'display', 'band', 'tone', 'read', 'target', 'segment', 'source'], 'properties': {'band': {'type': 'string'}, 'name': {'type': 'string'}, 'read': {'type': 'string'}, 'tone': {'enum': ['good', 'ok', 'warn', 'bad'], 'type': 'string'}, 'value': {'type': 'number'}, 'metric': {'type': 'string'}, 'source': {'type': 'string'}, 'target': {'type': 'string'}, 'display': {'type': 'string'}, 'segment': {'type': ['string', 'null']}}, 'additionalProperties': False}, 'description': 'Rule-of-thumb verdicts for the headline numbers'}, 'bookingUrl': {'type': 'string'}, 'calculator': {'type': 'string', 'description': 'Slug of the interactive calculator on rahuldsarker.co'}}, 'additionalProperties': False}
product_led_growth_feasibility_grader
Product-Led Growth Feasibility Grader
Score whether a product can support a self-serve, product-led growth motion, versus a hybrid or sales-led approach, across 5 weighted criteria. See the full version at https://rahuldsarker.co/calculators/product-led-growth-feasibility-grader
読み取り専用 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['ttv', 'selfserve', 'price', 'viral', 'value'], 'properties': {'ttv': {'enum': ['yes', 'partial', 'no'], 'type': 'string', 'description': 'Time-to-value is minutes, not weeks: yes/partial/no. Weight 25'}, 'price': {'enum': ['yes', 'partial', 'no'], 'type': 'string', 'description': 'Price point supports self-serve / low ACV: yes/partial/no. Weight 15'}, 'value': {'enum': ['yes', 'partial', 'no'], 'type': 'string', 'description': 'Value is obvious before talking to sales: yes/partial/no. Weight 20'}, 'viral': {'enum': ['yes', 'partial', 'no'], 'type': 'string', 'description': 'Natural virality or collaboration built in: yes/partial/no. Weight 15'}, 'currency': {'type': 'string', 'pattern': '^[A-Za-z]{3}$', 'description': 'ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.'}, 'selfserve': {'enum': ['yes', 'partial', 'no'], 'type': 'string', 'description': 'A user can onboard with no human help: yes/partial/no. Weight 25'}}}
出力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['kind', 'tool', 'title', 'calculator', 'url', 'bookingUrl', 'currency', 'compact', 'inputs', 'metrics', 'notes', 'benchmarks'], 'properties': {'url': {'type': 'string'}, 'kind': {'type': 'string', 'const': 'calculator'}, 'tool': {'type': 'string', 'description': 'The calculator tool that produced this result'}, 'notes': {'type': 'array', 'items': {'type': 'string'}}, 'title': {'type': 'string'}, 'inputs': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'compact': {'type': 'boolean'}, 'metrics': {'type': 'array', 'items': {'type': 'object', 'required': ['label', 'value', 'unit', 'display'], 'properties': {'unit': {'anyOf': [{'enum': ['currency', 'x', '%', 'months'], 'type': 'string'}, {'type': 'null'}]}, 'label': {'type': 'string'}, 'value': {'type': ['number', 'null']}, 'display': {'type': 'string'}}, 'additionalProperties': False}, 'description': 'Every "Label: value" line of the result; value is the first number on the line'}, 'currency': {'type': ['string', 'null']}, 'benchmarks': {'type': 'array', 'items': {'type': 'object', 'required': ['metric', 'name', 'value', 'display', 'band', 'tone', 'read', 'target', 'segment', 'source'], 'properties': {'band': {'type': 'string'}, 'name': {'type': 'string'}, 'read': {'type': 'string'}, 'tone': {'enum': ['good', 'ok', 'warn', 'bad'], 'type': 'string'}, 'value': {'type': 'number'}, 'metric': {'type': 'string'}, 'source': {'type': 'string'}, 'target': {'type': 'string'}, 'display': {'type': 'string'}, 'segment': {'type': ['string', 'null']}}, 'additionalProperties': False}, 'description': 'Rule-of-thumb verdicts for the headline numbers'}, 'bookingUrl': {'type': 'string'}, 'calculator': {'type': 'string', 'description': 'Slug of the interactive calculator on rahuldsarker.co'}}, 'additionalProperties': False}
product_market_fit_scoring_grader
Product-Market Fit Scoring Grader
Score product-market fit signals (the "very disappointed" test, retention, organic pull, NPS) into a weighted 0-100 PMF score and scale-readiness verdict. See the full version at https://rahuldsarker.co/calculators/product-market-fit-scoring-grader
読み取り専用 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['disappointed', 'retention', 'organic', 'nps'], 'properties': {'nps': {'enum': ['strong', 'ok', 'weak'], 'type': 'string', 'description': 'Strong NPS & referrals: strong, ok, or weak/no. Weight 20'}, 'organic': {'enum': ['strong', 'ok', 'weak'], 'type': 'string', 'description': 'Organic / word-of-mouth pull: strong, ok, or weak/no. Weight 20'}, 'currency': {'type': 'string', 'pattern': '^[A-Za-z]{3}$', 'description': 'ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.'}, 'retention': {'enum': ['strong', 'ok', 'weak'], 'type': 'string', 'description': 'Retention curve flattens (users stick): strong, ok, or weak/no. Weight 30'}, 'disappointed': {'enum': ['strong', 'ok', 'weak'], 'type': 'string', 'description': '"Very disappointed if it went away" test (>40%): strong, ok (mixed), or weak/no. Weight 30'}}}
出力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['kind', 'tool', 'title', 'calculator', 'url', 'bookingUrl', 'currency', 'compact', 'inputs', 'metrics', 'notes', 'benchmarks'], 'properties': {'url': {'type': 'string'}, 'kind': {'type': 'string', 'const': 'calculator'}, 'tool': {'type': 'string', 'description': 'The calculator tool that produced this result'}, 'notes': {'type': 'array', 'items': {'type': 'string'}}, 'title': {'type': 'string'}, 'inputs': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'compact': {'type': 'boolean'}, 'metrics': {'type': 'array', 'items': {'type': 'object', 'required': ['label', 'value', 'unit', 'display'], 'properties': {'unit': {'anyOf': [{'enum': ['currency', 'x', '%', 'months'], 'type': 'string'}, {'type': 'null'}]}, 'label': {'type': 'string'}, 'value': {'type': ['number', 'null']}, 'display': {'type': 'string'}}, 'additionalProperties': False}, 'description': 'Every "Label: value" line of the result; value is the first number on the line'}, 'currency': {'type': ['string', 'null']}, 'benchmarks': {'type': 'array', 'items': {'type': 'object', 'required': ['metric', 'name', 'value', 'display', 'band', 'tone', 'read', 'target', 'segment', 'source'], 'properties': {'band': {'type': 'string'}, 'name': {'type': 'string'}, 'read': {'type': 'string'}, 'tone': {'enum': ['good', 'ok', 'warn', 'bad'], 'type': 'string'}, 'value': {'type': 'number'}, 'metric': {'type': 'string'}, 'source': {'type': 'string'}, 'target': {'type': 'string'}, 'display': {'type': 'string'}, 'segment': {'type': ['string', 'null']}}, 'additionalProperties': False}, 'description': 'Rule-of-thumb verdicts for the headline numbers'}, 'bookingUrl': {'type': 'string'}, 'calculator': {'type': 'string', 'description': 'Slug of the interactive calculator on rahuldsarker.co'}}, 'additionalProperties': False}
product_tour_effectiveness_grader
Product Tour Effectiveness Grader
Model a multi-step product tour funnel from start through completion to activation, and flag the biggest drop-off step. See the full version at https://rahuldsarker.co/calculators/product-tour-effectiveness-grader
読み取り専用 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['toursStarted', 'step1CompletionPct', 'step2CompletionPct', 'step3CompletionPct', 'activationPct'], 'properties': {'currency': {'type': 'string', 'pattern': '^[A-Za-z]{3}$', 'description': 'ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.'}, 'toursStarted': {'type': 'number', 'description': 'Tours started per month'}, 'activationPct': {'type': 'number', 'description': "Percentage of finishers who activate (reach the product's aha moment)"}, 'step1CompletionPct': {'type': 'number', 'description': 'Percentage who complete step 1'}, 'step2CompletionPct': {'type': 'number', 'description': 'Percentage who go from step 1 to step 2'}, 'step3CompletionPct': {'type': 'number', 'description': 'Percentage who go from step 2 to step 3 (finish)'}}}
出力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['kind', 'tool', 'title', 'calculator', 'url', 'bookingUrl', 'currency', 'compact', 'inputs', 'metrics', 'notes', 'benchmarks'], 'properties': {'url': {'type': 'string'}, 'kind': {'type': 'string', 'const': 'calculator'}, 'tool': {'type': 'string', 'description': 'The calculator tool that produced this result'}, 'notes': {'type': 'array', 'items': {'type': 'string'}}, 'title': {'type': 'string'}, 'inputs': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'compact': {'type': 'boolean'}, 'metrics': {'type': 'array', 'items': {'type': 'object', 'required': ['label', 'value', 'unit', 'display'], 'properties': {'unit': {'anyOf': [{'enum': ['currency', 'x', '%', 'months'], 'type': 'string'}, {'type': 'null'}]}, 'label': {'type': 'string'}, 'value': {'type': ['number', 'null']}, 'display': {'type': 'string'}}, 'additionalProperties': False}, 'description': 'Every "Label: value" line of the result; value is the first number on the line'}, 'currency': {'type': ['string', 'null']}, 'benchmarks': {'type': 'array', 'items': {'type': 'object', 'required': ['metric', 'name', 'value', 'display', 'band', 'tone', 'read', 'target', 'segment', 'source'], 'properties': {'band': {'type': 'string'}, 'name': {'type': 'string'}, 'read': {'type': 'string'}, 'tone': {'enum': ['good', 'ok', 'warn', 'bad'], 'type': 'string'}, 'value': {'type': 'number'}, 'metric': {'type': 'string'}, 'source': {'type': 'string'}, 'target': {'type': 'string'}, 'display': {'type': 'string'}, 'segment': {'type': ['string', 'null']}}, 'additionalProperties': False}, 'description': 'Rule-of-thumb verdicts for the headline numbers'}, 'bookingUrl': {'type': 'string'}, 'calculator': {'type': 'string', 'description': 'Slug of the interactive calculator on rahuldsarker.co'}}, 'additionalProperties': False}
product_usage_frequency_grader
Product Usage Frequency Grader
Grade product stickiness from DAU/MAU into bands from idle tab to daily utility. See the full version at https://rahuldsarker.co/calculators/product-usage-frequency-grader
読み取り専用 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['dau', 'mau'], 'properties': {'dau': {'type': 'number', 'description': 'Daily active users'}, 'mau': {'type': 'number', 'description': 'Monthly active users'}, 'currency': {'type': 'string', 'pattern': '^[A-Za-z]{3}$', 'description': 'ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.'}}}
出力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['kind', 'tool', 'title', 'calculator', 'url', 'bookingUrl', 'currency', 'compact', 'inputs', 'metrics', 'notes', 'benchmarks'], 'properties': {'url': {'type': 'string'}, 'kind': {'type': 'string', 'const': 'calculator'}, 'tool': {'type': 'string', 'description': 'The calculator tool that produced this result'}, 'notes': {'type': 'array', 'items': {'type': 'string'}}, 'title': {'type': 'string'}, 'inputs': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'compact': {'type': 'boolean'}, 'metrics': {'type': 'array', 'items': {'type': 'object', 'required': ['label', 'value', 'unit', 'display'], 'properties': {'unit': {'anyOf': [{'enum': ['currency', 'x', '%', 'months'], 'type': 'string'}, {'type': 'null'}]}, 'label': {'type': 'string'}, 'value': {'type': ['number', 'null']}, 'display': {'type': 'string'}}, 'additionalProperties': False}, 'description': 'Every "Label: value" line of the result; value is the first number on the line'}, 'currency': {'type': ['string', 'null']}, 'benchmarks': {'type': 'array', 'items': {'type': 'object', 'required': ['metric', 'name', 'value', 'display', 'band', 'tone', 'read', 'target', 'segment', 'source'], 'properties': {'band': {'type': 'string'}, 'name': {'type': 'string'}, 'read': {'type': 'string'}, 'tone': {'enum': ['good', 'ok', 'warn', 'bad'], 'type': 'string'}, 'value': {'type': 'number'}, 'metric': {'type': 'string'}, 'source': {'type': 'string'}, 'target': {'type': 'string'}, 'display': {'type': 'string'}, 'segment': {'type': ['string', 'null']}}, 'additionalProperties': False}, 'description': 'Rule-of-thumb verdicts for the headline numbers'}, 'bookingUrl': {'type': 'string'}, 'calculator': {'type': 'string', 'description': 'Slug of the interactive calculator on rahuldsarker.co'}}, 'additionalProperties': False}
read_content
Read an article or case study in full
Get the full text of one rahuldsarker.co article or case study, by its slug or URL (from search_content), so you can quote it accurately. Always cite the returned link.
読み取り専用 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['slug'], 'properties': {'slug': {'type': 'string', 'maxLength': 300, 'minLength': 2, 'description': 'The slug or URL, e.g. "why-server-side-capi-cut-signal-loss" or https://rahuldsarker.co/insights/â\x80¦'}}}
renewals_pipeline_health_grader
Renewals Pipeline Health Grader
Grade an account renewal on weighted 90-day signals (adoption, sponsor strength, support sentiment, realised value) and quantify ARR at risk. See the full version at https://rahuldsarker.co/calculators/renewals-pipeline-health-grader
読み取り専用 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['productAdoptionTrend', 'executiveSponsorStrength', 'supportSentimentTrend', 'realisedValueVsGoals', 'accountArr'], 'properties': {'currency': {'type': 'string', 'pattern': '^[A-Za-z]{3}$', 'description': 'ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.'}, 'accountArr': {'type': 'number', 'description': 'Account ARR'}, 'productAdoptionTrend': {'enum': ['positive', 'flat', 'negative'], 'type': 'string', 'description': 'Product adoption / usage trend, weight 30'}, 'realisedValueVsGoals': {'enum': ['positive', 'flat', 'negative'], 'type': 'string', 'description': 'Realised value vs. goals, weight 30'}, 'supportSentimentTrend': {'enum': ['positive', 'flat', 'negative'], 'type': 'string', 'description': 'Support sentiment / ticket trend, weight 20'}, 'executiveSponsorStrength': {'enum': ['positive', 'flat', 'negative'], 'type': 'string', 'description': 'Executive sponsor strength, weight 20'}}}
出力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['kind', 'tool', 'title', 'calculator', 'url', 'bookingUrl', 'currency', 'compact', 'inputs', 'metrics', 'notes', 'benchmarks'], 'properties': {'url': {'type': 'string'}, 'kind': {'type': 'string', 'const': 'calculator'}, 'tool': {'type': 'string', 'description': 'The calculator tool that produced this result'}, 'notes': {'type': 'array', 'items': {'type': 'string'}}, 'title': {'type': 'string'}, 'inputs': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'compact': {'type': 'boolean'}, 'metrics': {'type': 'array', 'items': {'type': 'object', 'required': ['label', 'value', 'unit', 'display'], 'properties': {'unit': {'anyOf': [{'enum': ['currency', 'x', '%', 'months'], 'type': 'string'}, {'type': 'null'}]}, 'label': {'type': 'string'}, 'value': {'type': ['number', 'null']}, 'display': {'type': 'string'}}, 'additionalProperties': False}, 'description': 'Every "Label: value" line of the result; value is the first number on the line'}, 'currency': {'type': ['string', 'null']}, 'benchmarks': {'type': 'array', 'items': {'type': 'object', 'required': ['metric', 'name', 'value', 'display', 'band', 'tone', 'read', 'target', 'segment', 'source'], 'properties': {'band': {'type': 'string'}, 'name': {'type': 'string'}, 'read': {'type': 'string'}, 'tone': {'enum': ['good', 'ok', 'warn', 'bad'], 'type': 'string'}, 'value': {'type': 'number'}, 'metric': {'type': 'string'}, 'source': {'type': 'string'}, 'target': {'type': 'string'}, 'display': {'type': 'string'}, 'segment': {'type': ['string', 'null']}}, 'additionalProperties': False}, 'description': 'Rule-of-thumb verdicts for the headline numbers'}, 'bookingUrl': {'type': 'string'}, 'calculator': {'type': 'string', 'description': 'Slug of the interactive calculator on rahuldsarker.co'}}, 'additionalProperties': False}
request_callback
Ask Rahul D Sarker to get in touch
Send the person's name, email, phone and what they need help with to Rahul D Sarker, who replies directly. Only use when the person asks to be contacted. Where the client supports forms, they review and submit the details themselves; otherwise show them the details and set confirmed only after they agree. To pick a call time instead, use check_availability.
外部アクセスあり
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'email': {'type': 'string', 'maxLength': 200}, 'phone': {'type': 'string', 'maxLength': 40, 'description': 'With country code, e.g. +1 415 555 0100'}, 'company': {'type': 'string', 'maxLength': 120}, 'message': {'type': 'string', 'maxLength': 2000, 'description': 'What they want help with, in their words'}, 'lastName': {'type': 'string', 'maxLength': 80}, 'confirmed': {'type': 'boolean', 'description': 'True only after the person has seen these exact details and asked to be contacted'}, 'firstName': {'type': 'string', 'maxLength': 80}}}
retargeting_pool_size_estimator
Retargeting Pool Size Estimator
Estimate the addressable retargeting pool from monthly visitors, window, and match rate, plus the budget needed to hit a target weekly frequency. See the full version at https://rahuldsarker.co/calculators/retargeting-pool-size-estimator
読み取り専用 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['visitors', 'windowDays', 'matchRatePct', 'targetFreq', 'cpm'], 'properties': {'cpm': {'type': 'number', 'description': 'Retargeting CPM'}, 'currency': {'type': 'string', 'pattern': '^[A-Za-z]{3}$', 'description': 'ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.'}, 'visitors': {'type': 'number', 'description': 'Monthly unique visitors'}, 'targetFreq': {'type': 'number', 'description': 'Target weekly impressions per user'}, 'windowDays': {'type': 'number', 'description': 'Retargeting window, in days'}, 'matchRatePct': {'type': 'number', 'description': 'Cookie / match rate, as a percentage'}}}
出力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['kind', 'tool', 'title', 'calculator', 'url', 'bookingUrl', 'currency', 'compact', 'inputs', 'metrics', 'notes', 'benchmarks'], 'properties': {'url': {'type': 'string'}, 'kind': {'type': 'string', 'const': 'calculator'}, 'tool': {'type': 'string', 'description': 'The calculator tool that produced this result'}, 'notes': {'type': 'array', 'items': {'type': 'string'}}, 'title': {'type': 'string'}, 'inputs': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'compact': {'type': 'boolean'}, 'metrics': {'type': 'array', 'items': {'type': 'object', 'required': ['label', 'value', 'unit', 'display'], 'properties': {'unit': {'anyOf': [{'enum': ['currency', 'x', '%', 'months'], 'type': 'string'}, {'type': 'null'}]}, 'label': {'type': 'string'}, 'value': {'type': ['number', 'null']}, 'display': {'type': 'string'}}, 'additionalProperties': False}, 'description': 'Every "Label: value" line of the result; value is the first number on the line'}, 'currency': {'type': ['string', 'null']}, 'benchmarks': {'type': 'array', 'items': {'type': 'object', 'required': ['metric', 'name', 'value', 'display', 'band', 'tone', 'read', 'target', 'segment', 'source'], 'properties': {'band': {'type': 'string'}, 'name': {'type': 'string'}, 'read': {'type': 'string'}, 'tone': {'enum': ['good', 'ok', 'warn', 'bad'], 'type': 'string'}, 'value': {'type': 'number'}, 'metric': {'type': 'string'}, 'source': {'type': 'string'}, 'target': {'type': 'string'}, 'display': {'type': 'string'}, 'segment': {'type': ['string', 'null']}}, 'additionalProperties': False}, 'description': 'Rule-of-thumb verdicts for the headline numbers'}, 'bookingUrl': {'type': 'string'}, 'calculator': {'type': 'string', 'description': 'Slug of the interactive calculator on rahuldsarker.co'}}, 'additionalProperties': False}
revops_maturity_benchmarker
RevOps Maturity Benchmarker
Score RevOps maturity across five dimensions (systems, attribution, governance, forecasting, automation) on a 1-4 scale and identify the weakest area. See the full version at https://rahuldsarker.co/calculators/revops-maturity-benchmarker
読み取り専用 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['systemConnectivity', 'attributionAndReporting', 'dataGovernance', 'forecastingRigor', 'processAutomation'], 'properties': {'currency': {'type': 'string', 'pattern': '^[A-Za-z]{3}$', 'description': 'ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.'}, 'dataGovernance': {'type': 'number', 'maximum': 4, 'minimum': 1, 'description': 'Data governance & hygiene, 1=Reactive/manual to 4=Optimized'}, 'forecastingRigor': {'type': 'number', 'maximum': 4, 'minimum': 1, 'description': 'Forecasting & pipeline rigor, 1=Reactive/manual to 4=Optimized'}, 'processAutomation': {'type': 'number', 'maximum': 4, 'minimum': 1, 'description': 'Process automation & enablement, 1=Reactive/manual to 4=Optimized'}, 'systemConnectivity': {'type': 'number', 'maximum': 4, 'minimum': 1, 'description': 'System connectivity (CRM â\x86\x94 MAP â\x86\x94 data), 1=Reactive/manual to 4=Optimized'}, 'attributionAndReporting': {'type': 'number', 'maximum': 4, 'minimum': 1, 'description': 'Attribution & reporting, 1=Reactive/manual to 4=Optimized'}}}
出力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['kind', 'tool', 'title', 'calculator', 'url', 'bookingUrl', 'currency', 'compact', 'inputs', 'metrics', 'notes', 'benchmarks'], 'properties': {'url': {'type': 'string'}, 'kind': {'type': 'string', 'const': 'calculator'}, 'tool': {'type': 'string', 'description': 'The calculator tool that produced this result'}, 'notes': {'type': 'array', 'items': {'type': 'string'}}, 'title': {'type': 'string'}, 'inputs': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'compact': {'type': 'boolean'}, 'metrics': {'type': 'array', 'items': {'type': 'object', 'required': ['label', 'value', 'unit', 'display'], 'properties': {'unit': {'anyOf': [{'enum': ['currency', 'x', '%', 'months'], 'type': 'string'}, {'type': 'null'}]}, 'label': {'type': 'string'}, 'value': {'type': ['number', 'null']}, 'display': {'type': 'string'}}, 'additionalProperties': False}, 'description': 'Every "Label: value" line of the result; value is the first number on the line'}, 'currency': {'type': ['string', 'null']}, 'benchmarks': {'type': 'array', 'items': {'type': 'object', 'required': ['metric', 'name', 'value', 'display', 'band', 'tone', 'read', 'target', 'segment', 'source'], 'properties': {'band': {'type': 'string'}, 'name': {'type': 'string'}, 'read': {'type': 'string'}, 'tone': {'enum': ['good', 'ok', 'warn', 'bad'], 'type': 'string'}, 'value': {'type': 'number'}, 'metric': {'type': 'string'}, 'source': {'type': 'string'}, 'target': {'type': 'string'}, 'display': {'type': 'string'}, 'segment': {'type': ['string', 'null']}}, 'additionalProperties': False}, 'description': 'Rule-of-thumb verdicts for the headline numbers'}, 'bookingUrl': {'type': 'string'}, 'calculator': {'type': 'string', 'description': 'Slug of the interactive calculator on rahuldsarker.co'}}, 'additionalProperties': False}
roas_calculator
ROAS & Break-even ROAS Calculator
Calculate ROAS, ACOS, break-even ROAS, and profit from ad revenue, ad spend, and gross margin. See the full version at https://rahuldsarker.co/calculators/roas
読み取り専用 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['revenue', 'spend', 'marginPct'], 'properties': {'spend': {'type': 'number', 'description': 'Total ad spend'}, 'revenue': {'type': 'number', 'description': 'Revenue attributed to the ad spend'}, 'currency': {'type': 'string', 'pattern': '^[A-Za-z]{3}$', 'description': 'ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.'}, 'marginPct': {'type': 'number', 'description': 'Gross margin, as a percentage, e.g. 60 for 60%'}}}
出力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['kind', 'tool', 'title', 'calculator', 'url', 'bookingUrl', 'currency', 'compact', 'inputs', 'metrics', 'notes', 'benchmarks'], 'properties': {'url': {'type': 'string'}, 'kind': {'type': 'string', 'const': 'calculator'}, 'tool': {'type': 'string', 'description': 'The calculator tool that produced this result'}, 'notes': {'type': 'array', 'items': {'type': 'string'}}, 'title': {'type': 'string'}, 'inputs': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'compact': {'type': 'boolean'}, 'metrics': {'type': 'array', 'items': {'type': 'object', 'required': ['label', 'value', 'unit', 'display'], 'properties': {'unit': {'anyOf': [{'enum': ['currency', 'x', '%', 'months'], 'type': 'string'}, {'type': 'null'}]}, 'label': {'type': 'string'}, 'value': {'type': ['number', 'null']}, 'display': {'type': 'string'}}, 'additionalProperties': False}, 'description': 'Every "Label: value" line of the result; value is the first number on the line'}, 'currency': {'type': ['string', 'null']}, 'benchmarks': {'type': 'array', 'items': {'type': 'object', 'required': ['metric', 'name', 'value', 'display', 'band', 'tone', 'read', 'target', 'segment', 'source'], 'properties': {'band': {'type': 'string'}, 'name': {'type': 'string'}, 'read': {'type': 'string'}, 'tone': {'enum': ['good', 'ok', 'warn', 'bad'], 'type': 'string'}, 'value': {'type': 'number'}, 'metric': {'type': 'string'}, 'source': {'type': 'string'}, 'target': {'type': 'string'}, 'display': {'type': 'string'}, 'segment': {'type': ['string', 'null']}}, 'additionalProperties': False}, 'description': 'Rule-of-thumb verdicts for the headline numbers'}, 'bookingUrl': {'type': 'string'}, 'calculator': {'type': 'string', 'description': 'Slug of the interactive calculator on rahuldsarker.co'}}, 'additionalProperties': False}
roas_to_mer_converter
ROAS to MER Converter
Compare a platform-reported ROAS against your true blended Marketing Efficiency Ratio (MER) to see how much pixels over-claim. See the full version at https://rahuldsarker.co/calculators/roas-to-mer-converter
読み取り専用 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['totalRevenue', 'totalSpend', 'platformRoas'], 'properties': {'currency': {'type': 'string', 'pattern': '^[A-Za-z]{3}$', 'description': 'ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.'}, 'totalSpend': {'type': 'number', 'description': 'Total marketing spend across all channels'}, 'platformRoas': {'type': 'number', 'description': 'Blended ROAS as reported by the ad platform(s)'}, 'totalRevenue': {'type': 'number', 'description': 'Total revenue from all sources (backend/store, not the ad platform)'}}}
出力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['kind', 'tool', 'title', 'calculator', 'url', 'bookingUrl', 'currency', 'compact', 'inputs', 'metrics', 'notes', 'benchmarks'], 'properties': {'url': {'type': 'string'}, 'kind': {'type': 'string', 'const': 'calculator'}, 'tool': {'type': 'string', 'description': 'The calculator tool that produced this result'}, 'notes': {'type': 'array', 'items': {'type': 'string'}}, 'title': {'type': 'string'}, 'inputs': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'compact': {'type': 'boolean'}, 'metrics': {'type': 'array', 'items': {'type': 'object', 'required': ['label', 'value', 'unit', 'display'], 'properties': {'unit': {'anyOf': [{'enum': ['currency', 'x', '%', 'months'], 'type': 'string'}, {'type': 'null'}]}, 'label': {'type': 'string'}, 'value': {'type': ['number', 'null']}, 'display': {'type': 'string'}}, 'additionalProperties': False}, 'description': 'Every "Label: value" line of the result; value is the first number on the line'}, 'currency': {'type': ['string', 'null']}, 'benchmarks': {'type': 'array', 'items': {'type': 'object', 'required': ['metric', 'name', 'value', 'display', 'band', 'tone', 'read', 'target', 'segment', 'source'], 'properties': {'band': {'type': 'string'}, 'name': {'type': 'string'}, 'read': {'type': 'string'}, 'tone': {'enum': ['good', 'ok', 'warn', 'bad'], 'type': 'string'}, 'value': {'type': 'number'}, 'metric': {'type': 'string'}, 'source': {'type': 'string'}, 'target': {'type': 'string'}, 'display': {'type': 'string'}, 'segment': {'type': ['string', 'null']}}, 'additionalProperties': False}, 'description': 'Rule-of-thumb verdicts for the headline numbers'}, 'bookingUrl': {'type': 'string'}, 'calculator': {'type': 'string', 'description': 'Slug of the interactive calculator on rahuldsarker.co'}}, 'additionalProperties': False}
rule_of_40_sandbox
Rule of 40 Sandbox
Add YoY revenue growth and profit margin to see if a SaaS business clears the Rule of 40 benchmark. See the full version at https://rahuldsarker.co/calculators/rule-of-40-sandbox
読み取り専用 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['yoyGrowthPct', 'profitMarginPct'], 'properties': {'currency': {'type': 'string', 'pattern': '^[A-Za-z]{3}$', 'description': 'ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.'}, 'yoyGrowthPct': {'type': 'number', 'description': 'Year-over-year revenue growth, as a percentage'}, 'profitMarginPct': {'type': 'number', 'description': 'EBITDA or FCF margin, as a percentage (can be negative)'}}}
出力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['kind', 'tool', 'title', 'calculator', 'url', 'bookingUrl', 'currency', 'compact', 'inputs', 'metrics', 'notes', 'benchmarks'], 'properties': {'url': {'type': 'string'}, 'kind': {'type': 'string', 'const': 'calculator'}, 'tool': {'type': 'string', 'description': 'The calculator tool that produced this result'}, 'notes': {'type': 'array', 'items': {'type': 'string'}}, 'title': {'type': 'string'}, 'inputs': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'compact': {'type': 'boolean'}, 'metrics': {'type': 'array', 'items': {'type': 'object', 'required': ['label', 'value', 'unit', 'display'], 'properties': {'unit': {'anyOf': [{'enum': ['currency', 'x', '%', 'months'], 'type': 'string'}, {'type': 'null'}]}, 'label': {'type': 'string'}, 'value': {'type': ['number', 'null']}, 'display': {'type': 'string'}}, 'additionalProperties': False}, 'description': 'Every "Label: value" line of the result; value is the first number on the line'}, 'currency': {'type': ['string', 'null']}, 'benchmarks': {'type': 'array', 'items': {'type': 'object', 'required': ['metric', 'name', 'value', 'display', 'band', 'tone', 'read', 'target', 'segment', 'source'], 'properties': {'band': {'type': 'string'}, 'name': {'type': 'string'}, 'read': {'type': 'string'}, 'tone': {'enum': ['good', 'ok', 'warn', 'bad'], 'type': 'string'}, 'value': {'type': 'number'}, 'metric': {'type': 'string'}, 'source': {'type': 'string'}, 'target': {'type': 'string'}, 'display': {'type': 'string'}, 'segment': {'type': ['string', 'null']}}, 'additionalProperties': False}, 'description': 'Rule-of-thumb verdicts for the headline numbers'}, 'bookingUrl': {'type': 'string'}, 'calculator': {'type': 'string', 'description': 'Slug of the interactive calculator on rahuldsarker.co'}}, 'additionalProperties': False}
run_calculator
Run a calculator by name
Run any rahuldsarker.co calculator by its tool name (from find_calculator). Inputs you leave out are asked of the person directly when the client supports forms; otherwise the result lists what to ask for.
読み取り専用 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['name'], 'properties': {'name': {'type': 'string', 'maxLength': 80, 'minLength': 2, 'description': 'Calculator tool name, e.g. "roas_calculator"'}, 'arguments': {'type': 'object', 'description': 'The calculator\'s inputs, including optional currency (e.g. "USD")', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}}}
saas_churn_cohort_visualizer
SaaS Churn Cohort Visualizer
Project how a customer cohort decays over time under a monthly churn rate, and the implied average customer lifespan. See the full version at https://rahuldsarker.co/calculators/saas-churn-cohort-visualizer
読み取り専用 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['cohortSize', 'monthlyChurnPct'], 'properties': {'segment': {'enum': ['smb', 'mid_market', 'enterprise'], 'type': 'string', 'description': 'Customer segment for the benchmark verdict: smb, mid_market or enterprise (default smb)'}, 'currency': {'type': 'string', 'pattern': '^[A-Za-z]{3}$', 'description': 'ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.'}, 'cohortSize': {'type': 'number', 'description': 'Starting cohort size (number of customers)'}, 'monthlyChurnPct': {'type': 'number', 'description': 'Monthly logo churn rate, as a percentage'}}}
出力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['kind', 'tool', 'title', 'calculator', 'url', 'bookingUrl', 'currency', 'compact', 'inputs', 'metrics', 'notes', 'benchmarks'], 'properties': {'url': {'type': 'string'}, 'kind': {'type': 'string', 'const': 'calculator'}, 'tool': {'type': 'string', 'description': 'The calculator tool that produced this result'}, 'notes': {'type': 'array', 'items': {'type': 'string'}}, 'title': {'type': 'string'}, 'inputs': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'compact': {'type': 'boolean'}, 'metrics': {'type': 'array', 'items': {'type': 'object', 'required': ['label', 'value', 'unit', 'display'], 'properties': {'unit': {'anyOf': [{'enum': ['currency', 'x', '%', 'months'], 'type': 'string'}, {'type': 'null'}]}, 'label': {'type': 'string'}, 'value': {'type': ['number', 'null']}, 'display': {'type': 'string'}}, 'additionalProperties': False}, 'description': 'Every "Label: value" line of the result; value is the first number on the line'}, 'currency': {'type': ['string', 'null']}, 'benchmarks': {'type': 'array', 'items': {'type': 'object', 'required': ['metric', 'name', 'value', 'display', 'band', 'tone', 'read', 'target', 'segment', 'source'], 'properties': {'band': {'type': 'string'}, 'name': {'type': 'string'}, 'read': {'type': 'string'}, 'tone': {'enum': ['good', 'ok', 'warn', 'bad'], 'type': 'string'}, 'value': {'type': 'number'}, 'metric': {'type': 'string'}, 'source': {'type': 'string'}, 'target': {'type': 'string'}, 'display': {'type': 'string'}, 'segment': {'type': ['string', 'null']}}, 'additionalProperties': False}, 'description': 'Rule-of-thumb verdicts for the headline numbers'}, 'bookingUrl': {'type': 'string'}, 'calculator': {'type': 'string', 'description': 'Slug of the interactive calculator on rahuldsarker.co'}}, 'additionalProperties': False}
saas_magic_number_calculator
SaaS Magic Number Calculator
Measure how efficiently sales and marketing spend turns into new ARR. See the full version at https://rahuldsarker.co/calculators/saas-magic-number-calculator
読み取り専用 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['currentArr', 'priorArr', 'priorPeriodSalesAndMarketingSpend'], 'properties': {'currency': {'type': 'string', 'pattern': '^[A-Za-z]{3}$', 'description': 'ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.'}, 'priorArr': {'type': 'number', 'description': 'Prior period ARR'}, 'currentArr': {'type': 'number', 'description': 'Current period ARR'}, 'priorPeriodSalesAndMarketingSpend': {'type': 'number', 'description': 'Sales and marketing spend in the prior period'}}}
出力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['kind', 'tool', 'title', 'calculator', 'url', 'bookingUrl', 'currency', 'compact', 'inputs', 'metrics', 'notes', 'benchmarks'], 'properties': {'url': {'type': 'string'}, 'kind': {'type': 'string', 'const': 'calculator'}, 'tool': {'type': 'string', 'description': 'The calculator tool that produced this result'}, 'notes': {'type': 'array', 'items': {'type': 'string'}}, 'title': {'type': 'string'}, 'inputs': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'compact': {'type': 'boolean'}, 'metrics': {'type': 'array', 'items': {'type': 'object', 'required': ['label', 'value', 'unit', 'display'], 'properties': {'unit': {'anyOf': [{'enum': ['currency', 'x', '%', 'months'], 'type': 'string'}, {'type': 'null'}]}, 'label': {'type': 'string'}, 'value': {'type': ['number', 'null']}, 'display': {'type': 'string'}}, 'additionalProperties': False}, 'description': 'Every "Label: value" line of the result; value is the first number on the line'}, 'currency': {'type': ['string', 'null']}, 'benchmarks': {'type': 'array', 'items': {'type': 'object', 'required': ['metric', 'name', 'value', 'display', 'band', 'tone', 'read', 'target', 'segment', 'source'], 'properties': {'band': {'type': 'string'}, 'name': {'type': 'string'}, 'read': {'type': 'string'}, 'tone': {'enum': ['good', 'ok', 'warn', 'bad'], 'type': 'string'}, 'value': {'type': 'number'}, 'metric': {'type': 'string'}, 'source': {'type': 'string'}, 'target': {'type': 'string'}, 'display': {'type': 'string'}, 'segment': {'type': ['string', 'null']}}, 'additionalProperties': False}, 'description': 'Rule-of-thumb verdicts for the headline numbers'}, 'bookingUrl': {'type': 'string'}, 'calculator': {'type': 'string', 'description': 'Slug of the interactive calculator on rahuldsarker.co'}}, 'additionalProperties': False}
saas_quick_ratio_engine
SaaS Quick Ratio Engine
Divide MRR gained (new + expansion) by MRR lost (contraction + churn) to measure growth durability. See the full version at https://rahuldsarker.co/calculators/saas-quick-ratio-engine
読み取り専用 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['newMrr', 'expansionMrr', 'contractionMrr', 'churnedMrr'], 'properties': {'newMrr': {'type': 'number', 'description': 'New MRR added this period'}, 'currency': {'type': 'string', 'pattern': '^[A-Za-z]{3}$', 'description': 'ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.'}, 'churnedMrr': {'type': 'number', 'description': 'MRR lost to cancellations/churn'}, 'expansionMrr': {'type': 'number', 'description': 'Expansion MRR from existing customers'}, 'contractionMrr': {'type': 'number', 'description': 'MRR lost to downgrades/contraction'}}}
出力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['kind', 'tool', 'title', 'calculator', 'url', 'bookingUrl', 'currency', 'compact', 'inputs', 'metrics', 'notes', 'benchmarks'], 'properties': {'url': {'type': 'string'}, 'kind': {'type': 'string', 'const': 'calculator'}, 'tool': {'type': 'string', 'description': 'The calculator tool that produced this result'}, 'notes': {'type': 'array', 'items': {'type': 'string'}}, 'title': {'type': 'string'}, 'inputs': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'compact': {'type': 'boolean'}, 'metrics': {'type': 'array', 'items': {'type': 'object', 'required': ['label', 'value', 'unit', 'display'], 'properties': {'unit': {'anyOf': [{'enum': ['currency', 'x', '%', 'months'], 'type': 'string'}, {'type': 'null'}]}, 'label': {'type': 'string'}, 'value': {'type': ['number', 'null']}, 'display': {'type': 'string'}}, 'additionalProperties': False}, 'description': 'Every "Label: value" line of the result; value is the first number on the line'}, 'currency': {'type': ['string', 'null']}, 'benchmarks': {'type': 'array', 'items': {'type': 'object', 'required': ['metric', 'name', 'value', 'display', 'band', 'tone', 'read', 'target', 'segment', 'source'], 'properties': {'band': {'type': 'string'}, 'name': {'type': 'string'}, 'read': {'type': 'string'}, 'tone': {'enum': ['good', 'ok', 'warn', 'bad'], 'type': 'string'}, 'value': {'type': 'number'}, 'metric': {'type': 'string'}, 'source': {'type': 'string'}, 'target': {'type': 'string'}, 'display': {'type': 'string'}, 'segment': {'type': ['string', 'null']}}, 'additionalProperties': False}, 'description': 'Rule-of-thumb verdicts for the headline numbers'}, 'bookingUrl': {'type': 'string'}, 'calculator': {'type': 'string', 'description': 'Slug of the interactive calculator on rahuldsarker.co'}}, 'additionalProperties': False}
saas_valuation_multiple_predictor
SaaS Valuation Multiple Predictor
Estimate a directional ARR multiple and enterprise value range from growth, net revenue retention, and gross margin. See the full version at https://rahuldsarker.co/calculators/arr-multiple-calculator
読み取り専用 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['arr', 'yoyGrowthPct', 'nrrPct', 'grossMarginPct'], 'properties': {'arr': {'type': 'number', 'description': 'Current annual recurring revenue (ARR)'}, 'nrrPct': {'type': 'number', 'description': 'Net revenue retention, as a percentage'}, 'currency': {'type': 'string', 'pattern': '^[A-Za-z]{3}$', 'description': 'ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.'}, 'yoyGrowthPct': {'type': 'number', 'description': 'Year-over-year growth rate, as a percentage'}, 'grossMarginPct': {'type': 'number', 'description': 'Gross margin, as a percentage'}}}
出力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['kind', 'tool', 'title', 'calculator', 'url', 'bookingUrl', 'currency', 'compact', 'inputs', 'metrics', 'notes', 'benchmarks'], 'properties': {'url': {'type': 'string'}, 'kind': {'type': 'string', 'const': 'calculator'}, 'tool': {'type': 'string', 'description': 'The calculator tool that produced this result'}, 'notes': {'type': 'array', 'items': {'type': 'string'}}, 'title': {'type': 'string'}, 'inputs': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'compact': {'type': 'boolean'}, 'metrics': {'type': 'array', 'items': {'type': 'object', 'required': ['label', 'value', 'unit', 'display'], 'properties': {'unit': {'anyOf': [{'enum': ['currency', 'x', '%', 'months'], 'type': 'string'}, {'type': 'null'}]}, 'label': {'type': 'string'}, 'value': {'type': ['number', 'null']}, 'display': {'type': 'string'}}, 'additionalProperties': False}, 'description': 'Every "Label: value" line of the result; value is the first number on the line'}, 'currency': {'type': ['string', 'null']}, 'benchmarks': {'type': 'array', 'items': {'type': 'object', 'required': ['metric', 'name', 'value', 'display', 'band', 'tone', 'read', 'target', 'segment', 'source'], 'properties': {'band': {'type': 'string'}, 'name': {'type': 'string'}, 'read': {'type': 'string'}, 'tone': {'enum': ['good', 'ok', 'warn', 'bad'], 'type': 'string'}, 'value': {'type': 'number'}, 'metric': {'type': 'string'}, 'source': {'type': 'string'}, 'target': {'type': 'string'}, 'display': {'type': 'string'}, 'segment': {'type': ['string', 'null']}}, 'additionalProperties': False}, 'description': 'Rule-of-thumb verdicts for the headline numbers'}, 'bookingUrl': {'type': 'string'}, 'calculator': {'type': 'string', 'description': 'Slug of the interactive calculator on rahuldsarker.co'}}, 'additionalProperties': False}
sales_commission_tier_modeler
Sales Commission Tier Modeler
Model a rep's commission payout under a base-plus-accelerator plan, and check it against gross margin to catch plans that outrun profitability. See the full version at https://rahuldsarker.co/calculators/sales-commission-tier-modeler
読み取り専用 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['annualQuota', 'attainmentPct', 'baseCommissionRatePct', 'acceleratorThresholdPct', 'acceleratedRatePct', 'dealGrossMarginPct'], 'properties': {'currency': {'type': 'string', 'pattern': '^[A-Za-z]{3}$', 'description': 'ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.'}, 'annualQuota': {'type': 'number', 'description': 'Annual quota'}, 'attainmentPct': {'type': 'number', 'description': 'Quota attainment, as a percentage'}, 'acceleratedRatePct': {'type': 'number', 'description': 'Accelerated commission rate, as a percentage'}, 'dealGrossMarginPct': {'type': 'number', 'description': 'Deal gross margin, as a percentage'}, 'baseCommissionRatePct': {'type': 'number', 'description': 'Base commission rate, as a percentage'}, 'acceleratorThresholdPct': {'type': 'number', 'description': 'Quota attainment percentage at which the accelerator kicks in'}}}
出力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['kind', 'tool', 'title', 'calculator', 'url', 'bookingUrl', 'currency', 'compact', 'inputs', 'metrics', 'notes', 'benchmarks'], 'properties': {'url': {'type': 'string'}, 'kind': {'type': 'string', 'const': 'calculator'}, 'tool': {'type': 'string', 'description': 'The calculator tool that produced this result'}, 'notes': {'type': 'array', 'items': {'type': 'string'}}, 'title': {'type': 'string'}, 'inputs': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'compact': {'type': 'boolean'}, 'metrics': {'type': 'array', 'items': {'type': 'object', 'required': ['label', 'value', 'unit', 'display'], 'properties': {'unit': {'anyOf': [{'enum': ['currency', 'x', '%', 'months'], 'type': 'string'}, {'type': 'null'}]}, 'label': {'type': 'string'}, 'value': {'type': ['number', 'null']}, 'display': {'type': 'string'}}, 'additionalProperties': False}, 'description': 'Every "Label: value" line of the result; value is the first number on the line'}, 'currency': {'type': ['string', 'null']}, 'benchmarks': {'type': 'array', 'items': {'type': 'object', 'required': ['metric', 'name', 'value', 'display', 'band', 'tone', 'read', 'target', 'segment', 'source'], 'properties': {'band': {'type': 'string'}, 'name': {'type': 'string'}, 'read': {'type': 'string'}, 'tone': {'enum': ['good', 'ok', 'warn', 'bad'], 'type': 'string'}, 'value': {'type': 'number'}, 'metric': {'type': 'string'}, 'source': {'type': 'string'}, 'target': {'type': 'string'}, 'display': {'type': 'string'}, 'segment': {'type': ['string', 'null']}}, 'additionalProperties': False}, 'description': 'Rule-of-thumb verdicts for the headline numbers'}, 'bookingUrl': {'type': 'string'}, 'calculator': {'type': 'string', 'description': 'Slug of the interactive calculator on rahuldsarker.co'}}, 'additionalProperties': False}
sales_cycle_length_forecaster
Sales Cycle Length Forecaster
Project total deal cycle length by adding stakeholder count and compliance/procurement gates to a base single-buyer cycle. See the full version at https://rahuldsarker.co/calculators/sales-cycle-length-forecaster
読み取り専用 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['baseCycleDays', 'decisionMakers', 'daysPerExtraStakeholder', 'complianceGate'], 'properties': {'currency': {'type': 'string', 'pattern': '^[A-Za-z]{3}$', 'description': 'ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.'}, 'baseCycleDays': {'type': 'number', 'description': 'Base cycle length for a single buyer, in days'}, 'complianceGate': {'enum': ['none', 'security', 'securityLegal', 'full'], 'type': 'string', 'description': 'Compliance/procurement gate: none (0 days), security (security review, 15 days), securityLegal (security + legal, 30 days), or full (security + legal + procurement, 50 days)'}, 'decisionMakers': {'type': 'number', 'description': 'Number of decision-makers involved'}, 'daysPerExtraStakeholder': {'type': 'number', 'description': 'Days added per extra stakeholder beyond the first'}}}
出力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['kind', 'tool', 'title', 'calculator', 'url', 'bookingUrl', 'currency', 'compact', 'inputs', 'metrics', 'notes', 'benchmarks'], 'properties': {'url': {'type': 'string'}, 'kind': {'type': 'string', 'const': 'calculator'}, 'tool': {'type': 'string', 'description': 'The calculator tool that produced this result'}, 'notes': {'type': 'array', 'items': {'type': 'string'}}, 'title': {'type': 'string'}, 'inputs': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'compact': {'type': 'boolean'}, 'metrics': {'type': 'array', 'items': {'type': 'object', 'required': ['label', 'value', 'unit', 'display'], 'properties': {'unit': {'anyOf': [{'enum': ['currency', 'x', '%', 'months'], 'type': 'string'}, {'type': 'null'}]}, 'label': {'type': 'string'}, 'value': {'type': ['number', 'null']}, 'display': {'type': 'string'}}, 'additionalProperties': False}, 'description': 'Every "Label: value" line of the result; value is the first number on the line'}, 'currency': {'type': ['string', 'null']}, 'benchmarks': {'type': 'array', 'items': {'type': 'object', 'required': ['metric', 'name', 'value', 'display', 'band', 'tone', 'read', 'target', 'segment', 'source'], 'properties': {'band': {'type': 'string'}, 'name': {'type': 'string'}, 'read': {'type': 'string'}, 'tone': {'enum': ['good', 'ok', 'warn', 'bad'], 'type': 'string'}, 'value': {'type': 'number'}, 'metric': {'type': 'string'}, 'source': {'type': 'string'}, 'target': {'type': 'string'}, 'display': {'type': 'string'}, 'segment': {'type': ['string', 'null']}}, 'additionalProperties': False}, 'description': 'Rule-of-thumb verdicts for the headline numbers'}, 'bookingUrl': {'type': 'string'}, 'calculator': {'type': 'string', 'description': 'Slug of the interactive calculator on rahuldsarker.co'}}, 'additionalProperties': False}
sales_pipeline_leak_evaluator
Sales Pipeline Leak Evaluator
Run leads through the Lead → MQL → SQL → Opportunity → Win funnel and flag the weakest converting stage. See the full version at https://rahuldsarker.co/calculators/sales-pipeline-leak-evaluator
読み取り専用 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['leads', 'toMqlPct', 'toSqlPct', 'toOppPct', 'toWinPct'], 'properties': {'leads': {'type': 'number', 'description': 'Leads per month, top of funnel'}, 'currency': {'type': 'string', 'pattern': '^[A-Za-z]{3}$', 'description': 'ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.'}, 'toMqlPct': {'type': 'number', 'description': 'Lead â\x86\x92 MQL conversion rate, as a percentage'}, 'toOppPct': {'type': 'number', 'description': 'SQL â\x86\x92 Opportunity conversion rate, as a percentage'}, 'toSqlPct': {'type': 'number', 'description': 'MQL â\x86\x92 SQL conversion rate, as a percentage'}, 'toWinPct': {'type': 'number', 'description': 'Opportunity â\x86\x92 Win conversion rate, as a percentage'}}}
出力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['kind', 'tool', 'title', 'calculator', 'url', 'bookingUrl', 'currency', 'compact', 'inputs', 'metrics', 'notes', 'benchmarks'], 'properties': {'url': {'type': 'string'}, 'kind': {'type': 'string', 'const': 'calculator'}, 'tool': {'type': 'string', 'description': 'The calculator tool that produced this result'}, 'notes': {'type': 'array', 'items': {'type': 'string'}}, 'title': {'type': 'string'}, 'inputs': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'compact': {'type': 'boolean'}, 'metrics': {'type': 'array', 'items': {'type': 'object', 'required': ['label', 'value', 'unit', 'display'], 'properties': {'unit': {'anyOf': [{'enum': ['currency', 'x', '%', 'months'], 'type': 'string'}, {'type': 'null'}]}, 'label': {'type': 'string'}, 'value': {'type': ['number', 'null']}, 'display': {'type': 'string'}}, 'additionalProperties': False}, 'description': 'Every "Label: value" line of the result; value is the first number on the line'}, 'currency': {'type': ['string', 'null']}, 'benchmarks': {'type': 'array', 'items': {'type': 'object', 'required': ['metric', 'name', 'value', 'display', 'band', 'tone', 'read', 'target', 'segment', 'source'], 'properties': {'band': {'type': 'string'}, 'name': {'type': 'string'}, 'read': {'type': 'string'}, 'tone': {'enum': ['good', 'ok', 'warn', 'bad'], 'type': 'string'}, 'value': {'type': 'number'}, 'metric': {'type': 'string'}, 'source': {'type': 'string'}, 'target': {'type': 'string'}, 'display': {'type': 'string'}, 'segment': {'type': ['string', 'null']}}, 'additionalProperties': False}, 'description': 'Rule-of-thumb verdicts for the headline numbers'}, 'bookingUrl': {'type': 'string'}, 'calculator': {'type': 'string', 'description': 'Slug of the interactive calculator on rahuldsarker.co'}}, 'additionalProperties': False}
sdr_capacity_and_inbound_quota_planner
SDR Capacity & Inbound Quota Planner
Work out how much inbound volume an SDR team can properly cover per month, and how many reps you would need to fully cover current inbound. See the full version at https://rahuldsarker.co/calculators/sdr-capacity-and-inbound-quota-planner
読み取り専用 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['sdrs', 'sellingHoursPerDay', 'minutesPerTouch', 'touchesPerLead', 'workingDaysPerMonth', 'inboundLeadsPerMonth'], 'properties': {'sdrs': {'type': 'number', 'description': 'Number of SDRs on the team'}, 'currency': {'type': 'string', 'pattern': '^[A-Za-z]{3}$', 'description': 'ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.'}, 'touchesPerLead': {'type': 'number', 'description': 'Touches per lead in the cadence'}, 'minutesPerTouch': {'type': 'number', 'description': 'Minutes required per quality touch'}, 'sellingHoursPerDay': {'type': 'number', 'description': 'Selling hours per day, per rep, after meetings/admin/breaks'}, 'workingDaysPerMonth': {'type': 'number', 'description': 'Working days per month'}, 'inboundLeadsPerMonth': {'type': 'number', 'description': 'Inbound leads per month'}}}
出力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['kind', 'tool', 'title', 'calculator', 'url', 'bookingUrl', 'currency', 'compact', 'inputs', 'metrics', 'notes', 'benchmarks'], 'properties': {'url': {'type': 'string'}, 'kind': {'type': 'string', 'const': 'calculator'}, 'tool': {'type': 'string', 'description': 'The calculator tool that produced this result'}, 'notes': {'type': 'array', 'items': {'type': 'string'}}, 'title': {'type': 'string'}, 'inputs': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'compact': {'type': 'boolean'}, 'metrics': {'type': 'array', 'items': {'type': 'object', 'required': ['label', 'value', 'unit', 'display'], 'properties': {'unit': {'anyOf': [{'enum': ['currency', 'x', '%', 'months'], 'type': 'string'}, {'type': 'null'}]}, 'label': {'type': 'string'}, 'value': {'type': ['number', 'null']}, 'display': {'type': 'string'}}, 'additionalProperties': False}, 'description': 'Every "Label: value" line of the result; value is the first number on the line'}, 'currency': {'type': ['string', 'null']}, 'benchmarks': {'type': 'array', 'items': {'type': 'object', 'required': ['metric', 'name', 'value', 'display', 'band', 'tone', 'read', 'target', 'segment', 'source'], 'properties': {'band': {'type': 'string'}, 'name': {'type': 'string'}, 'read': {'type': 'string'}, 'tone': {'enum': ['good', 'ok', 'warn', 'bad'], 'type': 'string'}, 'value': {'type': 'number'}, 'metric': {'type': 'string'}, 'source': {'type': 'string'}, 'target': {'type': 'string'}, 'display': {'type': 'string'}, 'segment': {'type': ['string', 'null']}}, 'additionalProperties': False}, 'description': 'Rule-of-thumb verdicts for the headline numbers'}, 'bookingUrl': {'type': 'string'}, 'calculator': {'type': 'string', 'description': 'Slug of the interactive calculator on rahuldsarker.co'}}, 'additionalProperties': False}
search_content
Search Rahul D Sarker's articles, guides and case studies
Search rahuldsarker.co for articles, long-form guides and client case studies on fractional CMO work, revenue operations, attribution, server-side tracking, performance marketing, CRM and AI marketing. Returns titles, summaries and links to cite. Use read_content to get the full text of a result.
読み取り専用 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['query'], 'properties': {'type': {'enum': ['article', 'guide', 'case_study'], 'type': 'string', 'description': 'Only return one kind of content'}, 'limit': {'type': 'integer', 'maximum': 10, 'minimum': 1, 'description': 'How many results, 1 to 10 (default 5)'}, 'query': {'type': 'string', 'maxLength': 200, 'minLength': 2, 'description': 'What to look for, in plain words, e.g. "server-side CAPI signal loss" or "RevOps for Series A SaaS"'}}}
seasonal_ad_cpm_predictor
Seasonal Ad CPM Predictor
Project CPM and reach impact for a given season (back-to-school, Black Friday, Q4, January) from a baseline CPM. See the full version at https://rahuldsarker.co/calculators/seasonal-ad-cpm-predictor
読み取り専用 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['baseCpm', 'monthlyBudget', 'season'], 'properties': {'season': {'enum': ['normal', 'backToSchool', 'blackFriday', 'q4', 'january'], 'type': 'string', 'description': 'Season: normal (baseline), backToSchool (Aug-Sep), blackFriday (BFCM peak), q4 (Nov-Dec holiday), january (post-holiday reset)'}, 'baseCpm': {'type': 'number', 'description': 'Baseline CPM'}, 'currency': {'type': 'string', 'pattern': '^[A-Za-z]{3}$', 'description': 'ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.'}, 'monthlyBudget': {'type': 'number', 'description': 'Monthly budget'}}}
出力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['kind', 'tool', 'title', 'calculator', 'url', 'bookingUrl', 'currency', 'compact', 'inputs', 'metrics', 'notes', 'benchmarks'], 'properties': {'url': {'type': 'string'}, 'kind': {'type': 'string', 'const': 'calculator'}, 'tool': {'type': 'string', 'description': 'The calculator tool that produced this result'}, 'notes': {'type': 'array', 'items': {'type': 'string'}}, 'title': {'type': 'string'}, 'inputs': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'compact': {'type': 'boolean'}, 'metrics': {'type': 'array', 'items': {'type': 'object', 'required': ['label', 'value', 'unit', 'display'], 'properties': {'unit': {'anyOf': [{'enum': ['currency', 'x', '%', 'months'], 'type': 'string'}, {'type': 'null'}]}, 'label': {'type': 'string'}, 'value': {'type': ['number', 'null']}, 'display': {'type': 'string'}}, 'additionalProperties': False}, 'description': 'Every "Label: value" line of the result; value is the first number on the line'}, 'currency': {'type': ['string', 'null']}, 'benchmarks': {'type': 'array', 'items': {'type': 'object', 'required': ['metric', 'name', 'value', 'display', 'band', 'tone', 'read', 'target', 'segment', 'source'], 'properties': {'band': {'type': 'string'}, 'name': {'type': 'string'}, 'read': {'type': 'string'}, 'tone': {'enum': ['good', 'ok', 'warn', 'bad'], 'type': 'string'}, 'value': {'type': 'number'}, 'metric': {'type': 'string'}, 'source': {'type': 'string'}, 'target': {'type': 'string'}, 'display': {'type': 'string'}, 'segment': {'type': ['string', 'null']}}, 'additionalProperties': False}, 'description': 'Rule-of-thumb verdicts for the headline numbers'}, 'bookingUrl': {'type': 'string'}, 'calculator': {'type': 'string', 'description': 'Slug of the interactive calculator on rahuldsarker.co'}}, 'additionalProperties': False}
seat_utilization_risk_assessor
Seat Utilization Risk Assessor
Estimate renewal ARR at risk from low seat utilization on a subscription contract. See the full version at https://rahuldsarker.co/calculators/seat-utilization-risk-assessor
読み取り専用 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['seatsPurchased', 'seatsActive', 'renewalArr'], 'properties': {'currency': {'type': 'string', 'pattern': '^[A-Za-z]{3}$', 'description': 'ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.'}, 'renewalArr': {'type': 'number', 'description': 'Renewal ARR at stake for this account'}, 'seatsActive': {'type': 'number', 'description': 'Seats actively used (e.g. active in the last 30 days)'}, 'seatsPurchased': {'type': 'number', 'description': 'Seats purchased'}}}
出力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['kind', 'tool', 'title', 'calculator', 'url', 'bookingUrl', 'currency', 'compact', 'inputs', 'metrics', 'notes', 'benchmarks'], 'properties': {'url': {'type': 'string'}, 'kind': {'type': 'string', 'const': 'calculator'}, 'tool': {'type': 'string', 'description': 'The calculator tool that produced this result'}, 'notes': {'type': 'array', 'items': {'type': 'string'}}, 'title': {'type': 'string'}, 'inputs': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'compact': {'type': 'boolean'}, 'metrics': {'type': 'array', 'items': {'type': 'object', 'required': ['label', 'value', 'unit', 'display'], 'properties': {'unit': {'anyOf': [{'enum': ['currency', 'x', '%', 'months'], 'type': 'string'}, {'type': 'null'}]}, 'label': {'type': 'string'}, 'value': {'type': ['number', 'null']}, 'display': {'type': 'string'}}, 'additionalProperties': False}, 'description': 'Every "Label: value" line of the result; value is the first number on the line'}, 'currency': {'type': ['string', 'null']}, 'benchmarks': {'type': 'array', 'items': {'type': 'object', 'required': ['metric', 'name', 'value', 'display', 'band', 'tone', 'read', 'target', 'segment', 'source'], 'properties': {'band': {'type': 'string'}, 'name': {'type': 'string'}, 'read': {'type': 'string'}, 'tone': {'enum': ['good', 'ok', 'warn', 'bad'], 'type': 'string'}, 'value': {'type': 'number'}, 'metric': {'type': 'string'}, 'source': {'type': 'string'}, 'target': {'type': 'string'}, 'display': {'type': 'string'}, 'segment': {'type': ['string', 'null']}}, 'additionalProperties': False}, 'description': 'Rule-of-thumb verdicts for the headline numbers'}, 'bookingUrl': {'type': 'string'}, 'calculator': {'type': 'string', 'description': 'Slug of the interactive calculator on rahuldsarker.co'}}, 'additionalProperties': False}
social_proof_strength_auditor
Social Proof Strength Auditor
Score the persuasive strength of testimonials and proof elements across six weighted criteria into a 0-100 credibility score. See the full version at https://rahuldsarker.co/calculators/social-proof-strength-auditor
読み取り専用 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['namedAndAttributed', 'specificQuantifiedResults', 'photosLogosOrVideo', 'matchesVisitorSegment', 'placedNearDecisionPoints', 'enoughVolume'], 'properties': {'currency': {'type': 'string', 'pattern': '^[A-Za-z]{3}$', 'description': 'ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.'}, 'enoughVolume': {'enum': ['yes', 'partial', 'no'], 'type': 'string', 'description': 'Enough volume to feel credible (weight 10)'}, 'namedAndAttributed': {'enum': ['yes', 'partial', 'no'], 'type': 'string', 'description': 'Testimonials are named & attributed to real people (weight 20)'}, 'photosLogosOrVideo': {'enum': ['yes', 'partial', 'no'], 'type': 'string', 'description': 'Photos, logos or video, not just text (weight 15)'}, 'matchesVisitorSegment': {'enum': ['yes', 'partial', 'no'], 'type': 'string', 'description': "Proof matches the visitor's segment (weight 15)"}, 'placedNearDecisionPoints': {'enum': ['yes', 'partial', 'no'], 'type': 'string', 'description': 'Placed near decision points / CTAs (weight 15)'}, 'specificQuantifiedResults': {'enum': ['yes', 'partial', 'no'], 'type': 'string', 'description': 'They cite specific, quantified results (weight 25)'}}}
出力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['kind', 'tool', 'title', 'calculator', 'url', 'bookingUrl', 'currency', 'compact', 'inputs', 'metrics', 'notes', 'benchmarks'], 'properties': {'url': {'type': 'string'}, 'kind': {'type': 'string', 'const': 'calculator'}, 'tool': {'type': 'string', 'description': 'The calculator tool that produced this result'}, 'notes': {'type': 'array', 'items': {'type': 'string'}}, 'title': {'type': 'string'}, 'inputs': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'compact': {'type': 'boolean'}, 'metrics': {'type': 'array', 'items': {'type': 'object', 'required': ['label', 'value', 'unit', 'display'], 'properties': {'unit': {'anyOf': [{'enum': ['currency', 'x', '%', 'months'], 'type': 'string'}, {'type': 'null'}]}, 'label': {'type': 'string'}, 'value': {'type': ['number', 'null']}, 'display': {'type': 'string'}}, 'additionalProperties': False}, 'description': 'Every "Label: value" line of the result; value is the first number on the line'}, 'currency': {'type': ['string', 'null']}, 'benchmarks': {'type': 'array', 'items': {'type': 'object', 'required': ['metric', 'name', 'value', 'display', 'band', 'tone', 'read', 'target', 'segment', 'source'], 'properties': {'band': {'type': 'string'}, 'name': {'type': 'string'}, 'read': {'type': 'string'}, 'tone': {'enum': ['good', 'ok', 'warn', 'bad'], 'type': 'string'}, 'value': {'type': 'number'}, 'metric': {'type': 'string'}, 'source': {'type': 'string'}, 'target': {'type': 'string'}, 'display': {'type': 'string'}, 'segment': {'type': ['string', 'null']}}, 'additionalProperties': False}, 'description': 'Rule-of-thumb verdicts for the headline numbers'}, 'bookingUrl': {'type': 'string'}, 'calculator': {'type': 'string', 'description': 'Slug of the interactive calculator on rahuldsarker.co'}}, 'additionalProperties': False}
strategic_pivot_risk_grader
Strategic Pivot Risk Grader
Grade the risk of pivoting upmarket to enterprise across sales motion, pricing/packaging, cash buffer, product compliance, and team experience. See the full version at https://rahuldsarker.co/calculators/strategic-pivot-risk-grader
読み取り専用 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['motion', 'pricing', 'cash', 'product', 'team'], 'properties': {'cash': {'enum': ['ready', 'partial', 'no'], 'type': 'string', 'description': 'Cash buffer for a longer sales cycle: ready/partial/no. Weight 20'}, 'team': {'enum': ['ready', 'partial', 'no'], 'type': 'string', 'description': 'Team has enterprise experience: ready/partial/no. Weight 15'}, 'motion': {'enum': ['ready', 'partial', 'no'], 'type': 'string', 'description': 'Sales motion built for enterprise (AEs, SEs, ABM): ready/partial/no. Weight 25'}, 'pricing': {'enum': ['ready', 'partial', 'no'], 'type': 'string', 'description': 'Pricing & packaging fit larger contracts: ready/partial/no. Weight 15'}, 'product': {'enum': ['ready', 'partial', 'no'], 'type': 'string', 'description': 'Product security / compliance (SOC2, SSO): ready/partial/no. Weight 25'}, 'currency': {'type': 'string', 'pattern': '^[A-Za-z]{3}$', 'description': 'ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.'}}}
出力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['kind', 'tool', 'title', 'calculator', 'url', 'bookingUrl', 'currency', 'compact', 'inputs', 'metrics', 'notes', 'benchmarks'], 'properties': {'url': {'type': 'string'}, 'kind': {'type': 'string', 'const': 'calculator'}, 'tool': {'type': 'string', 'description': 'The calculator tool that produced this result'}, 'notes': {'type': 'array', 'items': {'type': 'string'}}, 'title': {'type': 'string'}, 'inputs': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'compact': {'type': 'boolean'}, 'metrics': {'type': 'array', 'items': {'type': 'object', 'required': ['label', 'value', 'unit', 'display'], 'properties': {'unit': {'anyOf': [{'enum': ['currency', 'x', '%', 'months'], 'type': 'string'}, {'type': 'null'}]}, 'label': {'type': 'string'}, 'value': {'type': ['number', 'null']}, 'display': {'type': 'string'}}, 'additionalProperties': False}, 'description': 'Every "Label: value" line of the result; value is the first number on the line'}, 'currency': {'type': ['string', 'null']}, 'benchmarks': {'type': 'array', 'items': {'type': 'object', 'required': ['metric', 'name', 'value', 'display', 'band', 'tone', 'read', 'target', 'segment', 'source'], 'properties': {'band': {'type': 'string'}, 'name': {'type': 'string'}, 'read': {'type': 'string'}, 'tone': {'enum': ['good', 'ok', 'warn', 'bad'], 'type': 'string'}, 'value': {'type': 'number'}, 'metric': {'type': 'string'}, 'source': {'type': 'string'}, 'target': {'type': 'string'}, 'display': {'type': 'string'}, 'segment': {'type': ['string', 'null']}}, 'additionalProperties': False}, 'description': 'Rule-of-thumb verdicts for the headline numbers'}, 'bookingUrl': {'type': 'string'}, 'calculator': {'type': 'string', 'description': 'Slug of the interactive calculator on rahuldsarker.co'}}, 'additionalProperties': False}
tech_stack_duplication_inspector
Tech Stack Duplication Inspector
Estimate the monthly and annual SaaS spend wasted on overlapping tools, from total spend, tool count, and estimated feature overlap. See the full version at https://rahuldsarker.co/calculators/tech-stack-duplication-inspector
読み取り専用 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['monthlySpend', 'toolCount', 'overlapPct'], 'properties': {'currency': {'type': 'string', 'pattern': '^[A-Za-z]{3}$', 'description': 'ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.'}, 'toolCount': {'type': 'number', 'description': 'Number of tools in the stack'}, 'overlapPct': {'type': 'number', 'description': 'Estimated share of spend on redundant/overlapping capabilities, as a percentage'}, 'monthlySpend': {'type': 'number', 'description': 'Total SaaS spend per month'}}}
出力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['kind', 'tool', 'title', 'calculator', 'url', 'bookingUrl', 'currency', 'compact', 'inputs', 'metrics', 'notes', 'benchmarks'], 'properties': {'url': {'type': 'string'}, 'kind': {'type': 'string', 'const': 'calculator'}, 'tool': {'type': 'string', 'description': 'The calculator tool that produced this result'}, 'notes': {'type': 'array', 'items': {'type': 'string'}}, 'title': {'type': 'string'}, 'inputs': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'compact': {'type': 'boolean'}, 'metrics': {'type': 'array', 'items': {'type': 'object', 'required': ['label', 'value', 'unit', 'display'], 'properties': {'unit': {'anyOf': [{'enum': ['currency', 'x', '%', 'months'], 'type': 'string'}, {'type': 'null'}]}, 'label': {'type': 'string'}, 'value': {'type': ['number', 'null']}, 'display': {'type': 'string'}}, 'additionalProperties': False}, 'description': 'Every "Label: value" line of the result; value is the first number on the line'}, 'currency': {'type': ['string', 'null']}, 'benchmarks': {'type': 'array', 'items': {'type': 'object', 'required': ['metric', 'name', 'value', 'display', 'band', 'tone', 'read', 'target', 'segment', 'source'], 'properties': {'band': {'type': 'string'}, 'name': {'type': 'string'}, 'read': {'type': 'string'}, 'tone': {'enum': ['good', 'ok', 'warn', 'bad'], 'type': 'string'}, 'value': {'type': 'number'}, 'metric': {'type': 'string'}, 'source': {'type': 'string'}, 'target': {'type': 'string'}, 'display': {'type': 'string'}, 'segment': {'type': ['string', 'null']}}, 'additionalProperties': False}, 'description': 'Rule-of-thumb verdicts for the headline numbers'}, 'bookingUrl': {'type': 'string'}, 'calculator': {'type': 'string', 'description': 'Slug of the interactive calculator on rahuldsarker.co'}}, 'additionalProperties': False}
thank_you_page_revenue_maximizer
Thank-You Page Revenue Maximizer
Estimate the extra revenue from adding a secondary action (referral, upsell, booking, or community) on a thank-you page, using typical take rates. See the full version at https://rahuldsarker.co/calculators/thank-you-page-revenue-maximizer
読み取り専用 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['conversionsPerMonth', 'action', 'valuePerSecondaryAction'], 'properties': {'action': {'enum': ['referral', 'upsell', 'booking', 'community'], 'type': 'string', 'description': 'Secondary action to add: referral ask (~8%), order-bump/upsell (~12%), book a call/demo (~18%), or join community/follow (~22%)'}, 'currency': {'type': 'string', 'pattern': '^[A-Za-z]{3}$', 'description': 'ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.'}, 'conversionsPerMonth': {'type': 'number', 'description': 'Conversions per month (thank-you page views)'}, 'takeRatePctOverride': {'type': 'number', 'description': 'Custom take rate override, as a percentage; if omitted, uses the typical rate for the chosen action'}, 'valuePerSecondaryAction': {'type': 'number', 'description': 'Value per secondary action, e.g. avg. value of a referral, upsell, or booked call'}}}
出力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['kind', 'tool', 'title', 'calculator', 'url', 'bookingUrl', 'currency', 'compact', 'inputs', 'metrics', 'notes', 'benchmarks'], 'properties': {'url': {'type': 'string'}, 'kind': {'type': 'string', 'const': 'calculator'}, 'tool': {'type': 'string', 'description': 'The calculator tool that produced this result'}, 'notes': {'type': 'array', 'items': {'type': 'string'}}, 'title': {'type': 'string'}, 'inputs': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'compact': {'type': 'boolean'}, 'metrics': {'type': 'array', 'items': {'type': 'object', 'required': ['label', 'value', 'unit', 'display'], 'properties': {'unit': {'anyOf': [{'enum': ['currency', 'x', '%', 'months'], 'type': 'string'}, {'type': 'null'}]}, 'label': {'type': 'string'}, 'value': {'type': ['number', 'null']}, 'display': {'type': 'string'}}, 'additionalProperties': False}, 'description': 'Every "Label: value" line of the result; value is the first number on the line'}, 'currency': {'type': ['string', 'null']}, 'benchmarks': {'type': 'array', 'items': {'type': 'object', 'required': ['metric', 'name', 'value', 'display', 'band', 'tone', 'read', 'target', 'segment', 'source'], 'properties': {'band': {'type': 'string'}, 'name': {'type': 'string'}, 'read': {'type': 'string'}, 'tone': {'enum': ['good', 'ok', 'warn', 'bad'], 'type': 'string'}, 'value': {'type': 'number'}, 'metric': {'type': 'string'}, 'source': {'type': 'string'}, 'target': {'type': 'string'}, 'display': {'type': 'string'}, 'segment': {'type': ['string', 'null']}}, 'additionalProperties': False}, 'description': 'Rule-of-thumb verdicts for the headline numbers'}, 'bookingUrl': {'type': 'string'}, 'calculator': {'type': 'string', 'description': 'Slug of the interactive calculator on rahuldsarker.co'}}, 'additionalProperties': False}
total_addressable_market_estimator
Total Addressable Market (TAM/SAM/SOM) Estimator
Build a bottom-up TAM, SAM, and SOM from company counts, reachable share, ACV, and obtainable market share. See the full version at https://rahuldsarker.co/calculators/total-addressable-market-estimator
読み取り専用 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['companies', 'reachablePct', 'acv', 'targetSharePct'], 'properties': {'acv': {'type': 'number', 'description': 'Average contract value'}, 'currency': {'type': 'string', 'pattern': '^[A-Za-z]{3}$', 'description': 'ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.'}, 'companies': {'type': 'number', 'description': 'Total target companies that fit the category'}, 'reachablePct': {'type': 'number', 'description': 'Share of those companies realistically reachable, as a percentage'}, 'targetSharePct': {'type': 'number', 'description': 'Obtainable share of the reachable market (SAM) you can win near-term, as a percentage'}}}
出力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['kind', 'tool', 'title', 'calculator', 'url', 'bookingUrl', 'currency', 'compact', 'inputs', 'metrics', 'notes', 'benchmarks'], 'properties': {'url': {'type': 'string'}, 'kind': {'type': 'string', 'const': 'calculator'}, 'tool': {'type': 'string', 'description': 'The calculator tool that produced this result'}, 'notes': {'type': 'array', 'items': {'type': 'string'}}, 'title': {'type': 'string'}, 'inputs': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'compact': {'type': 'boolean'}, 'metrics': {'type': 'array', 'items': {'type': 'object', 'required': ['label', 'value', 'unit', 'display'], 'properties': {'unit': {'anyOf': [{'enum': ['currency', 'x', '%', 'months'], 'type': 'string'}, {'type': 'null'}]}, 'label': {'type': 'string'}, 'value': {'type': ['number', 'null']}, 'display': {'type': 'string'}}, 'additionalProperties': False}, 'description': 'Every "Label: value" line of the result; value is the first number on the line'}, 'currency': {'type': ['string', 'null']}, 'benchmarks': {'type': 'array', 'items': {'type': 'object', 'required': ['metric', 'name', 'value', 'display', 'band', 'tone', 'read', 'target', 'segment', 'source'], 'properties': {'band': {'type': 'string'}, 'name': {'type': 'string'}, 'read': {'type': 'string'}, 'tone': {'enum': ['good', 'ok', 'warn', 'bad'], 'type': 'string'}, 'value': {'type': 'number'}, 'metric': {'type': 'string'}, 'source': {'type': 'string'}, 'target': {'type': 'string'}, 'display': {'type': 'string'}, 'segment': {'type': ['string', 'null']}}, 'additionalProperties': False}, 'description': 'Rule-of-thumb verdicts for the headline numbers'}, 'bookingUrl': {'type': 'string'}, 'calculator': {'type': 'string', 'description': 'Slug of the interactive calculator on rahuldsarker.co'}}, 'additionalProperties': False}
trust_badge_roi_estimator
Trust Badge ROI Estimator
Estimate the monthly and annual revenue lift from adding trust/security badges near a conversion point. See the full version at https://rahuldsarker.co/calculators/trust-badge-roi-estimator
読み取り専用 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['monthlyVisitors', 'currentConversionRatePct', 'valuePerConversion'], 'properties': {'currency': {'type': 'string', 'pattern': '^[A-Za-z]{3}$', 'description': 'ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.'}, 'expectedLiftPct': {'type': 'number', 'description': 'Expected relative lift from trust badges, as a percentage, defaults to 8 (typically 3-15%)'}, 'monthlyVisitors': {'type': 'number', 'description': 'Monthly visitors to the form/checkout'}, 'valuePerConversion': {'type': 'number', 'description': 'Value per conversion'}, 'currentConversionRatePct': {'type': 'number', 'description': 'Current conversion rate, as a percentage'}}}
出力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['kind', 'tool', 'title', 'calculator', 'url', 'bookingUrl', 'currency', 'compact', 'inputs', 'metrics', 'notes', 'benchmarks'], 'properties': {'url': {'type': 'string'}, 'kind': {'type': 'string', 'const': 'calculator'}, 'tool': {'type': 'string', 'description': 'The calculator tool that produced this result'}, 'notes': {'type': 'array', 'items': {'type': 'string'}}, 'title': {'type': 'string'}, 'inputs': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'compact': {'type': 'boolean'}, 'metrics': {'type': 'array', 'items': {'type': 'object', 'required': ['label', 'value', 'unit', 'display'], 'properties': {'unit': {'anyOf': [{'enum': ['currency', 'x', '%', 'months'], 'type': 'string'}, {'type': 'null'}]}, 'label': {'type': 'string'}, 'value': {'type': ['number', 'null']}, 'display': {'type': 'string'}}, 'additionalProperties': False}, 'description': 'Every "Label: value" line of the result; value is the first number on the line'}, 'currency': {'type': ['string', 'null']}, 'benchmarks': {'type': 'array', 'items': {'type': 'object', 'required': ['metric', 'name', 'value', 'display', 'band', 'tone', 'read', 'target', 'segment', 'source'], 'properties': {'band': {'type': 'string'}, 'name': {'type': 'string'}, 'read': {'type': 'string'}, 'tone': {'enum': ['good', 'ok', 'warn', 'bad'], 'type': 'string'}, 'value': {'type': 'number'}, 'metric': {'type': 'string'}, 'source': {'type': 'string'}, 'target': {'type': 'string'}, 'display': {'type': 'string'}, 'segment': {'type': ['string', 'null']}}, 'additionalProperties': False}, 'description': 'Rule-of-thumb verdicts for the headline numbers'}, 'bookingUrl': {'type': 'string'}, 'calculator': {'type': 'string', 'description': 'Slug of the interactive calculator on rahuldsarker.co'}}, 'additionalProperties': False}
typography_legibility_grader
Typography Legibility Grader
Score body copy legibility on font size, line height, and line length against ideal bands, into a 0-100 score. See the full version at https://rahuldsarker.co/calculators/typography-legibility-grader
読み取り専用 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['fontSizePx', 'lineHeight', 'lineLengthChars'], 'properties': {'currency': {'type': 'string', 'pattern': '^[A-Za-z]{3}$', 'description': 'ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.'}, 'fontSizePx': {'type': 'number', 'description': 'Body font size in pixels'}, 'lineHeight': {'type': 'number', 'description': 'Line height as a multiplier of font size, e.g. 1.5'}, 'lineLengthChars': {'type': 'number', 'description': 'Line length in characters per line'}}}
出力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['kind', 'tool', 'title', 'calculator', 'url', 'bookingUrl', 'currency', 'compact', 'inputs', 'metrics', 'notes', 'benchmarks'], 'properties': {'url': {'type': 'string'}, 'kind': {'type': 'string', 'const': 'calculator'}, 'tool': {'type': 'string', 'description': 'The calculator tool that produced this result'}, 'notes': {'type': 'array', 'items': {'type': 'string'}}, 'title': {'type': 'string'}, 'inputs': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'compact': {'type': 'boolean'}, 'metrics': {'type': 'array', 'items': {'type': 'object', 'required': ['label', 'value', 'unit', 'display'], 'properties': {'unit': {'anyOf': [{'enum': ['currency', 'x', '%', 'months'], 'type': 'string'}, {'type': 'null'}]}, 'label': {'type': 'string'}, 'value': {'type': ['number', 'null']}, 'display': {'type': 'string'}}, 'additionalProperties': False}, 'description': 'Every "Label: value" line of the result; value is the first number on the line'}, 'currency': {'type': ['string', 'null']}, 'benchmarks': {'type': 'array', 'items': {'type': 'object', 'required': ['metric', 'name', 'value', 'display', 'band', 'tone', 'read', 'target', 'segment', 'source'], 'properties': {'band': {'type': 'string'}, 'name': {'type': 'string'}, 'read': {'type': 'string'}, 'tone': {'enum': ['good', 'ok', 'warn', 'bad'], 'type': 'string'}, 'value': {'type': 'number'}, 'metric': {'type': 'string'}, 'source': {'type': 'string'}, 'target': {'type': 'string'}, 'display': {'type': 'string'}, 'segment': {'type': ['string', 'null']}}, 'additionalProperties': False}, 'description': 'Rule-of-thumb verdicts for the headline numbers'}, 'bookingUrl': {'type': 'string'}, 'calculator': {'type': 'string', 'description': 'Slug of the interactive calculator on rahuldsarker.co'}}, 'additionalProperties': False}
utm_generator_and_validation_helper
UTM Generator & Validation Helper
Generate a cleaned, encoded UTM-tagged URL from source, medium, campaign, term, and content, and flag common tagging errors. See the full version at https://rahuldsarker.co/calculators/utm-generator-and-validation-helper
読み取り専用 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['baseUrl', 'source', 'medium', 'campaign'], 'properties': {'term': {'type': 'string', 'description': 'utm_term (paid keyword), optional'}, 'medium': {'type': 'string', 'description': 'utm_medium, e.g. cpc, paid-social'}, 'source': {'type': 'string', 'description': 'utm_source, e.g. google, linkedin'}, 'baseUrl': {'type': 'string', 'description': 'Base URL to tag, e.g. https://example.com/pricing'}, 'content': {'type': 'string', 'description': 'utm_content (creative / A-B variant), optional'}, 'campaign': {'type': 'string', 'description': 'utm_campaign, e.g. q3-demo-push'}, 'currency': {'type': 'string', 'pattern': '^[A-Za-z]{3}$', 'description': 'ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.'}}}
出力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['kind', 'tool', 'title', 'calculator', 'url', 'bookingUrl', 'currency', 'compact', 'inputs', 'metrics', 'notes', 'benchmarks'], 'properties': {'url': {'type': 'string'}, 'kind': {'type': 'string', 'const': 'calculator'}, 'tool': {'type': 'string', 'description': 'The calculator tool that produced this result'}, 'notes': {'type': 'array', 'items': {'type': 'string'}}, 'title': {'type': 'string'}, 'inputs': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'compact': {'type': 'boolean'}, 'metrics': {'type': 'array', 'items': {'type': 'object', 'required': ['label', 'value', 'unit', 'display'], 'properties': {'unit': {'anyOf': [{'enum': ['currency', 'x', '%', 'months'], 'type': 'string'}, {'type': 'null'}]}, 'label': {'type': 'string'}, 'value': {'type': ['number', 'null']}, 'display': {'type': 'string'}}, 'additionalProperties': False}, 'description': 'Every "Label: value" line of the result; value is the first number on the line'}, 'currency': {'type': ['string', 'null']}, 'benchmarks': {'type': 'array', 'items': {'type': 'object', 'required': ['metric', 'name', 'value', 'display', 'band', 'tone', 'read', 'target', 'segment', 'source'], 'properties': {'band': {'type': 'string'}, 'name': {'type': 'string'}, 'read': {'type': 'string'}, 'tone': {'enum': ['good', 'ok', 'warn', 'bad'], 'type': 'string'}, 'value': {'type': 'number'}, 'metric': {'type': 'string'}, 'source': {'type': 'string'}, 'target': {'type': 'string'}, 'display': {'type': 'string'}, 'segment': {'type': ['string', 'null']}}, 'additionalProperties': False}, 'description': 'Rule-of-thumb verdicts for the headline numbers'}, 'bookingUrl': {'type': 'string'}, 'calculator': {'type': 'string', 'description': 'Slug of the interactive calculator on rahuldsarker.co'}}, 'additionalProperties': False}
ux_pattern_anti_pattern_checker
UX Pattern Anti-Pattern Checker
Count how many of 8 known dark patterns are present in a user experience and turn that into an integrity score. See the full version at https://rahuldsarker.co/calculators/ux-pattern-anti-pattern-checker
読み取り専用 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['forcedContinuity', 'hiddenCostsLate', 'confirmshaming', 'disguisedAds', 'hardCancellation', 'fakeUrgency', 'preselectedAddOns', 'trickWording'], 'properties': {'currency': {'type': 'string', 'pattern': '^[A-Za-z]{3}$', 'description': 'ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.'}, 'fakeUrgency': {'type': 'boolean', 'description': 'Fake urgency or countdown timers'}, 'disguisedAds': {'type': 'boolean', 'description': 'Disguised ads or fake system messages'}, 'trickWording': {'type': 'boolean', 'description': 'Trick wording on buttons / consent'}, 'confirmshaming': {'type': 'boolean', 'description': 'Confirmshaming, e.g. "No thanks, I hate saving money"'}, 'hiddenCostsLate': {'type': 'boolean', 'description': 'Hidden costs revealed late in checkout'}, 'forcedContinuity': {'type': 'boolean', 'description': 'Forced continuity (auto-renew, hard to spot)'}, 'hardCancellation': {'type': 'boolean', 'description': 'Deliberately hard cancellation / downgrade'}, 'preselectedAddOns': {'type': 'boolean', 'description': 'Pre-selected paid add-ons / opt-ins'}}}
出力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['kind', 'tool', 'title', 'calculator', 'url', 'bookingUrl', 'currency', 'compact', 'inputs', 'metrics', 'notes', 'benchmarks'], 'properties': {'url': {'type': 'string'}, 'kind': {'type': 'string', 'const': 'calculator'}, 'tool': {'type': 'string', 'description': 'The calculator tool that produced this result'}, 'notes': {'type': 'array', 'items': {'type': 'string'}}, 'title': {'type': 'string'}, 'inputs': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'compact': {'type': 'boolean'}, 'metrics': {'type': 'array', 'items': {'type': 'object', 'required': ['label', 'value', 'unit', 'display'], 'properties': {'unit': {'anyOf': [{'enum': ['currency', 'x', '%', 'months'], 'type': 'string'}, {'type': 'null'}]}, 'label': {'type': 'string'}, 'value': {'type': ['number', 'null']}, 'display': {'type': 'string'}}, 'additionalProperties': False}, 'description': 'Every "Label: value" line of the result; value is the first number on the line'}, 'currency': {'type': ['string', 'null']}, 'benchmarks': {'type': 'array', 'items': {'type': 'object', 'required': ['metric', 'name', 'value', 'display', 'band', 'tone', 'read', 'target', 'segment', 'source'], 'properties': {'band': {'type': 'string'}, 'name': {'type': 'string'}, 'read': {'type': 'string'}, 'tone': {'enum': ['good', 'ok', 'warn', 'bad'], 'type': 'string'}, 'value': {'type': 'number'}, 'metric': {'type': 'string'}, 'source': {'type': 'string'}, 'target': {'type': 'string'}, 'display': {'type': 'string'}, 'segment': {'type': ['string', 'null']}}, 'additionalProperties': False}, 'description': 'Rule-of-thumb verdicts for the headline numbers'}, 'bookingUrl': {'type': 'string'}, 'calculator': {'type': 'string', 'description': 'Slug of the interactive calculator on rahuldsarker.co'}}, 'additionalProperties': False}
value_prop_strength_grader
Value Proposition Strength Grader
Score a value proposition on clarity, specificity, differentiation, outcome focus, and pain relevance into a 0-100 score. See the full version at https://rahuldsarker.co/calculators/value-prop-strength-grader
読み取り専用 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['instantlyClear', 'specificNotGeneric', 'differentiatedFromCompetitors', 'focusedOnOutcome', 'speaksToRealPain'], 'properties': {'currency': {'type': 'string', 'pattern': '^[A-Za-z]{3}$', 'description': 'ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.'}, 'instantlyClear': {'enum': ['yes', 'partial', 'no'], 'type': 'string', 'description': 'Instantly clear, no second read needed (weight 25)'}, 'focusedOnOutcome': {'enum': ['yes', 'partial', 'no'], 'type': 'string', 'description': "Focused on the customer's outcome (weight 20)"}, 'speaksToRealPain': {'enum': ['yes', 'partial', 'no'], 'type': 'string', 'description': 'Speaks to a real, felt pain (weight 15)'}, 'specificNotGeneric': {'enum': ['yes', 'partial', 'no'], 'type': 'string', 'description': 'Specific, not generic (weight 20)'}, 'differentiatedFromCompetitors': {'enum': ['yes', 'partial', 'no'], 'type': 'string', 'description': 'Differentiated from competitors (weight 20)'}}}
出力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['kind', 'tool', 'title', 'calculator', 'url', 'bookingUrl', 'currency', 'compact', 'inputs', 'metrics', 'notes', 'benchmarks'], 'properties': {'url': {'type': 'string'}, 'kind': {'type': 'string', 'const': 'calculator'}, 'tool': {'type': 'string', 'description': 'The calculator tool that produced this result'}, 'notes': {'type': 'array', 'items': {'type': 'string'}}, 'title': {'type': 'string'}, 'inputs': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'compact': {'type': 'boolean'}, 'metrics': {'type': 'array', 'items': {'type': 'object', 'required': ['label', 'value', 'unit', 'display'], 'properties': {'unit': {'anyOf': [{'enum': ['currency', 'x', '%', 'months'], 'type': 'string'}, {'type': 'null'}]}, 'label': {'type': 'string'}, 'value': {'type': ['number', 'null']}, 'display': {'type': 'string'}}, 'additionalProperties': False}, 'description': 'Every "Label: value" line of the result; value is the first number on the line'}, 'currency': {'type': ['string', 'null']}, 'benchmarks': {'type': 'array', 'items': {'type': 'object', 'required': ['metric', 'name', 'value', 'display', 'band', 'tone', 'read', 'target', 'segment', 'source'], 'properties': {'band': {'type': 'string'}, 'name': {'type': 'string'}, 'read': {'type': 'string'}, 'tone': {'enum': ['good', 'ok', 'warn', 'bad'], 'type': 'string'}, 'value': {'type': 'number'}, 'metric': {'type': 'string'}, 'source': {'type': 'string'}, 'target': {'type': 'string'}, 'display': {'type': 'string'}, 'segment': {'type': ['string', 'null']}}, 'additionalProperties': False}, 'description': 'Rule-of-thumb verdicts for the headline numbers'}, 'bookingUrl': {'type': 'string'}, 'calculator': {'type': 'string', 'description': 'Slug of the interactive calculator on rahuldsarker.co'}}, 'additionalProperties': False}
video_conversion_modeler
Video Conversion Modeler
Model the pipeline and revenue a video drives from views, completion rate, and post-completion conversion rate. See the full version at https://rahuldsarker.co/calculators/video-conversion-modeler
読み取り専用 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['monthlyViews', 'completionRatePct', 'completerToConversionPct', 'dealValue'], 'properties': {'currency': {'type': 'string', 'pattern': '^[A-Za-z]{3}$', 'description': 'ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.'}, 'dealValue': {'type': 'number', 'description': 'Deal / conversion value'}, 'monthlyViews': {'type': 'number', 'description': 'Video views per month'}, 'completionRatePct': {'type': 'number', 'description': 'Completion rate, as a percentage: share who watch to the end'}, 'completerToConversionPct': {'type': 'number', 'description': 'Completer to conversion rate, as a percentage'}}}
出力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['kind', 'tool', 'title', 'calculator', 'url', 'bookingUrl', 'currency', 'compact', 'inputs', 'metrics', 'notes', 'benchmarks'], 'properties': {'url': {'type': 'string'}, 'kind': {'type': 'string', 'const': 'calculator'}, 'tool': {'type': 'string', 'description': 'The calculator tool that produced this result'}, 'notes': {'type': 'array', 'items': {'type': 'string'}}, 'title': {'type': 'string'}, 'inputs': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'compact': {'type': 'boolean'}, 'metrics': {'type': 'array', 'items': {'type': 'object', 'required': ['label', 'value', 'unit', 'display'], 'properties': {'unit': {'anyOf': [{'enum': ['currency', 'x', '%', 'months'], 'type': 'string'}, {'type': 'null'}]}, 'label': {'type': 'string'}, 'value': {'type': ['number', 'null']}, 'display': {'type': 'string'}}, 'additionalProperties': False}, 'description': 'Every "Label: value" line of the result; value is the first number on the line'}, 'currency': {'type': ['string', 'null']}, 'benchmarks': {'type': 'array', 'items': {'type': 'object', 'required': ['metric', 'name', 'value', 'display', 'band', 'tone', 'read', 'target', 'segment', 'source'], 'properties': {'band': {'type': 'string'}, 'name': {'type': 'string'}, 'read': {'type': 'string'}, 'tone': {'enum': ['good', 'ok', 'warn', 'bad'], 'type': 'string'}, 'value': {'type': 'number'}, 'metric': {'type': 'string'}, 'source': {'type': 'string'}, 'target': {'type': 'string'}, 'display': {'type': 'string'}, 'segment': {'type': ['string', 'null']}}, 'additionalProperties': False}, 'description': 'Rule-of-thumb verdicts for the headline numbers'}, 'bookingUrl': {'type': 'string'}, 'calculator': {'type': 'string', 'description': 'Slug of the interactive calculator on rahuldsarker.co'}}, 'additionalProperties': False}
追加
request_callback
2026年10月2日2:40
追加
benchmark_metric
2026年10月2日2:40
追加
run_calculator
2026年10月2日2:40
追加
find_calculator
2026年10月2日2:40
変更
marketing_budget
2026年10月2日2:40
変更
net_promoter_score_impact_modeler
2026年10月2日2:40
変更
deferred_revenue_amortization_planner
2026年10月2日2:40
変更
customer_success_capacity_planner
2026年10月2日2:40
変更
b2b_implementation_delay_cost_calculator
2026年10月2日2:40
変更
product_usage_frequency_grader
2026年10月2日2:40
変更
saas_valuation_multiple_predictor
2026年10月2日2:40
変更
ltv_to_cac_ratio_health_grader
2026年10月2日2:40
変更
mrr_bridge_planner
2026年10月2日2:40
変更
enterprise_contract_discount_evaluator
2026年10月2日2:40
変更
seat_utilization_risk_assessor
2026年10月2日2:40
変更
gross_margin_impact_calculator
2026年10月2日2:40
変更
saas_quick_ratio_engine
2026年10月2日2:40
変更
freemium_to_paid_pipeline_modeler
2026年10月2日2:40
変更
expansion_revenue_impact_simulator
2026年10月2日2:40
変更
acv_weight_planner
2026年10月2日2:40
変更
saas_churn_cohort_visualizer
2026年10月2日2:40
変更
cac_payback_period_matrix
2026年10月2日2:40
変更
rule_of_40_sandbox
2026年10月2日2:40
変更
net_revenue_retention_forecaster
2026年10月2日2:40
変更
contract_redline_duration_predictor
2026年10月2日2:40
変更
historical_data_drift_estimator
2026年10月2日2:40
変更
sales_commission_tier_modeler
2026年10月2日2:40
変更
renewals_pipeline_health_grader
2026年10月2日2:40
変更
data_enrichment_value_predictor
2026年10月2日2:40
変更
cross_sell_opportunity_estimator
2026年10月2日2:40