Query recipes
Ready-made rh_query, rh_reviews, rh_feedback, rh_experiment_results and rh_payouts calls that answer common revenue, churn, ads, review and payout questions.
These calls work as written against the RevenueHog MCP server. Replace app identifiers with your own. Ask your assistant the question in plain language and it builds calls like these; use them directly when scripting or debugging.
Rules of thumb
- Name only the measures the question needs.
- A total needs no dimension. A ranking needs
orderByand a smalllimit. A "why did it change" question needscompareTo: "prior_period". - Every measure in a query must allow the chosen dimension. Subscription, flow and store measures group by
apponly; revenue measures also group bycountryandproduct; ad measures also group bycampaign. - Check
rh_metawith topicfreshnessbefore quoting a number. Always state the window and that money is USD.
How is my MRR doing?
rh_query {
"measures": ["mrr", "arr", "activeSubs", "churnRate"],
"timeRange": "30d",
"compareTo": "prior_period"
}MRR trend by week
rh_query {
"measures": ["mrr", "activeSubs"],
"dimension": "date",
"granularity": "week",
"timeRange": "90d"
}Which app has the best ROAS?
rh_query {
"measures": ["roas", "adSpend", "proceeds"],
"dimension": "app",
"timeRange": "90d",
"orderBy": { "measure": "roas", "dir": "desc" },
"limit": 10
}Why did revenue drop?
Start by app, then repeat with "dimension": "country" or "product" to localize it. The most negative proceeds_delta names the cause.
rh_query {
"measures": ["proceeds", "refunds"],
"dimension": "app",
"timeRange": "30d",
"compareTo": "prior_period",
"orderBy": { "measure": "proceeds", "dir": "asc" },
"limit": 10
}How is the trial funnel converting?
rh_query {
"measures": ["trials", "trialConversion", "newCustomers", "churnRate"],
"dimension": "app",
"timeRange": "qtd"
}Which campaign pays back?
rh_query {
"measures": ["installs", "cac", "roas", "payback"],
"dimension": "campaign",
"timeRange": "90d",
"filters": [{ "field": "app", "op": "eq", "value": "<app id>" }],
"orderBy": { "measure": "cac", "dir": "asc" },
"limit": 15
}Is revenue concentrated in one country?
rh_query {
"measures": ["proceeds", "units"],
"dimension": "country",
"timeRange": "ytd",
"orderBy": { "measure": "proceeds", "dir": "desc" },
"limit": 10
}A custom date range
rh_query {
"measures": ["proceeds", "gross"],
"from": "2026-07-01",
"to": "2026-09-30"
}Store funnel for one app
rh_query {
"measures": ["impressions", "pageViews", "downloads", "redownloads", "deletions", "crashes"],
"filters": [{ "field": "app", "op": "eq", "value": "<app id>" }],
"timeRange": "30d",
"compareTo": "prior_period"
}What are users saying in reviews?
rh_reviews { "app": "com.example.app", "maxRating": 2, "query": "crash", "hasResponse": false }What bugs have users reported?
rh_feedback { "kind": "bug", "status": "open", "unread": true }Is my paywall test a winner?
rh_experiment_results { "status": "running" }
rh_experiment_results { "experimentId": "<experiment id>" }Read analysis.leadingSignificantVariant and analysis.srmFlagged. Do not call a winner while srmFlagged is true.
When is my next Apple payment?
rh_payouts { "limit": 3 }Create a key for a feedback form
rh_create_api_key { "name": "Web feedback form", "mode": "live" }Related
Last updated on
MCP tools reference
Every tool the RevenueHog MCP server exposes, from rh_query and rh_meta to reviews, feedback, experiments, payouts and API keys, with arguments and outputs.
Claude Code
Install the RevenueHog plugin in Claude Code to get the MCP connector and four skills, authenticate with an MCP token, update it, or copy skills by hand.