Call this server's tools from your browser. Nothing to install.
https://rahuldsarker.co/api/mcp
Requests go through mcptry because browsers can't call most MCP servers directly. Header values are sent to the server for that request only and are never stored or logged.
Tool list from our last check. Connect live to refresh it.
ab_test_significance_calculator Read-only
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
Visitors in variant A (control)
Visitors in variant B (test)
Conversions in variant A (control)
Conversions in variant B (test)
ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.
Tools (124)
ab_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
read-only
Argument
Type
Description
currency
string
ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.
visitorsA*
number
Visitors in variant A (control)
visitorsB*
number
Visitors in variant B (test)
conversionsA*
number
Conversions in variant A (control)
conversionsB*
number
Conversions in variant B (test)
Input schema (JSON)
{
"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)"
}
}
}
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
read-only
Argument
Type
Description
currency
string
ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.
noJargon*
string
No jargon or vague buzzwords (weight 15)
oneObviousPrimaryCta*
string
One obvious primary CTA above the fold (weight 20)
headlineStatesOutcome*
string
The headline states an outcome/benefit (weight 20)
subheadSupportsHeadline*
string
Subhead supports (not repeats) the headline (weight 15)
strangerUnderstandsIn5Seconds*
string
A stranger knows what you do in 5 seconds (weight 30)
Input schema (JSON)
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
read-only
Argument
Type
Description
entAcv*
number
Average annual contract value (ACV) for enterprise customers
smbAcv*
number
Average annual contract value (ACV) for SMB customers
currency
string
ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.
entCount*
number
Number of enterprise customers
smbCount*
number
Number of SMB customers
Input schema (JSON)
{
"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"
}
}
}
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
read-only
Argument
Type
Description
freqCap*
number
Fatigue frequency ceiling (average frequency where CPMs/CPA start rising)
audience*
number
Audience / reach size (unique people the ad set can reach)
currency
string
ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.
dailyImpressions*
number
Daily impressions delivered
Input schema (JSON)
{
"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"
}
}
}
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
read-only
Argument
Type
Description
reach*
number
Reach (unique users) in the period
currency
string
ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.
impressions*
number
Impressions delivered in the period
Input schema (JSON)
{
"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"
}
}
}
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
read-only
Argument
Type
Description
currency
string
ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.
fraudPct*
number
Estimated share of spend lost to invalid/fraudulent traffic, as a percentage
leakagePct*
number
Estimated share of spend lost to tracking/attribution leakage, as a percentage
monthlySpend*
number
Total monthly ad spend
Input schema (JSON)
{
"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"
}
}
}
advertising_to_sales_ratio_calculator
Calculate the advertising-to-sales (A/S) ratio from advertising spend and net sales, with an optional prior period for the trend and the incremental ratio. See the full version at https://rahuldsarker.co/calculators/advertising-to-sales-ratio-calculator
read-only
Argument
Type
Description
adSpend*
number
Advertising spend for the latest period
currency
string
ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.
netSales*
number
Net sales for the same period (after returns, discounts and taxes)
priorAdSpend
number
Optional: advertising spend for the prior period
priorNetSales
number
Optional: net sales for the prior period
Input schema (JSON)
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"adSpend",
"netSales"
],
"properties": {
"adSpend": {
"type": "number",
"description": "Advertising spend for the latest 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."
},
"netSales": {
"type": "number",
"description": "Net sales for the same period (after returns, discounts and taxes)"
},
"priorAdSpend": {
"type": "number",
"description": "Optional: advertising spend for the prior period"
},
"priorNetSales": {
"type": "number",
"description": "Optional: net sales for the prior period"
}
}
}
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
read-only
Argument
Type
Description
currency
string
ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.
avgDealValue*
number
Average deal value
crmConsistency*
string
CRM fields complete & accurate
slaConsistency*
string
AE follows up within SLA
notesConsistency*
string
Context notes / discovery captured
meetingToCloseRatePct*
number
Meeting → close rate, as a percentage
schedulingConsistency*
string
Meeting booked & confirmed at hand-off
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
read-only
Argument
Type
Description
acv*
number
Average contract value
currency
string
ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.
revenueGoal*
number
Annual revenue goal
visitorToLeadPct*
number
Visitor-to-lead conversion rate, as a percentage
leadToCustomerPct*
number
Lead-to-customer close rate, as a percentage
Input schema (JSON)
{
"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"
}
}
}
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
read-only
Argument
Type
Description
arr*
number
Current annual recurring revenue (ARR)
currency
string
ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.
customMultiple
number
Your own or a specific comp's multiple, optional
marketMultiple*
number
Market/typical revenue multiple
premiumMultiple*
number
Premium revenue multiple
conservativeMultiple*
number
Conservative revenue multiple
Input schema (JSON)
{
"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"
}
}
}
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
read-only
Argument
Type
Description
acv*
number
Average annual contract value
currency
string
ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.
delayWeeks*
number
Implementation delay, in weeks, from signature to go-live
dealsPerYear*
number
Number of deals per year
Input schema (JSON)
{
"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"
}
}
}
benchmark_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.
read-only
Argument
Type
Description
value*
number
The value to judge
metric*
string
Which metric. Percent metrics take percentages (e.g. 3 for 3%); ratios take the multiple (e.g. 3.2)
segment
string
Customer segment, for payback, churn and NRR (default smb)
grossMarginPct
number
Gross margin %, for ROAS: the verdict then uses break-even ROAS
Input schema (JSON)
{
"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
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
read-only
Argument
Type
Description
bootExit*
number
Projected exit value, bootstrapped path
currency
string
ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.
ventureExit*
number
Projected exit value, venture-backed path
bootOwnershipPct*
number
Your ownership at exit, bootstrapped path, as a percentage
ventureOwnershipPct*
number
Your ownership after dilution, venture-backed path, as a percentage
Input schema (JSON)
{
"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"
}
}
}
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
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
read-only
Argument
Type
Description
revenue*
number
Current monthly revenue
currency
string
ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.
fixedBurn*
number
Fixed monthly burn, costs that do not scale with revenue
growthRatePct*
number
Monthly revenue growth rate, as a percentage
grossMarginPct*
number
Gross margin, as a percentage
Input schema (JSON)
{
"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"
}
}
}
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
read-only
Argument
Type
Description
cac*
number
Fully-loaded customer acquisition cost
segment
string
Customer segment for the benchmark verdict: smb, mid_market or enterprise (default smb)
currency
string
ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.
monthlyArpa*
number
Average monthly revenue per account
grossMarginPct*
number
Gross margin, as a percentage
Input schema (JSON)
{
"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"
}
}
}
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
read-only
Argument
Type
Description
currency
string
ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.
avgOrderValue*
number
Average order value
cartsPerMonth*
number
Carts created per month
recoveryRatePct*
number
Recovery rate from a win-back flow, as a percentage
abandonmentRatePct*
number
Abandonment rate, as a percentage (industry average is near 70%)
Input schema (JSON)
{
"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%)"
}
}
}
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
read-only
Argument
Type
Description
maxCpa*
number
Maximum viable CPA before the channel loses money
currency
string
ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.
currentCpa*
number
Current cost per acquisition (CPA)
monthlyInflationPct*
number
Monthly CPA inflation rate, as a percentage
Input schema (JSON)
{
"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"
}
}
}
check_availability
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.
read-only
Argument
Type
Description
days
integer
How many days ahead to look, 1 to 21 (default 7)
timezone
string
IANA time zone for the times shown, e.g. "America/New_York" or "Asia/Kolkata" (default Asia/Kolkata)
meetingType
string
A meeting type id, if more than one is offered
Input schema (JSON)
{
"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
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
read-only
Argument
Type
Description
currency
string
ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.
yourSpend*
number
Your monthly ad spend
yourSovPct*
number
Your share of voice / impression share in the category, as a percentage
competitorSovPct*
number
Competitor share of voice, as a percentage, e.g. from an auction-insights tool
Input schema (JSON)
{
"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"
}
}
}
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
read-only
Argument
Type
Description
paper*
string
Whose paper: "yours" for your standard MSA, "theirs" for their paper/custom contract (drags roughly 1.8x)
currency
string
ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.
dealValue*
number
Deal value
daysPerRound*
number
Turnaround days per redline round
daysToQuarterEnd*
number
Days remaining to quarter-end
baseLegalReviewDays*
number
Base legal review time, in days
expectedRedlineRounds*
number
Expected number of redline rounds
conversion_funnel
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
read-only
Argument
Type
Description
target*
number
Target number of conversions to reach
currency
string
ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.
visitors*
number
Visitors in the period
conversions*
number
Conversions (signups, leads, or purchases) in that same period
Input schema (JSON)
{
"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"
}
}
}
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
read-only
Argument
Type
Description
cpa*
number
Current CPA / CAC
spend*
number
Current monthly ad spend
currency
string
ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.
decayPct*
number
CPA inflation per doubling of spend, as a percentage
Input schema (JSON)
{
"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"
}
}
}
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
read-only
Argument
Type
Description
leads*
number
Leads generated
spend*
number
Ad spend
convPct*
number
Lead-to-customer conversion rate, as a percentage
currency
string
ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.
Input schema (JSON)
{
"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."
}
}
}
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
read-only
Argument
Type
Description
cpa*
number
Expected CPA
currency
string
ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.
variants*
number
Number of variants being tested
dailySpend*
number
Daily test spend
convPerVariant*
number
Conversions needed per variant for a stable read
Input schema (JSON)
{
"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"
}
}
}
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
read-only
Argument
Type
Description
reps*
number
Reps/users on the CRM
currency
string
ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.
hourlyCost*
number
Fully-loaded hourly cost per rep
hoursWastedPerWeek*
number
Hours per week lost to bad data, per rep
Input schema (JSON)
{
"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"
}
}
}
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
read-only
Argument
Type
Description
reps*
number
Number of sales reps
currency
string
ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.
annualCost*
number
Annual CRM subscription cost
avgDealValue*
number
Average deal value
winRateLiftPct*
number
Expected win-rate improvement from the CRM, as a percentage
dealsPerRepPerYear*
number
Average deals closed per rep per year, before the CRM
implementationCost*
number
One-time implementation/setup cost
Input schema (JSON)
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
read-only
Argument
Type
Description
acv*
number
Average contract value
budget*
number
Total monthly budget
currency
string
ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.
Input schema (JSON)
{
"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."
}
}
}
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
read-only
Argument
Type
Description
currency
string
ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.
crossSellAcv*
number
Cross-sell ACV
activeCustomers*
number
Active customers
expectedAttachRatePct*
number
Expected attach rate among eligible customers, as a percentage
singleProductSharePct*
number
Share of customers on a single product (not yet cross-sold), as a percentage
Input schema (JSON)
{
"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"
}
}
}
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
read-only
Argument
Type
Description
size*
string
Button size: large/prominent, medium, or small/text-like
currency
string
ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.
placement*
string
Placement: primary (above fold, standout), inline with content, or buried (below fold/crowded)
buttonColorHex*
string
Button color as a hex code, e.g. "#7C3AED"
backgroundColorHex*
string
Background color as a hex code, e.g. "#FAFAFB"
Input schema (JSON)
{
"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\""
}
}
}
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
read-only
Argument
Type
Description
arr*
number
Current ARR
currency
string
ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.
monthlyExpansionPct*
number
Net monthly expansion rate from existing accounts, as a percentage
Input schema (JSON)
{
"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"
}
}
}
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
read-only
Argument
Type
Description
csmCount*
number
Number of customer success managers
currency
string
ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.
totalAccounts*
number
Total accounts under management
healthyAccountsPerCsm*
number
Healthy accounts per CSM, before retention starts slipping
Input schema (JSON)
{
"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"
}
}
}
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
read-only
Argument
Type
Description
currency
string
ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.
hourlyCost*
number
Fully-loaded hourly cost per rep
minutesPerLead*
number
Minutes per lead spent on manual research
toolCostPerMonth*
number
Enrichment tool cost per month
repsDoingResearch*
number
Reps doing manual research
leadsResearchedPerWeek*
number
Leads researched per week, per rep
Input schema (JSON)
{
"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"
}
}
}
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
read-only
Argument
Type
Description
currency
string
ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.
termMonths*
number
Contract term, in months
monthsElapsed*
number
Months elapsed since the contract started
upfrontPayment*
number
Upfront payment collected
Input schema (JSON)
{
"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"
}
}
}
email_marketing_roi_calculator
Estimate monthly revenue, ROI, revenue per email and revenue per subscriber from an email programme, in ecommerce or B2B pipeline mode. See the full version at https://rahuldsarker.co/calculators/email-marketing-roi-calculator
read-only
Argument
Type
Description
openPct*
number
Open rate, as a percentage
currency
string
ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.
listSize*
number
Subscribers on the list
toolCost*
number
Email tool cost per month
peopleCost*
number
People cost per month for the programme
winRatePct
number
B2B only: win rate on that pipeline, as a percentage. Omit for ecommerce.
conversionPct*
number
Conversion rate of clicks, as a percentage
clickToOpenPct*
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
read-only
Argument
Type
Description
listAcv*
number
List (undiscounted) annual contract value
currency
string
ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.
termYears*
number
Contract term, in years
discountPct*
number
Discount offered, as a percentage
grossMarginPct*
number
Gross margin, as a percentage
Input schema (JSON)
{
"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"
}
}
}
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
read-only
Argument
Type
Description
currency
string
ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.
engagedSharePct*
number
Engaged-visitor share, as a percentage: roughly how far into a session real intent forms
pagesPerSession*
number
Pages per session
avgSessionSeconds*
number
Average session duration, in seconds
Input schema (JSON)
{
"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"
}
}
}
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
read-only
Argument
Type
Description
currency
string
ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.
upsellAcv*
number
Annual contract value of the upsell
newLogoCac*
number
CAC to acquire a new logo, for comparison
adoptionRatePct*
number
Share of existing customers expected to take the upsell offer, as a percentage
existingCustomers*
number
Number of existing customers
Input schema (JSON)
{
"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"
}
}
}
find_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.
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
read-only
Argument
Type
Description
currency
string
ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.
targetFields*
number
Target number of form fields
valuePerLead*
number
Value per lead
currentFields*
number
Current number of form fields
monthlyVisitors*
number
Form visitors per month
recoveryPerFieldPct*
number
Relative conversion recovered per field removed, as a percentage, typically 3-8
currentConversionPct*
number
Current form conversion rate, as a percentage
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
read-only
Argument
Type
Description
paidAcv*
number
Annual contract value once a user converts to paid
currency
string
ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.
monthlySignups*
number
Free signups per month
conversionRatePct*
number
Free-to-paid conversion rate, as a percentage
timeToUpgradeMonths*
number
Average time to upgrade, in months
Input schema (JSON)
{
"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"
}
}
}
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
read-only
Argument
Type
Description
currency
string
ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.
forcedUpsells*
boolean
Forced upsells or interstitials mid-flow
noTrustSignals*
boolean
No trust/security signals at the point of entry
slowOrLaggySteps*
boolean
Slow steps or laggy interactions
tooManyFormFields*
boolean
Too many form fields
noProgressIndicator*
boolean
No progress indicator on multi-step flows
unclearOrLateErrors*
boolean
Unclear or late error messages
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
read-only
Argument
Type
Description
clicks*
number
Current clicks per month
currency
string
ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.
convRatePct*
number
Click-to-conversion rate, as a percentage
impressionSharePct*
number
Search impression share, as a percentage
valuePerConversion*
number
Value per conversion
Input schema (JSON)
{
"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"
}
}
}
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
read-only
Argument
Type
Description
revenue*
number
Annual recurring revenue
currency
string
ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.
supportCost*
number
Support and delivery cost
infrastructureCost*
number
Cloud/infrastructure cost
Input schema (JSON)
{
"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"
}
}
}
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
read-only
Argument
Type
Description
cash*
number
Cash in bank
revenue*
number
Monthly revenue
currency
string
ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.
grossBurn*
number
Gross monthly burn
burnReductionPct*
number
Burn reduction from efficiency gains, as a percentage
Input schema (JSON)
{
"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"
}
}
}
growth_strategy_prioritization_tool
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
read-only
Argument
Type
Description
ideas*
array
List of growth ideas to score and rank
currency
string
ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.
Input schema (JSON)
{
"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."
}
}
}
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
read-only
Argument
Type
Description
arr*
number
Current annual recurring revenue (ARR)
currency
string
ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.
Input schema (JSON)
{
"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."
}
}
}
gtm_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
read-only
Argument
Type
Description
currency
string
ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.
consentModeV2*
string
Consent Mode v2 is implemented and verified, weight 15
noDuplicateTags*
string
No duplicate tags tracking the same event, weight 15
taggedOwnership*
string
Every tag has a documented purpose and owner, weight 15
versionChangeNotes*
string
Every container version has a change note, weight 10
dataLayerDocumented*
string
Data layer is versioned and documented, weight 15
noOverfiringTriggers*
string
No tags trigger on "All Pages" that should not, weight 15
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
read-only
Argument
Type
Description
currency
string
ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.
totalContacts*
number
Total contacts in the database
annualDecayRatePct*
number
Annual data decay rate, as a percentage, B2B data typically decays 20-30%/year
monthsSinceLastCleanse*
number
Months since the database was last cleansed/verified
Input schema (JSON)
{
"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"
}
}
}
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
read-only
Argument
Type
Description
currency
string
ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.
conversions*
number
Conversions per month, now
impressionSharePct*
number
Current impression share, as a percentage
valuePerConversion*
number
Value per conversion
Input schema (JSON)
{
"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"
}
}
}
in_house_vs_fractional_cmo
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
read-only
Argument
Type
Description
salary*
number
Full-time CMO base salary
currency
string
ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.
loadedPct*
number
Benefits + overhead loading on top of salary, as a percentage, e.g. 30 for 30%
rampMonths*
number
Months of ramp before the full-time hire delivers impact
recruiting*
number
Recruiting / search cost for the full-time hire
fractionalMonthly*
number
Fractional CMO monthly retainer
Input schema (JSON)
{
"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"
}
}
}
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
read-only
Argument
Type
Description
currency
string
ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.
excessChurnPct*
number
Extra annual churn among those affected, from poor experience, as a percentage
activeCustomers*
number
Active customers
slowSupportSharePct*
number
Share of customers hitting slow support (breaching your response SLA), as a percentage
annualRevenuePerCustomer*
number
Annual revenue per customer (ARPU)
Input schema (JSON)
{
"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)"
}
}
}
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
read-only
Argument
Type
Description
size*
string
Market size / demand: high/med/low. Weight 30
currency
string
ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.
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
read-only
Argument
Type
Description
cta*
string
CTA wording is consistent (weight 15)
offer*
string
Ad offer / promise matches the page (weight 25)
visual*
string
Creative visuals match the page (weight 10)
keyword*
string
Target keyword present above the fold (weight 20)
currency
string
ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.
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
read-only
Argument
Type
Description
currency
string
ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.
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
read-only
Argument
Type
Description
currency
string
ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.
feelsCredible*
string
Feels credible / worth an email (weight 15)
appealingFormat*
string
Format is appealing, tool/template over PDF (weight 15)
deliversValueFast*
string
Delivers value fast, not a 40-page slog (weight 20)
relevantToIcpProblem*
string
Directly relevant to your ICP's problem (weight 25)
specificTangibleOutcome*
string
Promises a specific, tangible outcome (weight 25)
Input schema (JSON)
{
"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)"
}
}
}
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
read-only
Argument
Type
Description
currency
string
ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.
signupsPerMonth*
number
Signups per month
personalCloseRatePct*
number
Personal-email close rate, as a percentage
corporateCloseRatePct*
number
Corporate-email close rate, as a percentage
corporateEmailSharePct*
number
Corporate-email share, as a percentage, vs gmail/outlook/free personal domains
Input schema (JSON)
{
"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"
}
}
}
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
read-only
Argument
Type
Description
currency
string
ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.
dealValue*
number
Average deal value
monthlyLeads*
number
Inbound leads per month
conversionAtTargetPct*
number
Lead-to-deal conversion rate when responding at the target speed, as a percentage
targetResponseMinutes*
number
Target response time, in minutes
currentResponseMinutes*
number
Current average response time, in minutes
Input schema (JSON)
{
"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"
}
}
}
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
read-only
Argument
Type
Description
currency
string
ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.
industryFit*
string
Industry / ICP match, weight 15
companySizeFit*
string
Company size fit, weight 15
titleSeniority*
string
Job title / seniority match, weight 10
highIntentAction*
string
High-intent action such as trial or contact, weight 25
pricingPageVisit*
string
Visited pricing / demo page, weight 20
contentEngagement*
string
Content / email engagement, weight 15
Input schema (JSON)
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
read-only
Argument
Type
Description
cpc*
number
LinkedIn cost per click
currency
string
ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.
closeRatePct*
number
Lead-to-customer close rate, as a percentage
contractValue*
number
Contract value
grossMarginPct*
number
Gross margin, as a percentage
landingConvPct*
number
Landing page conversion rate, as a percentage
Input schema (JSON)
{
"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"
}
}
}
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
read-only
Argument
Type
Description
seed*
number
Seed audience size (customers/leads the model is built from)
currency
string
ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.
population*
number
Target market population (addressable users in the country/region)
lookalikePct*
number
Lookalike percentage, e.g. 1 for tightest match, 10 for broadest
Input schema (JSON)
{
"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"
}
}
}
ltv_cac_calculator
Calculate customer LTV, CAC, the LTV:CAC ratio, and CAC payback period. See the full version at https://rahuldsarker.co/calculators/cac-ltv
read-only
Argument
Type
Description
segment
string
Customer segment for the benchmark verdict: smb, mid_market or enterprise (default smb)
currency
string
ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.
monthlyArpa*
number
Average monthly revenue per account (ARPA)
newCustomers*
number
New customers acquired in that same period
grossMarginPct*
number
Gross margin, as a percentage
monthlyChurnPct*
number
Monthly customer churn rate, as a percentage
salesAndMarketingSpend*
number
Total sales and marketing spend for the period
Input schema (JSON)
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
read-only
Argument
Type
Description
arpa*
number
Monthly revenue per account (ARPA)
currency
string
ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.
grossMarginPct*
number
Gross margin, as a percentage
currentChurnPct*
number
Current monthly churn, as a percentage
improvedChurnPct*
number
Improved monthly churn, as a percentage
Input schema (JSON)
{
"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"
}
}
}
ltv_to_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
read-only
Argument
Type
Description
cac*
number
Fully-loaded customer acquisition cost
ltv*
number
Customer LTV (revenue basis)
currency
string
ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.
grossMarginPct*
number
Gross margin, as a percentage, applied to LTV
Input schema (JSON)
{
"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"
}
}
}
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
read-only
Argument
Type
Description
currency
string
ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.
pipeline*
string
Ties work to pipeline/revenue, not just impressions: yes/vague/no. Weight 25
ownership*
string
You own the accounts, assets & data: yes/vague/no. Weight 15
reporting*
string
Transparent reporting & data access: yes/vague/no. Weight 15
Relevant references / case studies: yes/vague/no. Weight 15
attribution
marketing_budget
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
read-only
Argument
Type
Description
posture
string
Growth posture benchmark: 'maintain' (~6% of revenue, hold position), 'grow' (~11%, take share), or 'aggressive' (~18%, capture the market). Defaults to 'grow'.
currency
string
ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.
customPct
number
Custom percentage of revenue, overrides the posture benchmark when set
annualRevenue*
number
Annual revenue
Input schema (JSON)
{
"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"
}
}
}
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
read-only
Argument
Type
Description
estCpa*
number
Estimated CPA (cost per optimization event)
currency
string
ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.
dailyBudget*
number
Daily ad budget
Input schema (JSON)
{
"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"
}
}
}
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
read-only
Argument
Type
Description
currency
string
ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.
wonCustomerValue*
number
Value of a won customer
microToCustomerRatePct*
number
Micro-action to customer conversion rate, as a percentage
monthlyMicroConversions*
number
Micro-conversions per month
Input schema (JSON)
{
"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"
}
}
}
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
read-only
Argument
Type
Description
steps*
string
Checkout steps/screens: one (single page), two, or threeplus
currency
string
ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.
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
read-only
Argument
Type
Description
currency
string
ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.
mqlRatePct*
number
Lead-to-MQL rate, as a percentage
monthlySpend*
number
Monthly marketing spend driving this traffic
monthlyVisitors*
number
Monthly website visitors
leadConversionPct*
number
Visitor-to-lead conversion rate, as a percentage
Input schema (JSON)
{
"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"
}
}
}
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
read-only
Argument
Type
Description
currency
string
ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.
costPerMql*
number
Cost per MQL
monthlyMqls*
number
MQLs generated per month
salesAcceptRatePct*
number
Share of MQLs sales accepts as genuine SQLs, as a percentage
Input schema (JSON)
{
"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"
}
}
}
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
read-only
Argument
Type
Description
newMrr*
number
New MRR from new logos
currency
string
ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.
churnedMrr*
number
MRR lost to cancellations/churn
startingMrr*
number
Starting MRR
expansionMrr*
number
Expansion MRR from existing customers
contractionMrr*
number
MRR lost to downgrades/contraction
resurrectedMrr*
number
Resurrected MRR from win-back customers
Input schema (JSON)
{
"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"
}
}
}
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
read-only
Argument
Type
Description
mrr*
number
Current monthly recurring revenue (MRR)
currency
string
ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.
monthlyChurnAndContraction
number
Expected monthly dollars lost to churn and contraction, optional, defaults to 0
monthlyExpansionAndNewBusiness
number
Expected monthly dollars added from new business plus expansion, optional, defaults to 0
Input schema (JSON)
{
"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"
}
}
}
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
read-only
Argument
Type
Description
currency
string
ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.
promoterPct*
number
Share of respondents who are promoters (score 9-10), as a percentage
customerBase*
number
Customers surveyed or in the base
detractorPct*
number
Share of respondents who are detractors (score 0-6), as a percentage
referralRatePct*
number
Share of promoters who refer someone, as a percentage
Input schema (JSON)
{
"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"
}
}
}
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
read-only
Argument
Type
Description
arr*
number
Current annual recurring revenue (ARR)
segment
string
Customer segment for the benchmark verdict: smb, mid_market or enterprise (default smb)
currency
string
ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.
annualExpansionPct*
number
Annual expansion from upsell and cross-sell, as a percentage
annualGrossChurnPct*
number
Annual gross revenue churn, as a percentage
Input schema (JSON)
{
"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"
}
}
}
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
read-only
Argument
Type
Description
currency
string
ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.
avgDealValue*
number
Average deal value
noShowRatePct*
number
Current no-show rate, as a percentage
demosBookedPerMonth*
number
Demos booked per month
heldDemoCloseRatePct*
number
Close rate for held demos, as a percentage
Input schema (JSON)
{
"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"
}
}
}
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
read-only
Argument
Type
Description
avgCpc*
number
Average cost-per-click if these keywords were paid
currency
string
ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.
organicClicks*
number
Monthly organic clicks
brandedSharePct*
number
Branded share of traffic, as a percentage (traffic you would likely get for free anyway)
Input schema (JSON)
{
"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)"
}
}
}
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
read-only
Argument
Type
Description
currency
string
ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.
monthlyVisitors*
number
Monthly visitors
lossPerSecondPct
number
Conversion loss per second of load time, as a percentage, defaults to 7 (studies cluster around 5-7%)
conversionRatePct*
number
Current conversion rate, as a percentage
targetLoadSeconds*
number
Target page load time, in seconds
currentLoadSeconds*
number
Current page load time, in seconds
valuePerConversion*
number
Value per conversion
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
read-only
Argument
Type
Description
currency
string
ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.
keywords*
array
List of search keywords/queries to grade
Input schema (JSON)
{
"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"
}
}
}
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
read-only
Argument
Type
Description
aov*
number
Average order / contract value
currency
string
ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.
currentCpa*
number
Current CPA
grossMarginPct*
number
Gross margin, as a percentage
targetProfitPct*
number
Target profit margin to keep after ad cost, as a percentage
Input schema (JSON)
{
"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"
}
}
}
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
read-only
Argument
Type
Description
currency
string
ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.
cycleDays*
number
Average sales cycle length, in days
winRatePct*
number
Win rate, as a percentage
avgDealValue*
number
Average deal value (ACV)
openOpportunities*
number
Number of open opportunities
Input schema (JSON)
{
"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"
}
}
}
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
read-only
Argument
Type
Description
adSpend*
number
Total ad spend
currency
string
ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.
actualRevenue*
number
Actual revenue from backend / finance system
platformRevenue*
number
Sum of revenue all ad platforms report
Input schema (JSON)
{
"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"
}
}
}
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
read-only
Argument
Type
Description
cpc*
number
Average cost per click
budget*
number
Monthly budget
currency
string
ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.
convRatePct*
number
Click-to-conversion rate, as a percentage
Input schema (JSON)
{
"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"
}
}
}
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
read-only
Argument
Type
Description
price*
number
Current price
volume*
number
Current volume, units per month
currency
string
ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.
unitCost*
number
Unit / delivery cost
elasticity*
number
Price elasticity of demand: percent volume change per 1% price change, usually negative
priceChangePct*
number
Price change, as a percentage (positive = increase, negative = cut)
Input schema (JSON)
{
"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)"
}
}
}
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
read-only
Argument
Type
Description
currency
string
ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.
oneCtaPerTier*
string
One clear CTA per tier (weight 15)
anchoringPresent*
string
Anchoring, a high tier frames the others (weight 15)
threeToFourTiers*
string
3-4 tiers, not too few, not overwhelming (weight 15)
clearFeatureComparison*
string
Clear feature comparison across tiers (weight 20)
billingToggleWithSavings*
string
Monthly/annual toggle with savings shown (weight 15)
recommendedPlanHighlighted*
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
read-only
Argument
Type
Description
ttv*
string
Time-to-value is minutes, not weeks: yes/partial/no. Weight 25
price*
string
Price point supports self-serve / low ACV: yes/partial/no. Weight 15
value*
string
Value is obvious before talking to sales: yes/partial/no. Weight 20
viral*
string
Natural virality or collaboration built in: yes/partial/no. Weight 15
currency
string
ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.
selfserve*
string
A user can onboard with no human help: yes/partial/no. Weight 25
Input schema (JSON)
{
"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"
}
}
}
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
read-only
Argument
Type
Description
nps*
string
Strong NPS & referrals: strong, ok, or weak/no. Weight 20
organic*
string
Organic / word-of-mouth pull: strong, ok, or weak/no. Weight 20
currency
string
ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.
"Very disappointed if it went away" test (>40%): strong, ok (mixed), or weak/no. Weight 30
Input schema (JSON)
{
"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"
}
}
}
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
read-only
Argument
Type
Description
currency
string
ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.
toursStarted*
number
Tours started per month
activationPct*
number
Percentage of finishers who activate (reach the product's aha moment)
step1CompletionPct*
number
Percentage who complete step 1
step2CompletionPct*
number
Percentage who go from step 1 to step 2
step3CompletionPct*
number
Percentage who go from step 2 to step 3 (finish)
Input schema (JSON)
{
"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)"
}
}
}
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
read-only
Argument
Type
Description
dau*
number
Daily active users
mau*
number
Monthly active users
currency
string
ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.
Input schema (JSON)
{
"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."
}
}
}
read_content
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.
read-only
Argument
Type
Description
slug*
string
The slug or URL, e.g. "why-server-side-capi-cut-signal-loss" or https://rahuldsarker.co/insights/…
Input schema (JSON)
{
"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/…"
}
}
}
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
read-only
Argument
Type
Description
currency
string
ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.
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.
Argument
Type
Description
email
string
phone
string
With country code, e.g. +1 415 555 0100
company
string
message
string
What they want help with, in their words
lastName
string
confirmed
boolean
True only after the person has seen these exact details and asked to be contacted
firstName
string
Input schema (JSON)
{
"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
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
read-only
Argument
Type
Description
cpm*
number
Retargeting CPM
currency
string
ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.
visitors*
number
Monthly unique visitors
targetFreq*
number
Target weekly impressions per user
windowDays*
number
Retargeting window, in days
matchRatePct*
number
Cookie / match rate, as a percentage
Input schema (JSON)
{
"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"
}
}
}
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
read-only
Argument
Type
Description
currency
string
ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.
dataGovernance*
number
Data governance & hygiene, 1=Reactive/manual to 4=Optimized
forecastingRigor*
number
Forecasting & pipeline rigor, 1=Reactive/manual to 4=Optimized
processAutomation*
number
Process automation & enablement, 1=Reactive/manual to 4=Optimized
systemConnectivity*
number
System connectivity (CRM ↔ MAP ↔ data), 1=Reactive/manual to 4=Optimized
attributionAndReporting*
number
Attribution & reporting, 1=Reactive/manual to 4=Optimized
Input schema (JSON)
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
read-only
Argument
Type
Description
spend*
number
Total ad spend
revenue*
number
Revenue attributed to the ad spend
currency
string
ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.
marginPct*
number
Gross margin, as a percentage, e.g. 60 for 60%
Input schema (JSON)
{
"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%"
}
}
}
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
read-only
Argument
Type
Description
currency
string
ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.
totalSpend*
number
Total marketing spend across all channels
platformRoas*
number
Blended ROAS as reported by the ad platform(s)
totalRevenue*
number
Total revenue from all sources (backend/store, not the ad platform)
Input schema (JSON)
{
"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)"
}
}
}
rto_adjusted_roas_calculator
Work out ROAS after Return-to-Origin (RTO) on cash-on-delivery orders: delivered revenue, RTO cost, RTO-adjusted ROAS and effective cost per delivered order. See the full version at https://rahuldsarker.co/calculators/rto-adjusted-roas-calculator
read-only
Argument
Type
Description
aov*
number
Average order value
spend*
number
Ad spend for the period
orders*
number
Orders placed from that spend
currency
string
ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.
codRtoPct*
number
RTO rate on COD orders, as a percentage
codSharePct*
number
Share of orders paid cash on delivery, as a percentage
prepaidRtoPct*
number
RTO rate on prepaid orders, as a percentage
shippingPerRto
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
read-only
Argument
Type
Description
currency
string
ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.
yoyGrowthPct*
number
Year-over-year revenue growth, as a percentage
profitMarginPct*
number
EBITDA or FCF margin, as a percentage (can be negative)
Input schema (JSON)
{
"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)"
}
}
}
run_calculator
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.
read-only
Argument
Type
Description
name*
string
Calculator tool name, e.g. "roas_calculator"
arguments
object
The calculator's inputs, including optional currency (e.g. "USD")
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
read-only
Argument
Type
Description
segment
string
Customer segment for the benchmark verdict: smb, mid_market or enterprise (default smb)
currency
string
ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.
cohortSize*
number
Starting cohort size (number of customers)
monthlyChurnPct*
number
Monthly logo churn rate, as a percentage
Input schema (JSON)
{
"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"
}
}
}
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
read-only
Argument
Type
Description
currency
string
ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.
priorArr*
number
Prior period ARR
currentArr*
number
Current period ARR
priorPeriodSalesAndMarketingSpend*
number
Sales and marketing spend in the prior period
Input schema (JSON)
{
"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"
}
}
}
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
read-only
Argument
Type
Description
newMrr*
number
New MRR added this period
currency
string
ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.
churnedMrr*
number
MRR lost to cancellations/churn
expansionMrr*
number
Expansion MRR from existing customers
contractionMrr*
number
MRR lost to downgrades/contraction
Input schema (JSON)
{
"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"
}
}
}
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
read-only
Argument
Type
Description
arr*
number
Current annual recurring revenue (ARR)
nrrPct*
number
Net revenue retention, as a percentage
currency
string
ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.
yoyGrowthPct*
number
Year-over-year growth rate, as a percentage
grossMarginPct*
number
Gross margin, as a percentage
Input schema (JSON)
{
"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"
}
}
}
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
read-only
Argument
Type
Description
currency
string
ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.
annualQuota*
number
Annual quota
attainmentPct*
number
Quota attainment, as a percentage
acceleratedRatePct*
number
Accelerated commission rate, as a percentage
dealGrossMarginPct*
number
Deal gross margin, as a percentage
baseCommissionRatePct*
number
Base commission rate, as a percentage
acceleratorThresholdPct*
number
Quota attainment percentage at which the accelerator kicks in
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
read-only
Argument
Type
Description
currency
string
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": [
"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"
}
}
}
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
read-only
Argument
Type
Description
leads*
number
Leads per month, top of funnel
currency
string
ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.
toMqlPct*
number
Lead → MQL conversion rate, as a percentage
toOppPct*
number
SQL → Opportunity conversion rate, as a percentage
toSqlPct*
number
MQL → SQL conversion rate, as a percentage
toWinPct*
number
Opportunity → Win conversion rate, as a percentage
Input schema (JSON)
{
"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 → MQL conversion rate, as a percentage"
},
"toOppPct": {
"type": "number",
"description": "SQL → Opportunity conversion rate, as a percentage"
},
"toSqlPct": {
"type": "number",
"description": "MQL → SQL conversion rate, as a percentage"
},
"toWinPct": {
"type": "number",
"description": "Opportunity → Win conversion rate, as a percentage"
}
}
}
sales_quota_calculator
Set sales quotas two ways and compare: top-down (revenue target split across reps at an expected attainment) and bottom-up (what each rep can realistically close). See the full version at https://rahuldsarker.co/calculators/sales-quota-calculator
read-only
Argument
Type
Description
reps*
number
Number of quota-carrying reps
target*
number
Annual revenue target for the team
rampPct*
number
Average rep productivity after ramp, as a percentage (100 if fully ramped)
currency
string
ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.
dealSize*
number
Average deal size
winRatePct*
number
Win rate, as a percentage
cycleMonths*
number
Average sales cycle in months
attainmentPct*
sales_rep_ramp_calculator
Estimate the cost of ramping new sales reps: unproductive cost during ramp, bookings lost versus fully ramped reps, first-year bookings and payback month. See the full version at https://rahuldsarker.co/calculators/sales-rep-ramp-calculator
read-only
Argument
Type
Description
curve
string
Ramp shape: linear (default), slow start, or fast start
hires*
number
Number of reps being hired
currency
string
ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.
rampMonths*
number
Months until a new rep is fully productive
monthlyCost*
number
Fully loaded monthly cost per rep
monthlyQuota*
number
Monthly bookings of a fully ramped rep
Input schema (JSON)
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"rampMonths",
"monthlyQuota",
"monthlyCost",
"hires"
],
"properties": {
"curve": {
"enum": [
"linear",
"slow",
"fast"
],
"type": "string",
"description": "Ramp shape: linear (default), slow start, or fast start"
},
"hires": {
"type": "number",
"description": "Number of reps being hired"
},
"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."
},
"rampMonths": {
"type": "number",
"description": "Months until a new rep is fully productive"
},
"monthlyCost": {
"type": "number",
"description": "Fully loaded monthly cost per rep"
},
"monthlyQuota": {
"type": "number",
"description": "Monthly bookings of a fully ramped rep"
}
}
}
sdr_capacity_and_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
read-only
Argument
Type
Description
sdrs*
number
Number of SDRs on the team
currency
string
ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.
touchesPerLead*
number
Touches per lead in the cadence
minutesPerTouch*
number
Minutes required per quality touch
sellingHoursPerDay*
number
Selling hours per day, per rep, after meetings/admin/breaks
workingDaysPerMonth*
number
Working days per month
inboundLeadsPerMonth*
number
Inbound leads per month
search_content
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.
read-only
Argument
Type
Description
type
string
Only return one kind of content
limit
integer
How many results, 1 to 10 (default 5)
query*
string
What to look for, in plain words, e.g. "server-side CAPI signal loss" or "RevOps for Series A SaaS"
Input schema (JSON)
{
"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
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
read-only
Argument
Type
Description
season*
string
Season: normal (baseline), backToSchool (Aug-Sep), blackFriday (BFCM peak), q4 (Nov-Dec holiday), january (post-holiday reset)
baseCpm*
number
Baseline CPM
currency
string
ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.
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
read-only
Argument
Type
Description
currency
string
ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.
renewalArr*
number
Renewal ARR at stake for this account
seatsActive*
number
Seats actively used (e.g. active in the last 30 days)
seatsPurchased*
number
Seats purchased
Input schema (JSON)
{
"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"
}
}
}
seat_vs_usage_pricing_calculator
Compare per-seat, usage-based and hybrid (platform fee plus overage) pricing revenue for a customer mix of small, mid and large accounts. See the full version at https://rahuldsarker.co/calculators/seat-vs-usage-pricing-calculator
read-only
Argument
Type
Description
currency
string
ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.
midSeats*
number
Seats per mid-size customer
midUnits*
number
Usage units per mid-size customer per month
seatPrice*
number
Price per seat per month
unitPrice*
number
Price per usage unit
largeSeats*
number
Seats per large customer
largeUnits*
number
Usage units per large customer per month
smallSeats*
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
read-only
Argument
Type
Description
currency
string
ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.
enoughVolume*
string
Enough volume to feel credible (weight 10)
namedAndAttributed*
string
Testimonials are named & attributed to real people (weight 20)
photosLogosOrVideo*
string
Photos, logos or video, not just text (weight 15)
matchesVisitorSegment*
string
Proof matches the visitor's segment (weight 15)
placedNearDecisionPoints*
string
Placed near decision points / CTAs (weight 15)
specificQuantifiedResults*
string
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
read-only
Argument
Type
Description
cash*
string
Cash buffer for a longer sales cycle: ready/partial/no. Weight 20
team*
string
Team has enterprise experience: ready/partial/no. Weight 15
motion*
string
Sales motion built for enterprise (AEs, SEs, ABM): ready/partial/no. Weight 25
pricing*
string
Pricing & packaging fit larger contracts: ready/partial/no. Weight 15
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
read-only
Argument
Type
Description
currency
string
ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.
toolCount*
number
Number of tools in the stack
overlapPct*
number
Estimated share of spend on redundant/overlapping capabilities, as a percentage
monthlySpend*
number
Total SaaS spend per month
Input schema (JSON)
{
"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"
}
}
}
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
read-only
Argument
Type
Description
action*
string
Secondary action to add: referral ask (~8%), order-bump/upsell (~12%), book a call/demo (~18%), or join community/follow (~22%)
currency
string
ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.
conversionsPerMonth*
number
Conversions per month (thank-you page views)
takeRatePctOverride
number
Custom take rate override, as a percentage; if omitted, uses the typical rate for the chosen action
valuePerSecondaryAction*
number
Value per secondary action, e.g. avg. value of a referral, upsell, or booked call
Input schema (JSON)
{
"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"
}
}
}
total_addressable_market_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
read-only
Argument
Type
Description
acv*
number
Average contract value
currency
string
ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.
companies*
number
Total target companies that fit the category
reachablePct*
number
Share of those companies realistically reachable, as a percentage
targetSharePct*
number
Obtainable share of the reachable market (SAM) you can win near-term, as a percentage
Input schema (JSON)
{
"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"
}
}
}
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
read-only
Argument
Type
Description
currency
string
ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.
expectedLiftPct
number
Expected relative lift from trust badges, as a percentage, defaults to 8 (typically 3-15%)
monthlyVisitors*
number
Monthly visitors to the form/checkout
valuePerConversion*
number
Value per conversion
currentConversionRatePct*
number
Current conversion rate, as a percentage
Input schema (JSON)
{
"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"
}
}
}
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
read-only
Argument
Type
Description
currency
string
ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.
fontSizePx*
number
Body font size in pixels
lineHeight*
number
Line height as a multiplier of font size, e.g. 1.5
lineLengthChars*
number
Line length in characters per line
Input schema (JSON)
{
"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"
}
}
}
utm_generator_and_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
read-only
Argument
Type
Description
term
string
utm_term (paid keyword), optional
medium*
string
utm_medium, e.g. cpc, paid-social
source*
string
utm_source, e.g. google, linkedin
baseUrl*
string
Base URL to tag, e.g. https://example.com/pricing
content
string
utm_content (creative / A-B variant), optional
campaign*
string
utm_campaign, e.g. q3-demo-push
currency
string
ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.
Input schema (JSON)
{
"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."
}
}
}
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
read-only
Argument
Type
Description
currency
string
ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.
fakeUrgency*
boolean
Fake urgency or countdown timers
disguisedAds*
boolean
Disguised ads or fake system messages
trickWording*
boolean
Trick wording on buttons / consent
confirmshaming*
boolean
Confirmshaming, e.g. "No thanks, I hate saving money"
hiddenCostsLate*
boolean
Hidden costs revealed late in checkout
forcedContinuity*
boolean
Forced continuity (auto-renew, hard to spot)
value_prop_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
read-only
Argument
Type
Description
currency
string
ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.
instantlyClear*
string
Instantly clear, no second read needed (weight 25)
focusedOnOutcome*
string
Focused on the customer's outcome (weight 20)
speaksToRealPain*
string
Speaks to a real, felt pain (weight 15)
specificNotGeneric*
string
Specific, not generic (weight 20)
differentiatedFromCompetitors*
string
Differentiated from competitors (weight 20)
Input schema (JSON)
{
"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)"
}
}
}
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
read-only
Argument
Type
Description
currency
string
ISO 4217 code for money in the result, e.g. "USD", "INR", "EUR", "GBP". Omit to show plain numbers.
dealValue*
number
Deal / conversion value
monthlyViews*
number
Video views per month
completionRatePct*
number
Completion rate, as a percentage: share who watch to the end
completerToConversionPct*
number
Completer to conversion rate, as a percentage
Input schema (JSON)
{
"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": [
"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)"
}
}
}
meetingsHandedOffPerMonth*
number
Meetings handed off from SDR to AE per month
Input schema (JSON)
{
"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 → 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"
}
}
}
Input schema (JSON)
{
"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": [
"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"
}
}
}
number
Click-to-open rate, as a percentage
emailsPerMonth*
number
Emails sent to the list per month
valuePerConversion*
number
Average order value (ecommerce) or pipeline value per conversion (B2B)
Input schema (JSON)
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"listSize",
"emailsPerMonth",
"openPct",
"clickToOpenPct",
"conversionPct",
"valuePerConversion",
"toolCost",
"peopleCost"
],
"properties": {
"openPct": {
"type": "number",
"description": "Open 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."
},
"listSize": {
"type": "number",
"description": "Subscribers on the list"
},
"toolCost": {
"type": "number",
"description": "Email tool cost per month"
},
"peopleCost": {
"type": "number",
"description": "People cost per month for the programme"
},
"winRatePct": {
"type": "number",
"description": "B2B only: win rate on that pipeline, as a percentage. Omit for ecommerce."
},
"conversionPct": {
"type": "number",
"description": "Conversion rate of clicks, as a percentage"
},
"clickToOpenPct": {
"type": "number",
"description": "Click-to-open rate, as a percentage"
},
"emailsPerMonth": {
"type": "number",
"description": "Emails sent to the list per month"
},
"valuePerConversion": {
"type": "number",
"description": "Average order value (ecommerce) or pipeline value per conversion (B2B)"
}
}
}
Input schema (JSON)
{
"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"
}
}
}
limitedPaymentOptions*
boolean
Limited payment / wallet options
accountRequiredBeforeValue*
boolean
Account required before purchase / value
Input schema (JSON)
{
"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"
}
}
}
previewBeforePublish*
string
Every publish goes through Preview mode first, weight 10
monthlyReconciliation*
string
GA4, Ads and CRM numbers are reconciled monthly, weight 5
Input schema (JSON)
{
"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"
}
}
}