How to set the Redemption Ratio for a loyalty program — working from reward cost and margin to a ratio members find worth chasing.
Overview
The Redemption Ratio is how many points make one dollar of redeemable value. The field on the
Reward Bank extension holds one whole number, not a pair like 10:1. The default is 1 — one
point is worth one dollar. Set it to 10 and ten points are worth one dollar.Two numbers decide what a member experiences, and neither means anything alone:
The earn rate on each Collectible Reward — how many points an action gives.
The Redemption Ratio on the Reward Bank — what those points are worth when the member spends
them.
There is no correct pair in the abstract. The one that works is where the cost per way to earn
is sustainable for you and the reward is reachable for the member. This page describes how to get
to those numbers.
Work Backward From the Reward
Start at the end. Decide what the first meaningful reward is and what it costs you, then work back
to the ways to earn.
Pick the first reward a member should reach. Something they would genuinely want — a $10
coupon, a free product, a shipping credit.
Estimate what it costs you. Include fulfillment fees and the incremental cost of the reward.
For a coupon or credit, model expected redemption and purchase behavior rather than treating
retail value or gross margin as the cost by itself.
Decide how long it should take. Make the reward reachable within a timeframe that matches
how often members normally interact with you, while keeping the cost sustainable.
Divide. The points earned across those interactions, set against the reward’s point cost,
gives you the earn rate.
Set the Cost per Action
Once you have the earn rate, price each way to earn against it.Purchases are usually the anchor. A dynamic Collectible Reward calculates point value as a
percentage of transaction value. The program’s realized cost also depends on the Redemption Ratio,
how much issued value members redeem, and the cost of the reward they choose.Non-purchase actions are priced differently. A review or a profile completion has no transaction
value, so price it against what the action is worth to you — the conversion lift from having
reviews, or the targeting value of the data.
Price every dynamic reward with a maximum per transaction. Without a deliberate cap, an unusually
large order issues an unusually large reward, and the exposure scales with your best customers’
order values.
Make the Numbers Legible
Numbers members cannot do arithmetic on are numbers they will not chase.
Round numbers beat precise ones. An earn rate of ten points per dollar is easier to hold in your head than 7.5.
State the reward, not the rate alone. “500 points gets you a $10 coupon” tells a member more than “10 points per dollar”.
Keep one earn rate where you can. A single rate across every way to earn is easier to communicate than a different rate for each.
Decide the First Threshold
The minimum redemption amount decides how long a member holds a balance before they can do anything
with it.Set it too low and members redeem constantly for trivial value, and the program costs you a
transaction fee each time without building any habit. Set it too high and members give up before
reaching it, leaving you with a growing balance of points that were never worth anything to
anybody.The minimum and maximum are configured as Redemption Minimum Value and Redemption Maximum
Value alongside the ratio. Setting either to 0 disables it.
Watch What Happens After Launch
The numbers you launch with are a hypothesis. Check them against these:
Share of issued value redeemed. A low figure can mean the threshold is out of reach, the
rewards are not wanted, or members have not had enough time to accumulate points.
Time to first redemption. How long a member takes to reach their first reward. If it is far longer than you designed for, the earn rate is too thin.
Unredeemed value. Interpret the trend alongside member growth, seasonality, and time since
launch.
Cost per way to earn. What each one is actually costing, against what you modeled.
Changing the Redemption Ratio changes the value of points members already hold, so treat it as a
policy change rather than a configuration tweak.Before changing a live ratio:
Check what your program terms say about changes to point value.
Prefer changing what points are worth going forward over revaluing existing balances.
Consider adjusting earn rates on individual actions instead, which leaves the value of held points untouched.
Tell members before it takes effect.
The Redemption Ratio belongs to the Reward Bank, not to an individual campaign variant. Test a new
ratio in a sandbox or separately targeted Reward Bank before changing the live bank. See
Testing Your Loyalty Program.
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"Extole Documentation","description":"Guides, product documentation, and API reference for the Extole platform.","colors":{"primary":"#ee0049","light":"#ee0049","dark":"#ee0049"},"logo":{"light":"https://mintcdn.com/extole/qEcOgc0BuXrP2LAU/extole-logo.png?fit=max\u0026auto=format\u0026n=qEcOgc0BuXrP2LAU\u0026q=85\u0026s=d7152863dcc1c598d4fac27f91b3658e","dark":"https://mintcdn.com/extole/qEcOgc0BuXrP2LAU/extole-logo.png?fit=max\u0026auto=format\u0026n=qEcOgc0BuXrP2LAU\u0026q=85\u0026s=d7152863dcc1c598d4fac27f91b3658e","href":"/"},"favicon":{"light":"https://mintcdn.com/extole/qEcOgc0BuXrP2LAU/Extole-icon-bug.svg?fit=max\u0026auto=format\u0026n=qEcOgc0BuXrP2LAU\u0026q=85\u0026s=963cb7a87707b61559c35c47c8d7fd14","dark":"https://mintcdn.com/extole/qEcOgc0BuXrP2LAU/Extole-icon-bug.svg?fit=max\u0026auto=format\u0026n=qEcOgc0BuXrP2LAU\u0026q=85\u0026s=963cb7a87707b61559c35c47c8d7fd14"},"api":{"url":"full"},"navbar":{"links":[{"href":"https://github.com/extole","label":"GitHub"},{"href":"https://my.extole.com","label":"My Extole"},{"href":"#request-sandbox","label":"Request Sandbox"}]},"footer":{"socials":{"github":"https://github.com/extole"}},"fonts":{"heading":{"family":"Space Mono","weight":700},"body":{"family":"Poppins","weight":400}},"integrations":{"ga4":{"measurementId":"G-7QCR5R4J61"}},"contextual":{"options":["copy","assistant","download-spec","chatgpt","claude","cursor"],"display":"header"},"styling":{"latex":false},"navigation":{"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"extole","hasAudioNarration":false,"actualSubdomain":"extole","customDomains":["docs.extole.com"],"gitSource":{"type":"github","owner":"extole","repo":"product-docs","deployBranch":"main","contentDirectory":"","isPrivate":false,"mountPath":"","label":""},"feedback":{"agentFeedback":true,"thumbs":true,"issues":true,"edits":true},"entitlements":{"AI_CHAT":{"status":"ENABLED"},"WEB_MCP":{"status":"ENABLED"},"NARRATION":{"status":"ENABLED"}},"buildId":"6af73dade90c1f4f013fb9d8","clientVersion":"0.0.4143","searchFilterCounts":[{"language":"default","tag":"API Reference","count":447},{"language":"default","tag":"Management API","count":310},{"language":"default","tag":"Guides","count":253},{"language":"default","tag":"Technical Docs","count":132},{"language":"default","tag":"Server to Extole API","count":72},{"language":"default","tag":"Programs \u0026 Campaigns","count":58},{"language":"default","tag":"Dashboards and Reporting","count":57},{"language":"default","tag":"Product Docs","count":56},{"language":"default","tag":"Components","count":49},{"language":"default","tag":"Product Overview","count":40}],"searchSettings":{"maxResults":20,"showContentSnippets":true,"isFiltersEnabled":true}},"assistantConfig":{"enableAskAiButton":false,"enableStarterQuestions":false,"enableContextualStarterQuestions":false,"enableAskAiSearchBar":true},"basePath":"","hasChatPermissions":true,"hasWebMcpPermissions":true,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-rbac-roles","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-mintlify-slack","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-integrations-settings","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"rbac-expansion","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-pr-grouping","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-prefix","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"analytics-v7","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"user-flows-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"no-publish-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-onboarding","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving-live","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"stripTemperatureMiddleware","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"support-platform-pylon-zendesk","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"instant-rollback","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications-server","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-fable","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fixed-ai-action-pricing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automation-resolve-merge-conflict","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"scoped-publishing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"mintql","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"page-level-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-version-history-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-page-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"full-page-search","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workspace-projects","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"assistant-v5","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fork-pr-previews","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"revalidation-jwt","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-sso-scim","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"hobby-abuse-scan","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"dashboard-inbox","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-signup","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-dual-write","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-enabled","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"approve-review-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-metadata","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"sso-setup-deadline-banner","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-serve","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"live-agents","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"llms-txt-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"googleFontsInlined":true},"customCss":[{"filePath":"public/style.css","content":"/* devanagari */\n@font-face {\n font-family: 'Poppins';\n font-style: italic;\n font-weight: 400;\n font-display: swap;\n src: url(/_mintlify/assets/fonts/google/s/poppins/v24/pxiGyp8kv8JHgFVrJJLucXtAKPY.woff2) format('woff2');\n unicode-range: U+0900-097F, U+1CD0-1CF4, U+1CF7-1CF9, U+200C-200D, U+20A8, U+20B9, U+20F0, U+25CC, U+A830-A839, U+A8E0-A8FF, U+11B00-11B0A;\n}\n/* latin-ext */\n@font-face {\n font-family: 'Poppins';\n font-style: italic;\n font-weight: 400;\n font-display: swap;\n src: url(/_mintlify/assets/fonts/google/s/poppins/v24/pxiGyp8kv8JHgFVrJJLufntAKPY.woff2) format('woff2');\n unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;\n}\n/* latin */\n@font-face {\n font-family: 'Poppins';\n font-style: italic;\n font-weight: 400;\n font-display: swap;\n src: url(/_mintlify/assets/fonts/google/s/poppins/v24/pxiGyp8kv8JHgFVrJJLucHtA.woff2) format('woff2');\n unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;\n}\n/* devanagari */\n@font-face {\n font-family: 'Poppins';\n font-style: italic;\n font-weight: 500;\n font-display: swap;\n src: url(/_mintlify/assets/fonts/google/s/poppins/v24/pxiDyp8kv8JHgFVrJJLmg1hVFteOcEg.woff2) format('woff2');\n unicode-range: U+0900-097F, U+1CD0-1CF4, U+1CF7-1CF9, U+200C-200D, U+20A8, U+20B9, U+20F0, U+25CC, U+A830-A839, U+A8E0-A8FF, U+11B00-11B0A;\n}\n/* latin-ext */\n@font-face {\n font-family: 'Poppins';\n font-style: italic;\n font-weight: 500;\n font-display: swap;\n src: url(/_mintlify/assets/fonts/google/s/poppins/v24/pxiDyp8kv8JHgFVrJJLmg1hVGdeOcEg.woff2) format('woff2');\n unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;\n}\n/* latin */\n@font-face {\n font-family: 'Poppins';\n font-style: italic;\n font-weight: 500;\n font-display: swap;\n src: url(/_mintlify/assets/fonts/google/s/poppins/v24/pxiDyp8kv8JHgFVrJJLmg1hVF9eO.woff2) format('woff2');\n unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;\n}\n/* devanagari */\n@font-face {\n font-family: 'Poppins';\n font-style: italic;\n font-weight: 600;\n font-display: swap;\n src: url(/_mintlify/assets/fonts/google/s/poppins/v24/pxiDyp8kv8JHgFVrJJLmr19VFteOcEg.woff2) format('woff2');\n unicode-range: U+0900-097F, U+1CD0-1CF4, U+1CF7-1CF9, U+200C-200D, U+20A8, U+20B9, U+20F0, U+25CC, U+A830-A839, U+A8E0-A8FF, U+11B00-11B0A;\n}\n/* latin-ext */\n@font-face {\n font-family: 'Poppins';\n font-style: italic;\n font-weight: 600;\n font-display: swap;\n src: url(/_mintlify/assets/fonts/google/s/poppins/v24/pxiDyp8kv8JHgFVrJJLmr19VGdeOcEg.woff2) format('woff2');\n unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;\n}\n/* latin */\n@font-face {\n font-family: 'Poppins';\n font-style: italic;\n font-weight: 600;\n font-display: swap;\n src: url(/_mintlify/assets/fonts/google/s/poppins/v24/pxiDyp8kv8JHgFVrJJLmr19VF9eO.woff2) format('woff2');\n unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;\n}\n/* devanagari */\n@font-face {\n font-family: 'Poppins';\n font-style: italic;\n font-weight: 700;\n font-display: swap;\n src: url(/_mintlify/assets/fonts/google/s/poppins/v24/pxiDyp8kv8JHgFVrJJLmy15VFteOcEg.woff2) format('woff2');\n unicode-range: U+0900-097F, U+1CD0-1CF4, U+1CF7-1CF9, U+200C-200D, U+20A8, U+20B9, U+20F0, U+25CC, U+A830-A839, U+A8E0-A8FF, U+11B00-11B0A;\n}\n/* latin-ext */\n@font-face {\n font-family: 'Poppins';\n font-style: italic;\n font-weight: 700;\n font-display: swap;\n src: url(/_mintlify/assets/fonts/google/s/poppins/v24/pxiDyp8kv8JHgFVrJJLmy15VGdeOcEg.woff2) format('woff2');\n unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;\n}\n/* latin */\n@font-face {\n font-family: 'Poppins';\n font-style: italic;\n font-weight: 700;\n font-display: swap;\n src: url(/_mintlify/assets/fonts/google/s/poppins/v24/pxiDyp8kv8JHgFVrJJLmy15VF9eO.woff2) format('woff2');\n unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;\n}\n/* devanagari */\n@font-face {\n font-family: 'Poppins';\n font-style: normal;\n font-weight: 400;\n font-display: swap;\n src: url(/_mintlify/assets/fonts/google/s/poppins/v24/pxiEyp8kv8JHgFVrJJbecmNE.woff2) format('woff2');\n unicode-range: U+0900-097F, U+1CD0-1CF4, U+1CF7-1CF9, U+200C-200D, U+20A8, U+20B9, U+20F0, U+25CC, U+A830-A839, U+A8E0-A8FF, U+11B00-11B0A;\n}\n/* latin-ext */\n@font-face {\n font-family: 'Poppins';\n font-style: normal;\n font-weight: 400;\n font-display: swap;\n src: url(/_mintlify/assets/fonts/google/s/poppins/v24/pxiEyp8kv8JHgFVrJJnecmNE.woff2) format('woff2');\n unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;\n}\n/* latin */\n@font-face {\n font-family: 'Poppins';\n font-style: normal;\n font-weight: 400;\n font-display: swap;\n src: url(/_mintlify/assets/fonts/google/s/poppins/v24/pxiEyp8kv8JHgFVrJJfecg.woff2) format('woff2');\n unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;\n}\n/* devanagari */\n@font-face {\n font-family: 'Poppins';\n font-style: normal;\n font-weight: 500;\n font-display: swap;\n src: url(/_mintlify/assets/fonts/google/s/poppins/v24/pxiByp8kv8JHgFVrLGT9Z11lFc-K.woff2) format('woff2');\n unicode-range: U+0900-097F, U+1CD0-1CF4, U+1CF7-1CF9, U+200C-200D, U+20A8, U+20B9, U+20F0, U+25CC, U+A830-A839, U+A8E0-A8FF, U+11B00-11B0A;\n}\n/* latin-ext */\n@font-face {\n font-family: 'Poppins';\n font-style: normal;\n font-weight: 500;\n font-display: swap;\n src: url(/_mintlify/assets/fonts/google/s/poppins/v24/pxiByp8kv8JHgFVrLGT9Z1JlFc-K.woff2) format('woff2');\n unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;\n}\n/* latin */\n@font-face {\n font-family: 'Poppins';\n font-style: normal;\n font-weight: 500;\n font-display: swap;\n src: url(/_mintlify/assets/fonts/google/s/poppins/v24/pxiByp8kv8JHgFVrLGT9Z1xlFQ.woff2) format('woff2');\n unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;\n}\n/* devanagari */\n@font-face {\n font-family: 'Poppins';\n font-style: normal;\n font-weight: 600;\n font-display: swap;\n src: url(/_mintlify/assets/fonts/google/s/poppins/v24/pxiByp8kv8JHgFVrLEj6Z11lFc-K.woff2) format('woff2');\n unicode-range: U+0900-097F, U+1CD0-1CF4, U+1CF7-1CF9, U+200C-200D, U+20A8, U+20B9, U+20F0, U+25CC, U+A830-A839, U+A8E0-A8FF, U+11B00-11B0A;\n}\n/* latin-ext */\n@font-face {\n font-family: 'Poppins';\n font-style: normal;\n font-weight: 600;\n font-display: swap;\n src: url(/_mintlify/assets/fonts/google/s/poppins/v24/pxiByp8kv8JHgFVrLEj6Z1JlFc-K.woff2) format('woff2');\n unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;\n}\n/* latin */\n@font-face {\n font-family: 'Poppins';\n font-style: normal;\n font-weight: 600;\n font-display: swap;\n src: url(/_mintlify/assets/fonts/google/s/poppins/v24/pxiByp8kv8JHgFVrLEj6Z1xlFQ.woff2) format('woff2');\n unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;\n}\n/* devanagari */\n@font-face {\n font-family: 'Poppins';\n font-style: normal;\n font-weight: 700;\n font-display: swap;\n src: url(/_mintlify/assets/fonts/google/s/poppins/v24/pxiByp8kv8JHgFVrLCz7Z11lFc-K.woff2) format('woff2');\n unicode-range: U+0900-097F, U+1CD0-1CF4, U+1CF7-1CF9, U+200C-200D, U+20A8, U+20B9, U+20F0, U+25CC, U+A830-A839, U+A8E0-A8FF, U+11B00-11B0A;\n}\n/* latin-ext */\n@font-face {\n font-family: 'Poppins';\n font-style: normal;\n font-weight: 700;\n font-display: swap;\n src: url(/_mintlify/assets/fonts/google/s/poppins/v24/pxiByp8kv8JHgFVrLCz7Z1JlFc-K.woff2) format('woff2');\n unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;\n}\n/* latin */\n@font-face {\n font-family: 'Poppins';\n font-style: normal;\n font-weight: 700;\n font-display: swap;\n src: url(/_mintlify/assets/fonts/google/s/poppins/v24/pxiByp8kv8JHgFVrLCz7Z1xlFQ.woff2) format('woff2');\n unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;\n}\n/* vietnamese */\n@font-face {\n font-family: 'Space Mono';\n font-style: italic;\n font-weight: 400;\n font-display: swap;\n src: url(/_mintlify/assets/fonts/google/s/spacemono/v17/i7dNIFZifjKcF5UAWdDRYERMSHK_IwU.woff2) format('woff2');\n unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;\n}\n/* latin-ext */\n@font-face {\n font-family: 'Space Mono';\n font-style: italic;\n font-weight: 400;\n font-display: swap;\n src: url(/_mintlify/assets/fonts/google/s/spacemono/v17/i7dNIFZifjKcF5UAWdDRYERMSXK_IwU.woff2) format('woff2');\n unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;\n}\n/* latin */\n@font-face {\n font-family: 'Space Mono';\n font-style: italic;\n font-weight: 400;\n font-display: swap;\n src: url(/_mintlify/assets/fonts/google/s/spacemono/v17/i7dNIFZifjKcF5UAWdDRYERMR3K_.woff2) format('woff2');\n unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;\n}\n/* vietnamese */\n@font-face {\n font-family: 'Space Mono';\n font-style: italic;\n font-weight: 700;\n font-display: swap;\n src: url(/_mintlify/assets/fonts/google/s/spacemono/v17/i7dSIFZifjKcF5UAWdDRYERE_FeqEySRV3U.woff2) format('woff2');\n unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;\n}\n/* latin-ext */\n@font-face {\n font-family: 'Space Mono';\n font-style: italic;\n font-weight: 700;\n font-display: swap;\n src: url(/_mintlify/assets/fonts/google/s/spacemono/v17/i7dSIFZifjKcF5UAWdDRYERE_FeqEiSRV3U.woff2) format('woff2');\n unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;\n}\n/* latin */\n@font-face {\n font-family: 'Space Mono';\n font-style: italic;\n font-weight: 700;\n font-display: swap;\n src: url(/_mintlify/assets/fonts/google/s/spacemono/v17/i7dSIFZifjKcF5UAWdDRYERE_FeqHCSR.woff2) format('woff2');\n unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;\n}\n/* vietnamese */\n@font-face {\n font-family: 'Space Mono';\n font-style: normal;\n font-weight: 400;\n font-display: swap;\n src: url(/_mintlify/assets/fonts/google/s/spacemono/v17/i7dPIFZifjKcF5UAWdDRYE58RWq7.woff2) format('woff2');\n unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;\n}\n/* latin-ext */\n@font-face {\n font-family: 'Space Mono';\n font-style: normal;\n font-weight: 400;\n font-display: swap;\n src: url(/_mintlify/assets/fonts/google/s/spacemono/v17/i7dPIFZifjKcF5UAWdDRYE98RWq7.woff2) format('woff2');\n unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;\n}\n/* latin */\n@font-face {\n font-family: 'Space Mono';\n font-style: normal;\n font-weight: 400;\n font-display: swap;\n src: url(/_mintlify/assets/fonts/google/s/spacemono/v17/i7dPIFZifjKcF5UAWdDRYEF8RQ.woff2) format('woff2');\n unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;\n}\n/* vietnamese */\n@font-face {\n font-family: 'Space Mono';\n font-style: normal;\n font-weight: 700;\n font-display: swap;\n src: url(/_mintlify/assets/fonts/google/s/spacemono/v17/i7dMIFZifjKcF5UAWdDRaPpZUFqaHjyV.woff2) format('woff2');\n unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;\n}\n/* latin-ext */\n@font-face {\n font-family: 'Space Mono';\n font-style: normal;\n font-weight: 700;\n font-display: swap;\n src: url(/_mintlify/assets/fonts/google/s/spacemono/v17/i7dMIFZifjKcF5UAWdDRaPpZUFuaHjyV.woff2) format('woff2');\n unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;\n}\n/* latin */\n@font-face {\n font-family: 'Space Mono';\n font-style: normal;\n font-weight: 700;\n font-display: swap;\n src: url(/_mintlify/assets/fonts/google/s/spacemono/v17/i7dMIFZifjKcF5UAWdDRaPpZUFWaHg.woff2) format('woff2');\n unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;\n}\n:root{--extole-coral: #ee0049;--extole-navy: #0b123d;--extole-primary-fill: #ee0049;--extole-icon-navy-bg: #0b123d;--extole-slate: #7d90a4;--extole-ink: #151a2d;--extole-muted: #4f5c6d;--extole-page-bg: #faf9f7;--extole-card-bg: #faf9f7;--extole-surface: #ffffff;--extole-surface-muted: rgba(255, 255, 255, 0.45);--extole-logo-bg: #ffffff;--extole-secondary-bg: #ffffff;--extole-border: #e2e2e0;--extole-border-strong: #d0dae6;--extole-shadow: 0 16px 44px rgba(11, 18, 61, 0.08);--extole-hero-shadow: 0 10px 32px rgba(11, 18, 61, 0.06);--extole-radius: 16px;--extole-heading-font: \"Space Mono\", \"SFMono-Regular\", Menlo, Monaco, Consolas, monospace}html,body{background:var(--extole-page-bg)}html:not(.dark):not([data-theme=\"dark\"]):not([data-color-mode=\"dark\"]) #background-color{background-color:var(--extole-page-bg)!important}body{color:var(--extole-ink);font-family:\"Poppins\", \"Inter\", \"Montserrat\", \"Segoe UI\", sans-serif}.dark body,html.dark body,body.dark,:root[data-theme=\"dark\"] body,[data-theme=\"dark\"] body,[data-color-mode=\"dark\"] body{background:#0f1526}.nav-logo{height:24px!important;max-width:84px!important;object-fit:contain}.extole-home{color:var(--extole-ink);color-scheme:light;max-width:1440px;margin:0 auto;padding:16px 16px 96px;width:100%}.dark .extole-home,html.dark .extole-home,body.dark .extole-home,:root[data-theme=\"dark\"] .extole-home,[data-theme=\"dark\"] .extole-home,[data-color-mode=\"dark\"] .extole-home,body[data-theme=\"dark\"] .extole-home,html[data-theme=\"dark\"] .extole-home{--extole-coral: #ee0049;--extole-navy: #f3f6ff;--extole-primary-fill: #ee0049;--extole-icon-navy-bg: #263455;--extole-slate: #9cacbf;--extole-ink: #e5ebf7;--extole-muted: #b4bfd2;--extole-card-bg: #151c31;--extole-surface: #1d263d;--extole-surface-muted: rgba(255, 255, 255, 0.06);--extole-logo-bg: rgba(248, 250, 255, 0.96);--extole-secondary-bg: rgba(255, 255, 255, 0.03);--extole-border: rgba(178, 191, 216, 0.16);--extole-border-strong: rgba(205, 218, 242, 0.28);--extole-shadow: 0 20px 48px rgba(0, 0, 0, 0.36);--extole-hero-shadow: 0 16px 36px rgba(0, 0, 0, 0.28);color-scheme:dark}.extole-hero{display:grid;grid-template-columns:minmax(0, 1.12fr) minmax(420px, 0.88fr);gap:28px;align-items:stretch}.extole-hero-copy,.extole-code-panel{border:1px solid var(--extole-border);border-radius:24px;box-shadow:var(--extole-hero-shadow)}.extole-hero-copy{min-height:0;padding:46px 43px;background:var(--extole-card-bg)}.extole-kicker,.extole-code-kicker{margin:0 0 18px;color:var(--extole-coral);font-size:13px;font-weight:700;letter-spacing:0.12em;text-transform:uppercase}.extole-hero h1,.extole-section h2{color:var(--extole-navy);font-family:var(--extole-heading-font);font-weight:700;letter-spacing:-0.01em}.extole-hero h1{max-width:720px;margin:0 0 17px;font-size:clamp(1.9rem, 3vw, 2.7rem);line-height:1.15}.extole-lede{max-width:58ch;margin:0;color:var(--extole-muted);font-size:1.04rem;line-height:1.65}.extole-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:31px}.extole-btn{display:inline-flex;min-height:48px;min-width:178px;align-items:center;justify-content:center;border-radius:12px;padding:0 20px;font-family:var(--extole-heading-font);font-size:15px;font-weight:600;text-decoration:none!important;transition:transform 160ms ease, box-shadow 160ms ease, border-color 160ms ease}.extole-btn:hover{transform:translateY(-1px)}.extole-btn-primary{background:var(--extole-primary-fill);color:#ffffff!important;box-shadow:0 10px 22px rgba(11, 18, 61, 0.22)}.extole-btn-secondary{border:1px solid var(--extole-border-strong);background:var(--extole-secondary-bg);color:var(--extole-navy)!important}.extole-sandbox{margin-top:30px;color:var(--extole-muted);font-size:0.92rem}.extole-sandbox a{color:var(--extole-navy);font-weight:600}.extole-code-panel{max-height:500px;min-width:0;overflow:hidden;padding:30px 26px;background:radial-gradient(circle at 90% 0%, rgba(224, 0, 73, 0.36), transparent 38%),\n linear-gradient(160deg, #131a47 0%, #0b123d 56%, #070c28 100%);color:#ffffff}.extole-code-kicker{color:#93a4d2}.extole-code-panel [class*=\"codeblock\"],.extole-code-panel pre,.extole-code-panel code{font-family:\"Space Mono\", \"SFMono-Regular\", Consolas, monospace!important}.extole-code-panel pre{background:transparent!important;color:#d4d4d4;font-size:0.84rem;line-height:1.65;margin:0;max-height:365px;overflow-x:hidden;overflow-y:auto;scrollbar-color:rgba(160, 173, 205, 0.3) rgba(8, 14, 39, 0.28);scrollbar-width:thin;text-align:left;white-space:pre;word-break:normal}.extole-code-panel .line{display:block;min-height:1.65em}.extole-code-panel .tok-comment{color:#6a9955}.extole-code-panel .tok-keyword,.extole-code-panel .tok-tag{color:#569cd6}.extole-code-panel .tok-attr,.extole-code-panel .tok-property,.extole-code-panel .tok-variable{color:#9cdcfe}.extole-code-panel .tok-string{color:#ce9178}.extole-code-panel .tok-function{color:#dcdcaa}.extole-code-panel .tok-number{color:#b5cea8}.extole-code-panel .tok-type{color:#4ec9b0}.extole-code-panel pre::-webkit-scrollbar{width:8px}.extole-code-panel pre::-webkit-scrollbar-track{background:rgba(8, 14, 39, 0.28);border-radius:10px}.extole-code-panel pre::-webkit-scrollbar-thumb{background:rgba(160, 173, 205, 0.3);border-radius:10px}.extole-code-tabs{display:flex;gap:18px;margin-bottom:18px;border-bottom:1px solid rgba(138, 156, 201, 0.24)}.extole-code-tab{display:inline-flex;padding-bottom:10px;color:#9fb0dd;cursor:pointer;font-family:var(--extole-heading-font);font-size:0.78rem}.extole-tab-radio{block-size:1px;inline-size:1px;margin:0;opacity:0;overflow:hidden;pointer-events:none;position:absolute}.extole-code-block{display:none}#extole-code-tab-js:checked~.extole-code-tabs .extole-code-tab[for=\"extole-code-tab-js\"],#extole-code-tab-react-native:checked~.extole-code-tabs .extole-code-tab[for=\"extole-code-tab-react-native\"],#extole-code-tab-ios:checked~.extole-code-tabs .extole-code-tab[for=\"extole-code-tab-ios\"],#extole-code-tab-android:checked~.extole-code-tabs .extole-code-tab[for=\"extole-code-tab-android\"]{border-bottom:2px solid #f5e7a5;color:#f4f8ff}#extole-code-tab-js:checked~.extole-code-block-js,#extole-code-tab-react-native:checked~.extole-code-block-react-native,#extole-code-tab-ios:checked~.extole-code-block-ios,#extole-code-tab-android:checked~.extole-code-block-android{display:block}.extole-link-strip{display:grid;grid-template-columns:repeat(4, minmax(0, 1fr));margin-top:42px;overflow:hidden;border:1px solid var(--extole-border);border-radius:24px;background:var(--extole-card-bg)}.extole-link-strip a{display:flex;min-height:78px;align-items:center;gap:14px;padding:18px 24px;color:var(--extole-ink);text-decoration:none!important}.extole-link-strip a+a{border-left:1px solid var(--extole-border)}.extole-link-strip strong{font-family:var(--extole-heading-font);font-size:15px;letter-spacing:0}.extole-icon{display:inline-flex;width:38px;height:38px;flex:0 0 38px;align-items:center;justify-content:center;border-radius:11px;color:#fff;font-size:13px;font-weight:800}.extole-icon svg,.extole-support-icon svg{display:block;height:22px;width:22px;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8}.extole-icon span{line-height:1}.extole-icon-navy{background:var(--extole-icon-navy-bg)}.extole-icon-gray{background:#7c8191}.extole-icon-pink{background:var(--extole-coral)}.extole-icon-blue{background:#a7d8eb}.extole-icon-yellow{background:#fee64b;color:var(--extole-ink)}.extole-icon-react{background:#0b1748;color:#61dafb}.extole-icon-black{background:#171717}.extole-icon-green{background:#9fcb4a}.extole-section{margin-top:50px;padding:50px 0}.extole-section h2{margin:0;font-size:clamp(1.35rem, 2vw, 1.9rem);line-height:1.2}.extole-section>p:not(.extole-kicker){max-width:720px;margin:16px 0 28px;color:var(--extole-muted);font-size:17px}.extole-pattern-grid{display:grid;grid-template-columns:repeat(2, minmax(0, 1fr));gap:18px}.extole-stack-layout{display:grid;gap:14px}.extole-stack-pattern{background:var(--extole-card-bg);border:1px solid var(--extole-border);border-radius:var(--extole-radius);display:grid;gap:20px;grid-template-columns:minmax(0, 30%) minmax(0, 70%);padding:24px}.extole-stack-pattern-head h3{color:var(--extole-navy);font-family:var(--extole-heading-font);margin:0 0 10px}.extole-stack-pattern-head p{color:var(--extole-muted);font-size:0.9rem;line-height:1.55;margin:0}.extole-stack-pattern-groups{display:grid;gap:12px;grid-template-columns:repeat(2, minmax(0, 1fr))}.extole-stack-group{background:var(--extole-surface);border:1px solid var(--extole-border);border-radius:12px;padding:12px 14px}.extole-stack-group-title{color:var(--extole-muted);font-family:var(--extole-heading-font);font-size:0.68rem;font-weight:600;letter-spacing:0.08em;line-height:1.2;margin:0 0 9px;text-transform:uppercase}.extole-stack-group ul{list-style:none!important;margin:0;padding:0!important}.extole-stack-group li+li{border-top:1px solid var(--extole-border);margin-top:7px;padding-top:7px}.extole-stack-group a,.extole-devhub a:not(.extole-btn):not(.extole-partner-item):not(.extole-pattern-card){color:var(--extole-navy);font-weight:600;text-decoration:underline;text-decoration-color:rgba(11, 18, 61, 0.35);text-decoration-thickness:1px;text-underline-offset:2px}.extole-stack-group a:hover,.extole-devhub a:not(.extole-btn):not(.extole-partner-item):not(.extole-pattern-card):hover{color:var(--extole-coral);text-decoration-color:rgba(238, 0, 73, 0.65)}.extole-partner-filter-layout{align-items:start;display:grid;gap:20px;grid-template-columns:minmax(220px, 260px) minmax(0, 1fr)}.extole-partner-filter-panel{display:grid;gap:10px}.extole-partner-filter-title{color:var(--extole-navy);font-family:var(--extole-heading-font);font-size:0.9rem;margin:0}.extole-partner-filter-copy{color:var(--extole-muted);font-size:0.86rem;line-height:1.45;margin:-2px 0 4px}.extole-partner-filter-option{align-items:self-end;color:var(--extole-muted);column-gap:10px;cursor:pointer;display:grid;grid-template-columns:16px minmax(0, 1fr);line-height:1.35}.extole-partner-filter-option span{font-family:var(--extole-heading-font);font-size:0.74rem;line-height:1.25}.extole-partner-filter-input{accent-color:var(--extole-coral);height:16px;margin:2px 0 0;width:16px}.extole-partner-filter-option:has(.extole-partner-filter-input:checked){color:var(--extole-navy);font-weight:600}.extole-partner-surface{background:var(--extole-card-bg);border:1px solid var(--extole-border);border-radius:var(--extole-radius);padding:4px}.extole-partner-grid{display:grid;gap:8px;grid-template-columns:repeat(4, minmax(0, 1fr))}.extole-partner-item{border-radius:12px;color:var(--extole-navy);display:block;min-height:178px;padding:14px 16px;text-decoration:none!important;transition:background-color 0.2s ease, box-shadow 0.2s ease}.extole-partner-item:hover{background:var(--extole-surface-muted);box-shadow:0 8px 18px rgba(11, 18, 61, 0.08)}.extole-partner-logo{align-items:center;background:var(--extole-logo-bg);border:1px solid var(--extole-border);border-radius:10px;display:inline-flex;height:44px;justify-content:center;margin:0 0 12px;padding:8px 12px}.extole-partner-logo img{display:block;height:100%;max-width:120px;object-fit:contain;width:auto}.extole-partner-item h3{color:var(--extole-navy);font-family:var(--extole-heading-font);font-size:0.94rem;line-height:1.35;margin:0 0 8px}.extole-partner-item p{color:var(--extole-muted);font-size:0.82rem;line-height:1.45;margin:0}.extole-partner-filter-layout:has(#partner-filter-cep:checked) .extole-partner-item:not(.partner-cat-cep),.extole-partner-filter-layout:has(#partner-filter-ecommerce:checked) .extole-partner-item:not(.partner-cat-ecommerce),.extole-partner-filter-layout:has(#partner-filter-banking:checked) .extole-partner-item:not(.partner-cat-banking),.extole-partner-filter-layout:has(#partner-filter-cdp:checked) .extole-partner-item:not(.partner-cat-cdp),.extole-partner-filter-layout:has(#partner-filter-crm:checked) .extole-partner-item:not(.partner-cat-crm),.extole-partner-filter-layout:has(#partner-filter-rewards:checked) .extole-partner-item:not(.partner-cat-rewards),.extole-partner-filter-layout:has(#partner-filter-analytics:checked) .extole-partner-item:not(.partner-cat-analytics),.extole-partner-filter-layout:has(#partner-filter-tag:checked) .extole-partner-item:not(.partner-cat-tag),.extole-partner-filter-layout:has(#partner-filter-automation:checked) .extole-partner-item:not(.partner-cat-automation){display:none}.extole-support-grid{background:var(--extole-card-bg);border:1px solid var(--extole-border);border-radius:var(--extole-radius);display:grid;gap:18px;grid-template-columns:repeat(3, minmax(0, 1fr));margin-top:28px;padding:24px}.extole-pattern-card{display:block;min-height:100%;padding:24px;border:1px solid var(--extole-border);border-radius:var(--extole-radius);background:var(--extole-card-bg);box-shadow:0 8px 24px rgba(11, 18, 61, 0.05);color:var(--extole-ink);text-decoration:none!important}.extole-support-icon{align-items:center;border-radius:14px;color:#ffffff;display:inline-flex;height:44px;justify-content:center;margin-bottom:18px;width:44px}.extole-support-icon-help{background:var(--extole-coral)}.extole-support-icon-ticket{background:#3c4260}.extole-support-icon-status{background:#47b881}.extole-pattern-card h3{margin:0 0 12px;color:var(--extole-navy);font-family:var(--extole-heading-font);font-size:1.02rem}.extole-pattern-card p{margin:0;color:var(--extole-muted);font-size:0.93rem;line-height:1.6}.extole-card-cta{display:inline-flex;margin-top:16px;color:var(--extole-navy);font-family:var(--extole-heading-font);font-size:0.88rem;font-weight:600;text-decoration:underline;text-decoration-color:rgba(11, 18, 61, 0.35);text-decoration-thickness:1px;text-underline-offset:2px}@media (max-width: 1100px){.extole-hero{grid-template-columns:1fr}.extole-hero-copy{min-height:auto}}@media (max-width: 1024px){.extole-partner-grid{grid-template-columns:repeat(3, minmax(0, 1fr))}.extole-partner-filter-layout{grid-template-columns:minmax(190px, 230px) minmax(0, 1fr)}.extole-stack-pattern{gap:14px;grid-template-columns:1fr}}@media (max-width: 900px){.extole-stack-pattern-groups{grid-template-columns:1fr}.extole-partner-filter-layout{gap:14px;grid-template-columns:1fr}.extole-partner-filter-panel{grid-template-columns:repeat(2, minmax(0, 1fr))}.extole-partner-filter-title,.extole-partner-filter-copy{grid-column:1 / -1}}@media (max-width: 820px){.extole-home{padding:12px 14px 64px}.extole-hero-copy,.extole-code-panel{border-radius:18px;padding:28px 22px}.extole-link-strip,.extole-pattern-grid,.extole-support-grid{grid-template-columns:1fr}.extole-link-strip a+a{border-left:0;border-top:1px solid var(--extole-border)}}@media (max-width: 640px){.extole-section{margin-top:20px;padding:20px 0}.extole-partner-surface{padding:0}.extole-partner-grid{grid-template-columns:1fr}.extole-partner-filter-panel{display:none}.extole-partner-filter-layout{grid-template-columns:1fr}.extole-stack-pattern{padding:20px}.extole-stack-group{padding:11px 12px}.extole-btn{min-width:100%;width:100%}.extole-actions{flex-direction:column}}"},{"filePath":"style.css","content":".object-param-field [data-component-part=\"tabs-list\"]{display:none!important}[role=\"dialog\"] [data-component-part=\"tabs-list\"]:has([data-component-part=\"tab\"]:nth-child(2)),[role=\"dialog\"] [data-component-part=\"tabs-list\"]:has([role=\"tab\"]:nth-child(2)){position:absolute!important;left:0!important;top:0!important;width:1px!important;min-width:0!important;max-width:1px!important;height:1px!important;min-height:0!important;max-height:1px!important;padding:0!important;margin:0!important;overflow:hidden!important;clip:rect(0, 0, 0, 0)!important;clip-path:inset(50%)!important;white-space:nowrap!important;border:0!important;opacity:0!important;pointer-events:none!important}[role=\"dialog\"] [data-testid=\"api-input-type\"].extole-type-field-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0, 0, 0, 0)!important;clip-path:inset(50%)!important;white-space:nowrap!important;border:0!important;opacity:0!important;pointer-events:none!important}.extole-type-combo{display:flex;flex-wrap:wrap;gap:0.5rem;align-items:center;margin:0 0 0.75rem}.extole-type-combo label{font-size:0.75rem;font-weight:600;color:#78716c}html.dark .extole-type-combo label,html.dark .extole-type-combo-meta,html.dark .extole-type-combo-empty{color:#a8a29e}.extole-type-combo-wrap{position:relative;flex:1 1 16rem;min-width:16rem;cursor:pointer}.extole-type-combo-wrap input{box-sizing:border-box;width:100%;min-width:16rem;margin:0;padding:0.5rem 2rem 0.5rem 0.75rem;border:1px solid #d6d3d1;border-radius:0.5rem;background:#fff;color:inherit;font:inherit;font-family:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;font-size:0.8125rem;line-height:1.25rem;cursor:pointer}.extole-type-combo-wrap input:focus{cursor:text;outline:2px solid rgb(238 0 73 / 0.35);outline-offset:1px}html.dark .extole-type-combo-wrap input{border-color:#44403c;background:#1c1917}.extole-type-combo-wrap::after{content:\"\";position:absolute;top:50%;right:0.85rem;width:0;height:0;border-left:4px solid transparent;border-right:4px solid transparent;border-top:5px solid #78716c;transform:translateY(-50%);pointer-events:none}.extole-type-combo-menu{position:absolute;z-index:40;top:calc(100% + 0.25rem);left:0;right:0;max-height:18rem;overflow:auto;border:1px solid #d6d3d1;border-radius:0.5rem;background:#fff;box-shadow:0 10px 30px rgb(0 0 0 / 0.12)}html.dark .extole-type-combo-menu{border-color:#44403c;background:#1c1917}.extole-type-combo-menu button{display:block;width:100%;margin:0;padding:0.5rem 0.75rem;border:0;background:transparent;color:inherit;font:inherit;font-family:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;font-size:0.75rem;text-align:left;cursor:pointer}.extole-type-combo-menu button:hover,.extole-type-combo-menu button[aria-selected=\"true\"]{background:rgb(28 25 23 / 0.06);color:var(--api-ink)}html.dark .extole-type-combo-menu button:hover,html.dark .extole-type-combo-menu button[aria-selected=\"true\"]{background:rgb(255 255 255 / 0.08);color:var(--api-ink)}.extole-type-combo-empty{padding:0.75rem;font-size:0.75rem;color:#78716c}.extole-type-combo-meta{font-size:0.75rem;color:#78716c;font-variant-numeric:tabular-nums;white-space:nowrap;min-width:12ch}.extole-eval-combo{display:flex;flex-wrap:wrap;gap:0.5rem;align-items:center;margin:0 0 0.75rem}.extole-eval-combo-wrap{position:relative;flex:1 1 16rem;min-width:16rem}.extole-eval-combo-select{box-sizing:border-box;width:100%;min-width:16rem;margin:0;padding:0.5rem 2rem 0.5rem 0.75rem;border:1px solid #d6d3d1;border-radius:0.5rem;background:#fff;color:inherit;font:inherit;font-family:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;font-size:0.8125rem;line-height:1.25rem;appearance:none;cursor:pointer}.extole-eval-combo-select:focus{outline:2px solid rgb(238 0 73 / 0.35);outline-offset:1px}html.dark .extole-eval-combo-select{border-color:#44403c;background:#1c1917}.extole-eval-combo-wrap::after{content:\"\";position:absolute;top:50%;right:0.85rem;width:0;height:0;border-left:4px solid transparent;border-right:4px solid transparent;border-top:5px solid #78716c;transform:translateY(-50%);pointer-events:none}.extole-eval-map{margin:0.35rem 0 0.5rem}.extole-eval-map-list{display:flex;flex-direction:column;gap:0.5rem}.extole-eval-map-row{display:flex;flex-wrap:wrap;gap:0.4rem;align-items:center}.extole-eval-map-key,.extole-eval-map-type,.extole-eval-map-input{box-sizing:border-box;margin:0;padding:0.45rem 0.7rem;border:1px solid #d6d3d1;border-radius:0.5rem;background:#fff;color:inherit;font:inherit;font-family:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;font-size:0.8125rem;line-height:1.25rem}.extole-eval-map-key{width:7.5rem}.extole-eval-map-type{width:13.5rem;padding-right:1.6rem;appearance:auto;cursor:pointer}.extole-eval-map-val{display:flex;flex:1 1 12rem;min-width:10rem;align-items:center;border:1px solid #d6d3d1;border-radius:0.5rem;background:#fff}.extole-eval-map-val.is-invalid{border-color:#ee0049}.extole-eval-map-prefix{flex:0 0 auto;padding:0 0 0 0.65rem;color:#78716c;font-family:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;font-size:0.7rem;white-space:nowrap}.extole-eval-map-val .extole-eval-map-input{flex:1 1 auto;min-width:0;border:0;background:transparent}html.dark .extole-eval-map-key,html.dark .extole-eval-map-type,html.dark .extole-eval-map-val,html.dark .extole-eval-map-input{border-color:#44403c;background:#1c1917}html.dark .extole-eval-map-val .extole-eval-map-input{background:transparent}html.dark .extole-eval-map-remove{border-color:#44403c;color:#a8a29e}.extole-eval-map-key:focus,.extole-eval-map-type:focus,.extole-eval-map-val:focus-within{outline:2px solid rgb(238 0 73 / 0.35);outline-offset:1px}.extole-eval-map-hint{flex:1 0 100%;margin:0;font-size:0.75rem;color:#ee0049}.extole-eval-map-remove{width:2rem;height:2rem;padding:0;border:1px solid #d6d3d1;border-radius:0.5rem;background:transparent;color:#78716c;cursor:pointer;font-size:1rem;line-height:1}.extole-eval-map-add{margin:0.15rem 0 0;padding:0;border:0;background:transparent;color:#ee0049;font-size:0.8125rem;cursor:pointer}[data-testid=\"api-input-values\"].extole-eval-map-on>.grid{display:none!important}html[data-extole-driving] [role=\"menu\"]{display:none!important}select.extole-eval-native-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0, 0, 0, 0)!important;clip-path:inset(50%)!important;white-space:nowrap!important;border:0!important;opacity:0!important;pointer-events:none!important}:root{--api-ink: #1c1917;--api-body: #44403c;--api-meta: #57534e;--api-faint: #a8a29e;--api-accent: #b3003a;--api-warn: #b45309;--api-rule: #ded9d1;--api-rule-soft: #ebe7e1;--api-panel: transparent;--api-row: transparent;--api-wash: rgb(179 0 58 / 0.07);--api-row-pad: 0.625rem;--api-gap: 0.375rem}html.dark{--api-ink: #f5f3f1;--api-body: #d6d3d1;--api-meta: #a8a29e;--api-faint: #78716c;--api-accent: #ff7096;--api-warn: #fcd34d;--api-rule: #46403d;--api-rule-soft: #2f2a28;--api-panel: rgb(255 255 255 / 0.04);--api-row: rgb(255 255 255 / 0.022);--api-wash: rgb(255 112 150 / 0.10)}.primitive-param-field>.py-6,.object-param-field>.py-6,.array-param-field>.py-6{padding-block:var(--api-row-pad)}@supports selector(:has(*)){div:has(>.param-head){padding-block:var(--api-row-pad)}}.param-head>div{padding-block:0;margin-right:0}.param-head>div>div{row-gap:0.125rem;column-gap:0.5rem}.param-head [data-component-part=\"field-meta\"]>div{line-height:20px}.param-head~div:not(:empty){margin-top:var(--api-gap)}.param-head~div:not(:empty)>*{margin-top:0}.param-head~div:not(:empty)>*+*{margin-top:var(--api-gap)}.primitive-param-field,.object-param-field,.array-param-field{border-color:var(--api-rule-soft)}.api-section-heading>div{border-bottom:0}@supports selector(:has(*)){div:has(>.method-pill){border:0}}@supports selector(:has(*)){.object-param-field:not(:has(>.py-6)):has(.param-head){margin-block:var(--api-gap);border:1px solid var(--api-rule);border-radius:0.5rem;padding:0.5rem;background:var(--api-panel)}}@supports selector(:has(*)){.primitive-param-field:has(>.py-6),.array-param-field:has(>.py-6),.object-param-field:has(>.py-6){margin-block:var(--api-gap);border:1px solid var(--api-rule);border-radius:0.375rem;padding-inline:0.75rem;background:var(--api-row)}}.param-head [data-component-part=\"field-name\"]{color:var(--api-ink);font-weight:600;letter-spacing:-0.006em}.param-head{word-break:normal;overflow-wrap:anywhere}.param-head [data-component-part=\"field-required-pill\"]{padding:0;border:0;border-radius:0;background:none;color:var(--api-meta);font-weight:500}.param-head [data-component-part=\"field-info-pill\"]+[data-component-part=\"field-required-pill\"]::before{content:\"\\00B7\";margin-right:0.35em;color:var(--api-faint)}.param-head[id^=\"response-\"] [data-component-part=\"field-required-pill\"]{display:none}.param-head [data-component-part=\"field-info-pill\"]{padding:0;border-radius:0;background:none;color:var(--api-meta);font-weight:500}.param-head [data-component-part=\"field-info-pill\"]+[data-component-part=\"field-info-pill\"]::before{content:\"\\00B7\";margin-right:0.35em;color:var(--api-faint)}.param-head [data-component-part=\"field-meta\"]>:last-child{margin-right:0}.param-head [data-component-part=\"field-meta-pre\"],.param-head [data-component-part=\"field-meta-post\"]{font-weight:400}.param-head [data-component-part=\"field-deprecated-pill\"]{padding:0;border-radius:0;background:none;color:var(--api-warn);font-size:0.6875rem;font-weight:500}.param-head~div .prose{color:var(--api-body)}.param-head~div .prose p{margin:0;font-size:0.875rem;line-height:1.55}.param-head~div .prose>*+*{margin-top:0.5rem}.param-head~div .prose code{color:var(--api-ink)}.param-head~div .prose-sm:not(.prose){color:var(--api-meta);font-size:0.75rem;line-height:1.45}.param-head~div .prose-sm:not(.prose) code{color:var(--api-body)}@supports selector(:has(*)){.primitive-param-field:not(:has(.param-head)) .prose-sm:not(.prose),.object-param-field:not(:has(.param-head)) .prose-sm:not(.prose),.array-param-field:not(:has(.param-head)) .prose-sm:not(.prose){margin-top:var(--api-gap)}}.param-head~div [data-component-part=\"expandable\"]{margin-top:0.5rem;border:0;border-radius:0}.param-head~div [data-component-part=\"expandable-button\"]{width:auto;padding:0.125rem 0;border-radius:0;color:var(--api-meta);font-size:0.75rem;font-weight:500}.param-head~div [data-component-part=\"expandable-button\"]:hover{background:none;color:var(--api-ink)}.param-head~div [data-component-part=\"expandable-content\"]{margin:0.25rem 0 0;padding:0 0 0 0.875rem;border-top:0;border-left:1px solid var(--api-rule)}.api-section-heading{gap:0.5rem}.api-section-heading-title{color:var(--api-meta);font-size:0.6875rem;font-weight:600;letter-spacing:0.08em;text-transform:uppercase}@supports selector(:has(*)){div:has(>.api-section){margin-bottom:2rem}}@supports selector(:has(*)){div:has(>.param-head:target){border-radius:2px;background:var(--api-wash);box-shadow:10px 0 0 var(--api-wash), -10px 0 0 var(--api-wash)}}.newsletter-container .lead{max-width:60ch;color:var(--api-body)}.nl-grid{display:grid;grid-template-columns:repeat(2, minmax(0, 1fr));gap:1.5rem;margin-top:1.5rem}.nl-head h2{margin:0 0 0.75rem;padding-bottom:0.5rem;border-bottom:1px solid var(--api-rule);font-size:1.125rem}.nl-list{margin:0;padding:0;list-style:none!important}.nl-list>li::before{content:none!important;display:none!important}.nl-item{margin-bottom:0.75rem;padding:0.875rem;border:1px solid var(--api-rule);border-radius:0.5rem;background:var(--api-panel)}.nl-item__head{display:flex;gap:0.75rem;align-items:flex-start;justify-content:space-between}.nl-month{margin:0;color:var(--api-ink);font-size:0.9375rem;font-weight:600;line-height:1.4}.nl-item .actions{flex:0 0 auto}.nl-item .btn{display:inline-flex;align-items:center;padding:0.25rem 0.75rem;border:1px solid var(--api-rule);border-radius:0.375rem;color:var(--api-ink)!important;font-size:0.75rem;font-weight:600;text-decoration:none!important;white-space:nowrap}.nl-item .btn:hover{border-color:var(--api-meta)}.nl-item [data-component-part=\"accordion\"]{margin-top:0.625rem}.nl-item [data-component-part=\"accordion-content\"] ul{margin:0;color:var(--api-body);font-size:0.8125rem;line-height:1.55}@media (max-width: 820px){.nl-grid{grid-template-columns:1fr}}a[href=\"#request-sandbox\"]{align-items:center;background:#000!important;border-radius:999px;color:#fff!important;display:inline-flex;font-family:\"Poppins\", \"Inter\", sans-serif;font-size:0.8125rem;font-weight:600;justify-content:center;line-height:1;min-height:2.25rem;padding:0.625rem 0.875rem;text-decoration:none!important;transition:background-color 160ms ease, transform 160ms ease}a[href=\"#request-sandbox\"]:hover{background:#27272a!important;transform:translateY(-1px)}a[href=\"#request-sandbox\"]:focus-visible,.extole-sandbox-modal button:focus-visible{outline:3px solid #ee0049;outline-offset:3px}.extole-sandbox-open{overflow:hidden}.extole-sandbox-modal{align-items:center;background:rgb(11 18 61 / 0.64);display:flex;inset:0;justify-content:center;padding:1.5rem;position:fixed;z-index:10000}.extole-sandbox-modal[hidden]{display:none}.extole-sandbox-dialog{background:#fff;border-radius:1.25rem;box-shadow:0 24px 64px rgb(11 18 61 / 0.3);color:#151a2d;max-height:calc(100vh - 3rem);max-width:36rem;overflow:auto;padding:2rem;position:relative;width:100%}.extole-sandbox-dialog h2{color:#151a2d;font-family:\"Poppins\", \"Inter\", sans-serif;font-size:1.75rem;line-height:1.15;margin:0 2.5rem 0.5rem 0}.extole-sandbox-dialog p{color:#4f5c6d;font-family:\"Poppins\", \"Inter\", sans-serif;line-height:1.5;margin:0}.extole-sandbox-close{align-items:center;background:transparent;border:0;border-radius:999px;color:#151a2d;cursor:pointer;display:inline-flex;font-size:1.5rem;height:2.25rem;justify-content:center;padding:0;position:absolute;right:1.25rem;top:1.25rem;width:2.25rem}.extole-sandbox-close:hover{background:#f1f1f1}.extole-sandbox-form{display:grid;gap:1rem;grid-template-columns:repeat(2, minmax(0, 1fr));margin-top:1.5rem}.extole-sandbox-field{display:grid;gap:0.5rem}.extole-sandbox-field-full{grid-column:1 / -1}.extole-sandbox-privacy{color:#383848;font-family:\"Poppins\", \"Inter\", sans-serif;font-size:0.8em;grid-column:1 / -1;line-height:1.5;margin:0}.extole-sandbox-privacy a{color:#151a2d;font-size:inherit;font-weight:600;text-decoration:underline;text-underline-offset:0.125em}.extole-sandbox-captcha{grid-column:1 / -1}.extole-sandbox-error{color:#9f1239;font-size:0.875rem;grid-column:1 / -1;margin:0}.extole-sandbox-field label{color:#383848;font-family:\"Poppins\", \"Inter\", sans-serif;font-size:0.875rem;font-weight:600}.extole-sandbox-field input,.extole-sandbox-field textarea{background:#fff;border:1px solid #c7c7c7;border-radius:0.25rem;box-sizing:border-box;color:#000;font-family:\"Poppins\", \"Inter\", sans-serif;font-size:1rem;min-height:2.75rem;padding:0.5rem 0.75rem;width:100%}.extole-sandbox-field input:focus-visible,.extole-sandbox-field textarea:focus-visible{border-color:#ee0049;outline:0}.extole-sandbox-field textarea{min-height:7.5rem;resize:vertical}.extole-sandbox-field input::placeholder,.extole-sandbox-field textarea::placeholder{color:#777}.extole-sandbox-submit{background:#383848;border:0;border-radius:999px;color:#fff;cursor:pointer;font-family:\"Poppins\", \"Inter\", sans-serif;font-size:0.875rem;font-weight:600;grid-column:1 / -1;justify-self:start;margin-top:0.5rem;padding:0.75rem 1.25rem}.extole-sandbox-submit:hover{background:#000}.extole-sandbox-submit:disabled{cursor:wait;opacity:0.7}.extole-sandbox-success{display:grid;gap:1.25rem;margin-top:1.5rem}.extole-sandbox-success-icon{align-items:center;background:#e8f5ed;border-radius:999px;color:#187344;display:inline-flex;font-size:1.25rem;font-weight:700;height:2.75rem;justify-content:center;width:2.75rem}.extole-sandbox-success-copy{display:grid;gap:0.5rem}.extole-sandbox-success h3{color:#151a2d;font-family:\"Poppins\", \"Inter\", sans-serif;font-size:1rem;margin:0}.extole-sandbox-success[hidden],.extole-sandbox-form[hidden]{display:none}@media (max-width: 40rem){.extole-sandbox-dialog{border-radius:1rem;padding:1.5rem}.extole-sandbox-form{grid-template-columns:1fr}.extole-sandbox-submit{width:100%}}"}],"page":{"pagePath":"guides/strategy-and-best-practices/campaign-optimization/choosing-your-point-to-reward-ratio","slug":"/guides/strategy-and-best-practices/campaign-optimization/choosing-your-point-to-reward-ratio","pageMetadata":{"title":"Choosing Your Point-to-Reward Ratio","description":"How to set the Redemption Ratio for a loyalty program — working from reward cost and margin to a ratio members find worth chasing.","href":"/guides/strategy-and-best-practices/campaign-optimization/choosing-your-point-to-reward-ratio"},"description":{"compiledSource":"\"use strict\";\nconst {jsx: _jsx} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n p: \"p\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsx(_components.p, {\n children: \"How to set the Redemption Ratio for a loyalty program — working from reward cost and margin to a ratio members find worth chasing.\"\n });\n}\nfunction MDXContent(props = {}) {\n const {wrapper: MDXLayout} = {\n ..._provideComponents(),\n ...props.components\n };\n return MDXLayout ? _jsx(MDXLayout, {\n ...props,\n children: _jsx(_createMdxContent, {\n ...props\n })\n }) : _createMdxContent(props);\n}\nreturn {\n default: MDXContent\n};\n","frontmatter":{},"scope":{}},"pageType":"default","mdx":{"mdxSource":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx,jsxs:_jsxs}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){const _components={a:`a`,code:`code`,li:`li`,ol:`ol`,p:`p`,strong:`strong`,ul:`ul`,..._provideComponents(),...props.components},{Heading,Warning}=_components;if(!Heading)_missingMdxReference(`Heading`,true);if(!Warning)_missingMdxReference(`Warning`,true);return _jsxs(_Fragment,{children:[_jsx(Heading,{level:`1`,id:`overview`,children:`Overview`}),`\n`,_jsxs(_components.p,{children:[`The Redemption Ratio is how many points make one dollar of redeemable value. The field on the\nReward Bank extension holds one whole number, not a pair like `,_jsx(_components.code,{children:`10:1`}),`. The default is `,_jsx(_components.code,{children:`1`}),` — one\npoint is worth one dollar. Set it to `,_jsx(_components.code,{children:`10`}),` and ten points are worth one dollar.`]}),`\n`,_jsx(_components.p,{children:`Two numbers decide what a member experiences, and neither means anything alone:`}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[`The `,_jsx(_components.strong,{children:`earn rate`}),` on each Collectible Reward — how many points an action gives.`]}),`\n`,_jsxs(_components.li,{children:[`The `,_jsx(_components.strong,{children:`Redemption Ratio`}),` on the Reward Bank — what those points are worth when the member spends\nthem.`]}),`\n`]}),`\n`,_jsx(_components.p,{children:`There is no correct pair in the abstract. The one that works is where the cost per way to earn\nis sustainable for you and the reward is reachable for the member. This page describes how to get\nto those numbers.`}),`\n`,_jsx(Heading,{level:`1`,id:`work-backward-from-the-reward`,children:`Work Backward From the Reward`}),`\n`,_jsx(_components.p,{children:`Start at the end. Decide what the first meaningful reward is and what it costs you, then work back\nto the ways to earn.`}),`\n`,_jsxs(_components.ol,{children:[`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Pick the first reward a member should reach.`}),` Something they would genuinely want — a $10\ncoupon, a free product, a shipping credit.`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Estimate what it costs you.`}),` Include fulfillment fees and the incremental cost of the reward.\nFor a coupon or credit, model expected redemption and purchase behavior rather than treating\nretail value or gross margin as the cost by itself.`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Decide how long it should take.`}),` Make the reward reachable within a timeframe that matches\nhow often members normally interact with you, while keeping the cost sustainable.`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Divide.`}),` The points earned across those interactions, set against the reward’s point cost,\ngives you the earn rate.`]}),`\n`]}),`\n`,_jsx(Heading,{level:`1`,id:`set-the-cost-per-action`,children:`Set the Cost per Action`}),`\n`,_jsx(_components.p,{children:`Once you have the earn rate, price each way to earn against it.`}),`\n`,_jsx(_components.p,{children:`Purchases are usually the anchor. A dynamic Collectible Reward calculates point value as a\npercentage of transaction value. The program’s realized cost also depends on the Redemption Ratio,\nhow much issued value members redeem, and the cost of the reward they choose.`}),`\n`,_jsx(_components.p,{children:`Non-purchase actions are priced differently. A review or a profile completion has no transaction\nvalue, so price it against what the action is worth to you — the conversion lift from having\nreviews, or the targeting value of the data.`}),`\n`,_jsx(Warning,{children:_jsx(_components.p,{children:`Price every dynamic reward with a maximum per transaction. Without a deliberate cap, an unusually\nlarge order issues an unusually large reward, and the exposure scales with your best customers’\norder values.`})}),`\n`,_jsx(Heading,{level:`1`,id:`make-the-numbers-legible`,children:`Make the Numbers Legible`}),`\n`,_jsx(_components.p,{children:`Numbers members cannot do arithmetic on are numbers they will not chase.`}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Round numbers beat precise ones.`}),` An earn rate of ten points per dollar is easier to hold in your head than 7.5.`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`State the reward, not the rate alone.`}),` “500 points gets you a $10 coupon” tells a member more than “10 points per dollar”.`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Keep one earn rate where you can.`}),` A single rate across every way to earn is easier to communicate than a different rate for each.`]}),`\n`]}),`\n`,_jsx(Heading,{level:`1`,id:`decide-the-first-threshold`,children:`Decide the First Threshold`}),`\n`,_jsx(_components.p,{children:`The minimum redemption amount decides how long a member holds a balance before they can do anything\nwith it.`}),`\n`,_jsx(_components.p,{children:`Set it too low and members redeem constantly for trivial value, and the program costs you a\ntransaction fee each time without building any habit. Set it too high and members give up before\nreaching it, leaving you with a growing balance of points that were never worth anything to\nanybody.`}),`\n`,_jsxs(_components.p,{children:[`The minimum and maximum are configured as `,_jsx(_components.strong,{children:`Redemption Minimum Value`}),` and `,_jsx(_components.strong,{children:`Redemption Maximum\nValue`}),` alongside the ratio. Setting either to `,_jsx(_components.code,{children:`0`}),` disables it.`]}),`\n`,_jsx(Heading,{level:`1`,id:`watch-what-happens-after-launch`,children:`Watch What Happens After Launch`}),`\n`,_jsx(_components.p,{children:`The numbers you launch with are a hypothesis. Check them against these:`}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Share of issued value redeemed.`}),` A low figure can mean the threshold is out of reach, the\nrewards are not wanted, or members have not had enough time to accumulate points.`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Time to first redemption.`}),` How long a member takes to reach their first reward. If it is far longer than you designed for, the earn rate is too thin.`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Unredeemed value.`}),` Interpret the trend alongside member growth, seasonality, and time since\nlaunch.`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Cost per way to earn.`}),` What each one is actually costing, against what you modeled.`]}),`\n`]}),`\n`,_jsxs(_components.p,{children:[`See `,_jsx(_components.a,{href:`/guides/dashboards-and-reporting/report-types/rewards-reports/reward-bank-reports`,children:`Reward Bank Reports`}),`.`]}),`\n`,_jsx(Heading,{level:`1`,id:`changing-the-ratio-later`,children:`Changing the Ratio Later`}),`\n`,_jsx(_components.p,{children:`Changing the Redemption Ratio changes the value of points members already hold, so treat it as a\npolicy change rather than a configuration tweak.`}),`\n`,_jsx(_components.p,{children:`Before changing a live ratio:`}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsx(_components.li,{children:`Check what your program terms say about changes to point value.`}),`\n`,_jsx(_components.li,{children:`Prefer changing what points are worth going forward over revaluing existing balances.`}),`\n`,_jsx(_components.li,{children:`Consider adjusting earn rates on individual actions instead, which leaves the value of held points untouched.`}),`\n`,_jsx(_components.li,{children:`Tell members before it takes effect.`}),`\n`]}),`\n`,_jsxs(_components.p,{children:[`The Redemption Ratio belongs to the Reward Bank, not to an individual campaign variant. Test a new\nratio in a sandbox or separately targeted Reward Bank before changing the live bank. See\n`,_jsx(_components.a,{href:`/guides/strategy-and-best-practices/campaign-optimization/testing-your-loyalty-program`,children:`Testing Your Loyalty Program`}),`.`]}),`\n`,_jsx(Heading,{level:`1`,id:`related`,children:`Related`}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsx(_components.li,{children:_jsx(_components.a,{href:`/product/product-overview/programs/loyalty/redemption-and-rewards`,children:`Redemption and Reward Options`})}),`\n`,_jsx(_components.li,{children:_jsx(_components.a,{href:`/guides/programs-and-campaigns/how-to-set-up-a-loyalty-program`,children:`How to Set Up a Loyalty Program`})}),`\n`,_jsx(_components.li,{children:_jsx(_components.a,{href:`/guides/strategy-and-best-practices/tactics-and-strategy/create-a-compelling-offer-structure`,children:`Create a Compelling Offer Structure`})}),`\n`]})]})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent};function _missingMdxReference(id,component){throw new Error(`Expected `+(component?`component`:`object`)+\" `\"+id+\"` to be defined: you likely forgot to import, pass, or provide it.\")}","frontmatter":{},"scope":{"config":{},"pageMetadata":{"title":"Choosing Your Point-to-Reward Ratio","description":"How to set the Redemption Ratio for a loyalty program — working from reward cost and margin to a ratio members find worth chasing.","href":"/guides/strategy-and-best-practices/campaign-optimization/choosing-your-point-to-reward-ratio"}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[{"title":"Overview","slug":"overview","depth":1,"children":[]},{"title":"Work Backward From the Reward","slug":"work-backward-from-the-reward","depth":1,"children":[]},{"title":"Set the Cost per Action","slug":"set-the-cost-per-action","depth":1,"children":[]},{"title":"Make the Numbers Legible","slug":"make-the-numbers-legible","depth":1,"children":[]},{"title":"Decide the First Threshold","slug":"decide-the-first-threshold","depth":1,"children":[]},{"title":"Watch What Happens After Launch","slug":"watch-what-happens-after-launch","depth":1,"children":[]},{"title":"Changing the Ratio Later","slug":"changing-the-ratio-later","depth":1,"children":[]},{"title":"Related","slug":"related","depth":1,"children":[]}],"codeExamples":{}},"jsLinks":["/_mintlify/custom/extole/f41fea9c3aac4d55/type-combobox.js","/_mintlify/custom/extole/83546dbecca8dd1c/evaluatable-map.js","/_mintlify/custom/extole/8a8483f8fc226986/evaluatable-selector.js","/_mintlify/custom/extole/83812e823faa6683/request-sandbox.js"],"subdomain":"extole","siteName":"Extole Documentation","title":"Choosing Your Point-to-Reward Ratio - Extole Documentation","relatedPagesConfig":{"enabled":true,"limit":5,"mode":"automatic"},"navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-10-05T15:49:01.092Z","originalFileLocation":"guides/strategy-and-best-practices/campaign-optimization/choosing-your-point-to-reward-ratio.mdx"},"headHtml":"\u003cscript data-mint-head>(function(){var d=document.documentElement,p=null;if(!p){try{p=localStorage.getItem(\"isDarkMode\")}catch(e){}if(p==='true')p='dark';else if(p==='false')p='light';if(p!=='light'\u0026\u0026p!=='dark'\u0026\u0026p!=='system')p=\"system\"}var r=p==='system'?(matchMedia(\"(prefers-color-scheme: dark)\").matches?'dark':'light'):p;d.classList.remove(r==='dark'?'light':'dark');d.classList.add(r);d.setAttribute(\"data-theme-preference\",p)})();\u003c/script>\u003cmeta data-mint-head name=\"description\" content=\"How to set the Redemption Ratio for a loyalty program — working from reward cost and margin to a ratio members find worth chasing.\">\u003cmeta data-mint-head name=\"application-name\" content=\"Extole Documentation\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/extole/fqJbsSkQuI9X8tIY/_generated/favicon/android-chrome-192x192.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"apple-touch-icon\" type=\"image/png\" sizes=\"180x180\" href=\"/mintlify-assets/_mintlify/favicons/extole/fqJbsSkQuI9X8tIY/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/extole/fqJbsSkQuI9X8tIY/_generated/favicon/favicon-16x16.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/extole/fqJbsSkQuI9X8tIY/_generated/favicon/favicon-32x32.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/extole/fqJbsSkQuI9X8tIY/_generated/favicon/favicon.ico\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/extole/fqJbsSkQuI9X8tIY/_generated/favicon-dark/android-chrome-192x192.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/extole/fqJbsSkQuI9X8tIY/_generated/favicon-dark/favicon-16x16.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/extole/fqJbsSkQuI9X8tIY/_generated/favicon-dark/favicon-32x32.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/extole/fqJbsSkQuI9X8tIY/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Choosing Your Point-to-Reward Ratio - Extole Documentation\">\u003cmeta data-mint-head property=\"og:description\" content=\"How to set the Redemption Ratio for a loyalty program — working from reward cost and margin to a ratio members find worth chasing.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Extole Documentation\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.extole.com/guides/strategy-and-best-practices/campaign-optimization/choosing-your-point-to-reward-ratio\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://extole.mintlify.site/_mintlify/api/og/v2?division=Campaign+Optimization\u0026amp;title=Choosing+Your+Point-to-Reward+Ratio\u0026amp;description=How+to+set+the+Redemption+Ratio+for+a+loyalty+program+%E2%80%94+working+from+reward+cost+and+margin+to+a+ratio+members+find+worth+chasing.\u0026amp;theme=1484b4628d2fbfb7ddbdf997\u0026amp;signature=ee5a9290fdc01533f9368836bb6b9536bd04185a96c033025c3cd7155a1195df\">\u003cmeta data-mint-head property=\"og:image:width\" content=\"1200\">\u003cmeta data-mint-head property=\"og:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"twitter:card\" content=\"summary_large_image\">\u003cmeta data-mint-head name=\"twitter:title\" content=\"Choosing Your Point-to-Reward Ratio - Extole Documentation\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"How to set the Redemption Ratio for a loyalty program — working from reward cost and margin to a ratio members find worth chasing.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://extole.mintlify.site/_mintlify/api/og/v2?division=Campaign+Optimization\u0026amp;title=Choosing+Your+Point-to-Reward+Ratio\u0026amp;description=How+to+set+the+Redemption+Ratio+for+a+loyalty+program+%E2%80%94+working+from+reward+cost+and+margin+to+a+ratio+members+find+worth+chasing.\u0026amp;theme=1484b4628d2fbfb7ddbdf997\u0026amp;signature=ee5a9290fdc01533f9368836bb6b9536bd04185a96c033025c3cd7155a1195df\">\u003cmeta data-mint-head name=\"twitter:image:width\" content=\"1200\">\u003cmeta data-mint-head name=\"twitter:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"msapplication-config\" content=\"/mintlify-assets/_mintlify/favicons/extole/fqJbsSkQuI9X8tIY/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Extole Documentation\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#ee0049\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.extole.com/guides/strategy-and-best-practices/campaign-optimization/choosing-your-point-to-reward-ratio\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/guides/strategy-and-best-practices/campaign-optimization/choosing-your-point-to-reward-ratio.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://docs.extole.com/#organization\",\"name\":\"Extole Documentation\",\"url\":\"https://docs.extole.com\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/extole/qEcOgc0BuXrP2LAU/extole-logo.png?fit=max\u0026auto=format\u0026n=qEcOgc0BuXrP2LAU\u0026q=85\u0026s=d7152863dcc1c598d4fac27f91b3658e\"}},{\"@type\":\"WebSite\",\"@id\":\"https://docs.extole.com#website\",\"name\":\"Extole Documentation\",\"url\":\"https://docs.extole.com\",\"publisher\":{\"@id\":\"https://docs.extole.com/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.extole.com/guides/strategy-and-best-practices/campaign-optimization/choosing-your-point-to-reward-ratio#webpage\",\"url\":\"https://docs.extole.com/guides/strategy-and-best-practices/campaign-optimization/choosing-your-point-to-reward-ratio\",\"name\":\"Choosing Your Point-to-Reward Ratio\",\"description\":\"How to set the Redemption Ratio for a loyalty program — working from reward cost and margin to a ratio members find worth chasing.\",\"dateModified\":\"2026-10-05T15:49:01.092Z\",\"isPartOf\":{\"@id\":\"https://docs.extole.com#website\"},\"breadcrumb\":{\"@id\":\"https://docs.extole.com/guides/strategy-and-best-practices/campaign-optimization/choosing-your-point-to-reward-ratio#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.extole.com/guides/strategy-and-best-practices/campaign-optimization/choosing-your-point-to-reward-ratio#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Strategy \u0026 Best Practices\",\"item\":\"https://docs.extole.com/guides/strategy-and-best-practices/tactics-and-strategy/capturing-in-person-referrals\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Campaign Optimization\",\"item\":\"https://docs.extole.com/guides/strategy-and-best-practices/campaign-optimization/a-b-testing-your-offer\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Choosing Your Point-to-Reward Ratio\",\"item\":\"https://docs.extole.com/guides/strategy-and-best-practices/campaign-optimization/choosing-your-point-to-reward-ratio\"}]},{\"@type\":[\"Article\",\"TechArticle\"],\"@id\":\"https://docs.extole.com/guides/strategy-and-best-practices/campaign-optimization/choosing-your-point-to-reward-ratio#article\",\"headline\":\"Choosing Your Point-to-Reward Ratio\",\"name\":\"Choosing Your Point-to-Reward Ratio\",\"description\":\"How to set the Redemption Ratio for a loyalty program — working from reward cost and margin to a ratio members find worth chasing.\",\"url\":\"https://docs.extole.com/guides/strategy-and-best-practices/campaign-optimization/choosing-your-point-to-reward-ratio\",\"mainEntityOfPage\":{\"@id\":\"https://docs.extole.com/guides/strategy-and-best-practices/campaign-optimization/choosing-your-point-to-reward-ratio#webpage\"},\"dateModified\":\"2026-10-05T15:49:01.092Z\",\"publisher\":{\"@id\":\"https://docs.extole.com/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.extole.com#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"Extole Documentation\",\"publisher\":{\"@type\":\"Organization\",\"name\":\"Extole Documentation\"},\"provider\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","agentPointerHref":"/guides/strategy-and-best-practices/campaign-optimization/choosing-your-point-to-reward-ratio.md","siteName":"Extole Documentation","nav":{"global":null,"tabs":[{"tab":"Product Docs","pages":[{"title":"Product Docs","href":"/product/extole-overview/what-is-extole"}]},{"tab":"Technical Docs","pages":[{"title":"Technical Docs","href":"/technical/integration-overview/integrating-with-extole"}]},{"tab":"Guides","groups":[{"group":"Platform Overview","pages":[{"group":"Extole Chat","pages":[{"title":"Troubleshooting Extole Chat","href":"/guides/platform-overview/extole-chat/troubleshooting"}]},{"group":"Key Concepts","pages":[{"title":"Understanding Participation Rate","href":"/guides/platform-overview/key-concepts/understanding-participation-rate"},{"title":"Acquisition Rate","href":"/guides/platform-overview/key-concepts/acquisition-rate"},{"title":"What is the Value that Extole Delivers?","href":"/guides/platform-overview/key-concepts/what-is-the-value-that-extole-delivers"},{"title":"How Does Extole Recognize Advocates?","href":"/guides/platform-overview/key-concepts/how-does-extole-recognize-advocates"},{"title":"Referral Marketing Glossary","href":"/guides/platform-overview/key-concepts/referral-marketing-glossary"}]},{"group":"Implementing your Referral Program","pages":[{"title":"Program and Campaign Flows","href":"/guides/platform-overview/implementing-your-referral-program/program-and-campaign-flows"},{"group":"Creating CTAs","pages":[{"title":"Marketing Tags for Marketers","href":"/guides/platform-overview/implementing-your-referral-program/creating-ctas/marketing-tags-for-marketers"},{"title":"How to Create a Promo Link","href":"/guides/platform-overview/implementing-your-referral-program/creating-ctas/how-to-create-a-promo-link"},{"title":"How to Host Your Own Call-to-Action","href":"/guides/platform-overview/implementing-your-referral-program/creating-ctas/how-to-host-your-own-call-to-action"}]},{"group":"Technical Items","pages":[{"title":"Webhooks","href":"/guides/platform-overview/implementing-your-referral-program/technical-items/webhooks"},{"title":"Passing all Events to Extole","href":"/guides/platform-overview/implementing-your-referral-program/technical-items/passing-all-events-to-extole"},{"title":"How to Track Referral Revenue Generated by Your Program","href":"/guides/platform-overview/implementing-your-referral-program/technical-items/how-to-track-referral-revenue-generated-by-your-program"},{"title":"Delivering Share Messages","href":"/guides/platform-overview/implementing-your-referral-program/technical-items/delivering-share-messages"},{"title":"Program Domain Setup","href":"/guides/platform-overview/implementing-your-referral-program/technical-items/program-domain-setup"},{"title":"Managing Your Branded URLs","href":"/guides/platform-overview/implementing-your-referral-program/technical-items/managing-your-branded-urls"},{"title":"Migrating to a New Program Domain","href":"/guides/platform-overview/implementing-your-referral-program/technical-items/migrating-to-a-new-program-domain"},{"title":"Mobile App Sharing","href":"/guides/platform-overview/implementing-your-referral-program/technical-items/mobile-app-sharing"},{"title":"Tracking Conversions with a Mobile App","href":"/guides/platform-overview/implementing-your-referral-program/technical-items/tracking-conversions-with-a-mobile-app"},{"title":"Technical Requirements","href":"/guides/platform-overview/implementing-your-referral-program/technical-items/technical-requirements"}]}]},{"title":"Getting Started with Extole","href":"/guides/platform-overview/getting-started-with-extole"},{"title":"Go-Live QA Checklist","href":"/guides/platform-overview/go-live-qa-checklist"},{"title":"Introducing My Extole","href":"/guides/platform-overview/introducing-my-extole"},{"title":"Preparing Your Support Team for Extole","href":"/guides/platform-overview/inform-your-support-team-about-your-extole-program"},{"title":"Leveraging User Support Pages","href":"/guides/platform-overview/leveraging-user-support-pages"},{"title":"Meet Cate: Your 24/7 Program Assistance Chatbot","href":"/guides/platform-overview/meet-cate-your-24-7-program-assistance-chatbot"},{"title":"Programs vs. Campaigns","href":"/guides/platform-overview/programs-vs-campaigns"},{"title":"Creating a Program","href":"/guides/platform-overview/creating-a-program"},{"title":"Referral Program QA Guide for Marketers","href":"/guides/platform-overview/referral-program-qa-guide-for-marketers"},{"title":"Exploring the Programs Page","href":"/guides/platform-overview/exploring-the-programs-page"},{"title":"Exploring the Reports Page","href":"/guides/platform-overview/exploring-the-reports-page"},{"title":"Add a Promotion (Onsite Call-to-Action or Marketing Email)","href":"/guides/platform-overview/add-a-promotion-onsite-call-to-action-or-marketing-email"},{"title":"Extole Opt-In/Opt-Out Sync Guide","href":"/guides/platform-overview/extole-opt-in-opt-out-sync-guide"},{"title":"Manually Uploading Events to Extole","href":"/guides/platform-overview/manually-uploading-events-to-extole"},{"title":"Program and Campaign Dashboards","href":"/guides/platform-overview/program-and-campaign-dashboards"},{"title":"Set Up Dynamic Eligible Audience Files","href":"/guides/platform-overview/set-up-dynamic-eligible-audience-files"},{"title":"Tracking Referrals via Tags vs. Email Capture","href":"/guides/platform-overview/tracking-referrals-via-tags-vs-email-capture"},{"title":"Uploading an Eligibility Audience File via SFTP","href":"/guides/platform-overview/uploading-an-eligibility-audience-file-via-sftp"},{"title":"Targeting","href":"/guides/platform-overview/targeting"}]},{"group":"Programs \u0026 Campaigns","pages":[{"group":"Campaign Creation \u0026 Editing","pages":[{"title":"Quick Start a Referral Campaign","href":"/guides/programs-and-campaigns/campaign-creation-and-editing/quick-start-a-referral-campaign"},{"title":"Using Extole's Campaign Editor","href":"/guides/programs-and-campaigns/campaign-creation-and-editing/using-extole-s-campaign-editor"},{"title":"Enable Friend Email Capture for Opt Ins","href":"/guides/programs-and-campaigns/campaign-creation-and-editing/enable-friend-email-capture-for-opt-ins"},{"title":"How Do I Clone an Existing Campaign?","href":"/guides/programs-and-campaigns/campaign-creation-and-editing/how-do-i-clone-an-existing-campaign"},{"title":"Implement Fonts Across Your Creatives","href":"/guides/programs-and-campaigns/campaign-creation-and-editing/implement-fonts-across-your-creatives"},{"title":"Creative Customizations","href":"/guides/programs-and-campaigns/campaign-creation-and-editing/creative-customizations"}]},{"group":"Asset Guides","pages":[{"title":"Social Media Share Creative Elements","href":"/guides/programs-and-campaigns/asset-guides/social-media-share-creative-elements"},{"title":"Creative Image Asset Guide","href":"/guides/programs-and-campaigns/asset-guides/creative-image-asset-guide"},{"title":"Drop a Hint Asset Guide","href":"/guides/programs-and-campaigns/asset-guides/drop-a-hint-asset-guide"},{"title":"Nomination Asset Guide","href":"/guides/programs-and-campaigns/asset-guides/nomination-asset-guide"},{"title":"Sweepstakes Asset Guide","href":"/guides/programs-and-campaigns/asset-guides/sweepstakes-asset-guide"},{"title":"Welcome Offer Asset Guide","href":"/guides/programs-and-campaigns/asset-guides/welcome-offer-asset-guide"},{"title":"Friends \u0026 Family Asset Guide","href":"/guides/programs-and-campaigns/asset-guides/friends-family-asset-guide"},{"title":"Advocate Invite Email","href":"/guides/programs-and-campaigns/asset-guides/advocate-invite-email-asset-guide"},{"title":"Advocate Stats Email","href":"/guides/programs-and-campaigns/asset-guides/advocate-stats-email-asset-guide"},{"title":"Earned Reward Emails","href":"/guides/programs-and-campaigns/asset-guides/earned-reward-emails-asset-guide"},{"title":"Friend Landing Experience","href":"/guides/programs-and-campaigns/asset-guides/friend-landing-experience-asset-guide"},{"title":"Pending Reward Email","href":"/guides/programs-and-campaigns/asset-guides/pending-reward-email-asset-guide"},{"title":"Share Email \u0026 Reminder","href":"/guides/programs-and-campaigns/asset-guides/share-email-reminder-asset-guide"},{"title":"Share Experience","href":"/guides/programs-and-campaigns/asset-guides/share-experience-asset-guide"},{"title":"Welcome Email","href":"/guides/programs-and-campaigns/asset-guides/welcome-email-asset-guide"}]},{"group":"International Programs","pages":[{"title":"Adding Languages to International Programs","href":"/guides/programs-and-campaigns/international-programs/adding-languages-to-international-programs"},{"title":"International Programs","href":"/guides/programs-and-campaigns/international-programs/international-programs"},{"title":"Configuring an International Program","href":"/guides/programs-and-campaigns/international-programs/configuring-an-international-program"}]},{"group":"Other Acquisition and Engagement Programs","pages":[{"title":"Sweepstakes Program","href":"/guides/programs-and-campaigns/other-acquisition-and-engagement-programs/sweepstakes-program"},{"title":"Launch a Credit Union Welcome Offer","href":"/guides/programs-and-campaigns/other-acquisition-and-engagement-programs/launch-a-credit-union-welcome-offer"},{"title":"Launch an MDU Referral Program","href":"/guides/programs-and-campaigns/other-acquisition-and-engagement-programs/launch-an-mdu-referral-program"},{"title":"Agent Programs","href":"/guides/programs-and-campaigns/other-acquisition-and-engagement-programs/agent-programs"},{"title":"Run Targeted Super Advocate Programs","href":"/guides/programs-and-campaigns/other-acquisition-and-engagement-programs/run-targeted-super-advocate-programs"},{"title":"How to Approve Pending Ambassadors","href":"/guides/programs-and-campaigns/other-acquisition-and-engagement-programs/how-to-approve-pending-ambassadors"},{"title":"Campaigns for Selected Audiences","href":"/guides/programs-and-campaigns/other-acquisition-and-engagement-programs/campaigns-for-selected-audiences"},{"title":"Welcome Offer Program","href":"/guides/programs-and-campaigns/other-acquisition-and-engagement-programs/welcome-offer-program"},{"title":"Launch a Sweepstakes / Giveaway","href":"/guides/programs-and-campaigns/other-acquisition-and-engagement-programs/launch-a-sweepstakes-giveaway"}]},{"group":"Managing Campaigns","pages":[{"title":"Pausing, Ending, and Scheduling Campaigns","href":"/guides/programs-and-campaigns/managing-campaigns/pausing-ending-and-scheduling-campaigns"},{"title":"What Happens When a Campaign Is Paused","href":"/guides/programs-and-campaigns/managing-campaigns/what-happens-when-a-campaign-is-paused"},{"title":"How to Run A Burst","href":"/guides/programs-and-campaigns/managing-campaigns/how-to-run-a-burst"},{"title":"Share Link and Promote Link Behavior","href":"/guides/programs-and-campaigns/managing-campaigns/share-link-and-promote-link-behavior"},{"title":"How to Push Your Test Campaign Live","href":"/guides/programs-and-campaigns/managing-campaigns/how-to-push-your-test-campaign-live"},{"title":"How to QA Your Referral Program","href":"/guides/programs-and-campaigns/managing-campaigns/how-to-qa-your-referral-program"},{"title":"Making Updates to your Campaigns","href":"/guides/programs-and-campaigns/managing-campaigns/making-updates-to-your-campaigns"},{"title":"Compare a Component Across Campaign Versions","href":"/guides/programs-and-campaigns/managing-campaigns/compare-a-component-across-campaign-versions"},{"title":"How to Rebrand Your Program","href":"/guides/programs-and-campaigns/managing-campaigns/how-to-rebrand-your-program"}]},{"title":"Add an Advocate Stats Dashboard","href":"/guides/programs-and-campaigns/add-an-advocate-stats-dashboard"},{"title":"Adding and Removing Share Channels","href":"/guides/programs-and-campaigns/adding-and-removing-share-channels"},{"title":"Advocate Share Experience","href":"/guides/programs-and-campaigns/advocate-share-experience"},{"title":"Call-to-Action Creative Elements","href":"/guides/programs-and-campaigns/call-to-action-creative-elements"},{"title":"Choosing Your Advocate Sharing Experience","href":"/guides/programs-and-campaigns/choosing-your-advocate-sharing-experience"},{"title":"Common HTML Tags for Basic Campaign Editing","href":"/guides/programs-and-campaigns/common-html-tags-for-basic-campaign-editing"},{"title":"Editing the Advocate Microsite and Share Experience","href":"/guides/programs-and-campaigns/editing-the-advocate-microsite-and-share-experience"},{"title":"Go Extole App Login Guide","href":"/guides/programs-and-campaigns/go-extole-app-login-guide"},{"title":"How to Set Up a Loyalty Program","href":"/guides/programs-and-campaigns/how-to-set-up-a-loyalty-program"},{"title":"How to Set Up a Reward for Action Offer Program","href":"/guides/programs-and-campaigns/how-to-set-up-a-reward-for-action-offer-program"},{"title":"How to Upload Terms \u0026 Conditions","href":"/guides/programs-and-campaigns/how-to-upload-terms-conditions"},{"title":"My Account Settings","href":"/guides/programs-and-campaigns/my-account-settings"},{"title":"Overlay Creative Elements","href":"/guides/programs-and-campaigns/overlay-creative-elements"},{"title":"Overlay CTAs and How to Optimize Them for Sharing","href":"/guides/programs-and-campaigns/overlay-ctas-and-how-to-optimize-them-for-sharing"},{"title":"Reward Bank Redemption Experience","href":"/guides/programs-and-campaigns/reward-bank-redemption-experience"},{"title":"Tango Reward Email","href":"/guides/programs-and-campaigns/tango-reward-email"}]},{"group":"Dashboards and Reporting","root":{"title":"Dashboards and Reporting","href":"/guides/dashboards-and-reporting/index"},"pages":[{"group":"Extole Dashboards \u0026 Metrics","root":{"title":"Extole Dashboards \u0026 Metrics","href":"/guides/dashboards-and-reporting/extole-dashboards-and-metrics/index"},"pages":[{"title":"How to Measure and Benchmark Your Referral Program Success","href":"/guides/dashboards-and-reporting/extole-dashboards-and-metrics/how-to-measure-and-benchmark-your-referral-program-success"},{"title":"The Influencer Program Page","href":"/guides/dashboards-and-reporting/extole-dashboards-and-metrics/the-influencer-program-page"},{"title":"How Do I Prevent Testing Data from Appearing in my Analytics Dashboard?","href":"/guides/dashboards-and-reporting/extole-dashboards-and-metrics/how-do-i-prevent-testing-data-from-appearing-in-my-analytics-dashboard"},{"title":"Downloadable Reports on Program and Campaign Dashboards","href":"/guides/dashboards-and-reporting/extole-dashboards-and-metrics/downloadable-reports-on-program-and-campaign-dashboards"},{"title":"Using My Timeline Dates","href":"/guides/dashboards-and-reporting/extole-dashboards-and-metrics/using-my-timeline-dates"},{"title":"Account Dashboard","href":"/guides/dashboards-and-reporting/extole-dashboards-and-metrics/account-dashboard"}]},{"group":"Integrating Reports","pages":[{"title":"SFTP and Batch File Conventions","href":"/guides/dashboards-and-reporting/integrating-reports/sftp-and-batch-file-conventions"},{"title":"Using Extole's SFTP Server","href":"/guides/dashboards-and-reporting/integrating-reports/using-extole-s-sftp-server"},{"title":"Integrating Extole with Web Analytics","href":"/guides/dashboards-and-reporting/integrating-reports/integrating-extole-with-web-analytics"},{"title":"Sending Reports to an External SFTP","href":"/guides/dashboards-and-reporting/integrating-reports/sending-reports-to-an-external-sftp"},{"title":"How to Use the Extole Asynchronous Reporting API","href":"/guides/dashboards-and-reporting/integrating-reports/how-to-use-the-extole-asynchronous-reporting-api"}]},{"group":"Configuring Reports","pages":[{"title":"Choosing the Right Report","href":"/guides/dashboards-and-reporting/configuring-reports/choosing-the-right-report"},{"title":"Advanced Report Configuration","href":"/guides/dashboards-and-reporting/configuring-reports/advanced-report-configuration"},{"title":"Scheduled Reports","href":"/guides/dashboards-and-reporting/configuring-reports/scheduled-reports"},{"title":"Aggregated Reports","href":"/guides/dashboards-and-reporting/configuring-reports/aggregated-reports"},{"title":"Understanding How Extole Counts People","href":"/guides/dashboards-and-reporting/configuring-reports/understanding-how-extole-counts-people"},{"title":"Configurable Report Types and Their Entities","href":"/guides/dashboards-and-reporting/configuring-reports/configurable-report-types-and-their-entities"},{"title":"Custom Data Queries using Extole Reports","href":"/guides/dashboards-and-reporting/configuring-reports/custom-data-queries-using-extole-reports"},{"title":"Entities and Context Available in Extole's Configurable Reporting System","href":"/guides/dashboards-and-reporting/configuring-reports/entities-and-context-available-in-extole-s-configurable-reporting-system"}]},{"group":"Report Types","root":{"title":"Report Types","href":"/guides/dashboards-and-reporting/report-types/index"},"pages":[{"group":"Recommended Reports","pages":[{"title":"Participation Rate Report","href":"/guides/dashboards-and-reporting/report-types/recommended-reports/participation-rate-report"},{"title":"Events Report","href":"/guides/dashboards-and-reporting/report-types/recommended-reports/events-report"},{"title":"Metrics Report","href":"/guides/dashboards-and-reporting/report-types/recommended-reports/metrics-report"},{"title":"Successful Advocates Report","href":"/guides/dashboards-and-reporting/report-types/recommended-reports/successful-advocates-report"},{"title":"Top Promotion Sources Report","href":"/guides/dashboards-and-reporting/report-types/recommended-reports/top-promotion-sources-report"},{"title":"Email Stats Report","href":"/guides/dashboards-and-reporting/report-types/recommended-reports/email-stats-report"},{"title":"Acquisition Rate Report","href":"/guides/dashboards-and-reporting/report-types/recommended-reports/acquisition-rate-report"},{"title":"Rewards Reporting","href":"/guides/dashboards-and-reporting/report-types/recommended-reports/rewards-reporting"},{"title":"Fulfilled Rewards Report","href":"/guides/dashboards-and-reporting/report-types/recommended-reports/fulfilled-rewards-report"},{"title":"Person Report","href":"/guides/dashboards-and-reporting/report-types/recommended-reports/person-report"},{"title":"People Who Took a Specific Action Report","href":"/guides/dashboards-and-reporting/report-types/recommended-reports/people-who-took-a-specific-action-report"},{"title":"Referral Funnel Performance Report","href":"/guides/dashboards-and-reporting/report-types/recommended-reports/referral-funnel-performance-report"},{"title":"Visited Events Report","href":"/guides/dashboards-and-reporting/report-types/recommended-reports/visited-events-report"}]},{"group":"Audience Reports","root":{"title":"Audience Reports","href":"/guides/dashboards-and-reporting/report-types/audience-reports/index"},"pages":[{"title":"Unique Share Messages Report","href":"/guides/dashboards-and-reporting/report-types/audience-reports/unique-share-messages-report"},{"title":"Referred Friends Who Advocate Report","href":"/guides/dashboards-and-reporting/report-types/audience-reports/referred-friends-who-advocate-report"},{"title":"Inactive Advocates Report","href":"/guides/dashboards-and-reporting/report-types/audience-reports/inactive-advocates-report"},{"title":"Advocate Opt-in Report","href":"/guides/dashboards-and-reporting/report-types/audience-reports/advocate-opt-in-report"},{"title":"Active Advocates Report","href":"/guides/dashboards-and-reporting/report-types/audience-reports/active-advocates-report"},{"title":"Influencer Stats Report","href":"/guides/dashboards-and-reporting/report-types/audience-reports/influencer-stats-report"},{"title":"Count of Successful Advocates Report","href":"/guides/dashboards-and-reporting/report-types/audience-reports/count-of-successful-advocates-report"},{"title":"Reports Based on Locale and Country","href":"/guides/dashboards-and-reporting/report-types/audience-reports/reports-based-on-locale-and-country"},{"title":"Count of Active Advocates Report","href":"/guides/dashboards-and-reporting/report-types/audience-reports/count-of-active-advocates-report"}]},{"group":"Rewards Reports","pages":[{"title":"Nominations Report","href":"/guides/dashboards-and-reporting/report-types/rewards-reports/nominations-report"},{"title":"Reward Transitions Report","href":"/guides/dashboards-and-reporting/report-types/rewards-reports/reward-transitions-report"},{"title":"Failed Rewards Report","href":"/guides/dashboards-and-reporting/report-types/rewards-reports/failed-rewards-report"},{"title":"Earned Rewards Report","href":"/guides/dashboards-and-reporting/report-types/rewards-reports/earned-rewards-report"},{"title":"Friend Conversion Report","href":"/guides/dashboards-and-reporting/report-types/rewards-reports/friend-conversion-report"},{"title":"Revenue Contribution Report","href":"/guides/dashboards-and-reporting/report-types/rewards-reports/revenue-contribution-report"},{"title":"Reward Bank Reports","href":"/guides/dashboards-and-reporting/report-types/rewards-reports/reward-bank-reports"}]}]},{"title":"How to Run a Report","href":"/guides/dashboards-and-reporting/how-to-run-a-report"},{"title":"CSV Encoding","href":"/guides/dashboards-and-reporting/csv-encoding"},{"title":"New Customer Contribution Rate Report","href":"/guides/dashboards-and-reporting/new-customer-contribution-rate-report"},{"title":"Paused Reports","href":"/guides/dashboards-and-reporting/paused-reports"},{"title":"Person vs. Related Person Columns in Reports","href":"/guides/dashboards-and-reporting/person-vs-related-person-columns-in-reports"},{"title":"Recommended Reports","href":"/guides/dashboards-and-reporting/recommended-reports"},{"title":"Understand Extole Journeys and How to Use Them in Reports","href":"/guides/dashboards-and-reporting/understanding-extole-journeys-extended-reference-for-reporting"},{"title":"Understanding the “Direct” Promotion Source","href":"/guides/dashboards-and-reporting/understanding-the-direct-promotion-source"},{"title":"Visit Type and Quality","href":"/guides/dashboards-and-reporting/visit-type-and-quality"}]},{"group":"Audiences \u0026 Segmentation","pages":[{"group":"Audience Management","pages":[{"title":"Existing Customer List Management","href":"/guides/audiences-and-segmentation/audience-management/existing-customer-list-management"},{"title":"Eligibility Files","href":"/guides/audiences-and-segmentation/audience-management/eligibility-files"}]},{"group":"My Audiences","pages":[{"title":"How to Send a Promotional Email to an Audience","href":"/guides/audiences-and-segmentation/my-audiences/how-to-send-a-promotional-email-to-an-audience"},{"title":"Interpreting the Network Graph","href":"/guides/audiences-and-segmentation/my-audiences/interpreting-the-network-graph"},{"title":"Upload and Email an Audience","href":"/guides/audiences-and-segmentation/my-audiences/upload-and-email-an-audience"}]},{"group":"Segmentation","pages":[{"title":"Turning Friends Into Advocates","href":"/guides/audiences-and-segmentation/segmentation/turning-friends-into-advocates"},{"title":"Using Refer-a-Friend Data Beyond Refer-a-Friend","href":"/guides/audiences-and-segmentation/segmentation/using-refer-a-friend-data-beyond-refer-a-friend"},{"title":"Advocacy Customer Segments","href":"/guides/audiences-and-segmentation/segmentation/advocacy-customer-segments"},{"title":"Dive into People - Find Your Super Advocates and Discover Who's New","href":"/guides/audiences-and-segmentation/segmentation/dive-into-people-find-your-super-advocates-and-discover-who-s-new"},{"title":"Converting Advocates to Influencers","href":"/guides/audiences-and-segmentation/segmentation/converting-advocates-to-influencers"}]},{"title":"Advocate Tiers","href":"/guides/audiences-and-segmentation/advocate-tiers"}]},{"group":"Rewards Management","pages":[{"group":"Rules Configuration","pages":[{"title":"Configuring the Rules of Your Program","href":"/guides/rewards-management/rules-configuration/configuring-the-rules-of-your-program"},{"title":"Fraud and Anti-gaming Protection","href":"/guides/rewards-management/rules-configuration/fraud-and-anti-gaming-protection"},{"title":"Preventing Fraud and Best Practices for Campaign Rules","href":"/guides/rewards-management/rules-configuration/preventing-fraud-and-best-practices-for-campaign-rules"},{"title":"New Customer Rule","href":"/guides/rewards-management/rules-configuration/new-customer-rule"}]},{"group":"Reward Fulfillment","pages":[{"title":"WISMR 101: Understanding Missing Reward Requests","href":"/guides/rewards-management/reward-fulfillment/wismr-101-understanding-customer-reward-inquiries"},{"title":"Investigating Missing Rewards and Attribution","href":"/guides/rewards-management/reward-fulfillment/how-to-investigate-a-wismr-request"},{"title":"How to Resend a Reward","href":"/guides/rewards-management/reward-fulfillment/how-to-resend-a-reward"},{"title":"How to Change a Person's Email","href":"/guides/rewards-management/reward-fulfillment/how-to-change-a-persons-email"},{"title":"How to Resend Tango Rewards","href":"/guides/rewards-management/reward-fulfillment/how-to-resend-tango-rewards"},{"title":"Look Up and Understand Your Program Event Statuses","href":"/guides/rewards-management/reward-fulfillment/look-up-and-understand-your-program-event-statuses"},{"title":"Approving and Declining Events Workflow","href":"/guides/rewards-management/reward-fulfillment/approving-and-declining-events-workflow"},{"title":"How to Manually Create a Referral or other Event","href":"/guides/rewards-management/reward-fulfillment/how-to-manually-create-a-referral-or-other-event"},{"title":"How to Block Users and Decline Shares","href":"/guides/rewards-management/reward-fulfillment/how-to-block-users-and-decline-shares"},{"title":"Troubleshooting a Friend's Referral Discount Not Applying","href":"/guides/rewards-management/reward-fulfillment/troubleshooting-friend-referral-discount-not-applying"},{"title":"Managing Member Points","href":"/guides/rewards-management/reward-fulfillment/managing-member-points"}]},{"group":"Setting up your Rewards","pages":[{"title":"How to Reward with Tango Gift Cards","href":"/guides/rewards-management/setting-up-your-rewards/how-to-reward-with-tango-gift-cards"},{"title":"How to Reward with Salesforce Commerce Cloud","href":"/guides/rewards-management/setting-up-your-rewards/how-to-reward-with-salesforce-commerce-cloud"},{"title":"How to Reward with Account Credits","href":"/guides/rewards-management/setting-up-your-rewards/how-to-reward-with-account-credits"},{"title":"How to Reward with Coupons","href":"/guides/rewards-management/setting-up-your-rewards/how-to-reward-with-coupons"},{"title":"Offer Advocates Multiple Gift Card Options","href":"/guides/rewards-management/setting-up-your-rewards/offer-advocates-multiple-gift-card-options"},{"title":"Auto-Applying Multi-Use Coupons","href":"/guides/rewards-management/setting-up-your-rewards/auto-applying-multi-use-coupons"},{"title":"General Information About Tango Gift Cards","href":"/guides/rewards-management/setting-up-your-rewards/general-information-about-tango-gift-cards"},{"title":"Using Reward and Share Link Passes with a Mobile Wallet","href":"/guides/rewards-management/setting-up-your-rewards/using-reward-passes-with-a-mobile-wallet"},{"title":"How to Configure Reward Expiration","href":"/guides/rewards-management/setting-up-your-rewards/how-to-configure-reward-expiration"},{"title":"Rewards Overview and FAQ","href":"/guides/rewards-management/setting-up-your-rewards/rewards-overview-and-faq"}]},{"title":"Sending Rewards with Tremendous","href":"/guides/rewards-management/sending-rewards-with-tremendous"},{"title":"Set Up Account Credits for Financial Institutions","href":"/guides/rewards-management/set-up-account-credits-for-financial-institutions"}]},{"group":"Strategy \u0026 Best Practices","pages":[{"group":"Tactics \u0026 Strategy","pages":[{"title":"Capturing In-Person Referrals","href":"/guides/strategy-and-best-practices/tactics-and-strategy/capturing-in-person-referrals"},{"title":"How to Market Your Program","href":"/guides/strategy-and-best-practices/tactics-and-strategy/how-to-market-your-program"},{"title":"Top-Performing CTA: Implement the Overlay Call-to-Action Across Your Site","href":"/guides/strategy-and-best-practices/tactics-and-strategy/top-performing-cta-implement-the-overlay-call-to-action-across-your-site"},{"title":"Taking Referrals from Site-to-Store","href":"/guides/strategy-and-best-practices/tactics-and-strategy/taking-referrals-from-site-to-store"},{"title":"Increasing Activity","href":"/guides/strategy-and-best-practices/tactics-and-strategy/increasing-activity"},{"title":"Create A Compelling Offer Structure","href":"/guides/strategy-and-best-practices/tactics-and-strategy/create-a-compelling-offer-structure"}]},{"group":"Campaign Optimization","pages":[{"title":"A/B Testing Your Offer","href":"/guides/strategy-and-best-practices/campaign-optimization/a-b-testing-your-offer"},{"title":"A/B Testing Your Campaign","href":"/guides/strategy-and-best-practices/campaign-optimization/a-b-testing-your-campaign"},{"title":"How Do I Enable Content Sharing?","href":"/guides/strategy-and-best-practices/campaign-optimization/how-do-i-enable-content-sharing"},{"title":"Optimizing Share Channels","href":"/guides/strategy-and-best-practices/campaign-optimization/optimizing-share-channels"},{"title":"How Do I Prevent Ad Blockers from Blocking My Extole Experience","href":"/guides/strategy-and-best-practices/campaign-optimization/how-do-i-prevent-ad-blockers-from-blocking-my-extole-experience"},{"title":"Boost Share Rates with the Stats Drip","href":"/guides/strategy-and-best-practices/campaign-optimization/boost-share-rates-with-the-stats-drip"},{"title":"Enable and Test Friend Reminder Email","href":"/guides/strategy-and-best-practices/campaign-optimization/enable-and-test-friend-reminder-email"},{"title":"Mail After Purchase - Asking for a Referral When It Matters","href":"/guides/strategy-and-best-practices/campaign-optimization/mail-after-purchase-asking-for-a-referral-when-it-matters"},{"title":"Optimizing your Referral Program","href":"/guides/strategy-and-best-practices/campaign-optimization/optimizing-your-referral-program"},{"title":"Using Promotion Badges","href":"/guides/strategy-and-best-practices/campaign-optimization/using-promotion-badges"},{"title":"Why You Should Pop-up Your Advocate Share Experience","href":"/guides/strategy-and-best-practices/campaign-optimization/why-you-should-pop-up-your-advocate-share-experience"},{"title":"Invite Customers to Share Post-Purchase","href":"/guides/strategy-and-best-practices/campaign-optimization/invite-customers-to-share-post-purchase"},{"title":"What to Do About a High Acquisition Rate","description":"When a high acquisition rate is a healthy funnel vs when a few advocates are inflating it — and how to isolate those people into an Ambassador program.","href":"/guides/strategy-and-best-practices/campaign-optimization/what-to-do-about-a-high-acquisition-rate"},{"title":"Choosing Your Point-to-Reward Ratio","href":"/guides/strategy-and-best-practices/campaign-optimization/choosing-your-point-to-reward-ratio"},{"title":"Testing Your Loyalty Program","description":"What to test in a loyalty program — earn rates, redemption thresholds, reward mix, and messaging — and how to read the result when rewards take time to accumulate.","href":"/guides/strategy-and-best-practices/campaign-optimization/testing-your-loyalty-program"}]},{"title":"Create Your Own Customer Facing FAQ","href":"/guides/strategy-and-best-practices/create-your-own-customer-facing-faq"},{"title":"Trigger Advocacy with Seasonal and Burst Promotions","href":"/guides/strategy-and-best-practices/trigger-advocacy-with-seasonal-and-burst-promotions"}]},{"group":"Notifications \u0026 Troubleshooting","pages":[{"group":"Platform \u0026 Admin","pages":[{"title":"How do I view Extole System Status and subscribe to Extole Updates?","href":"/guides/notifications-and-troubleshooting/platform-and-admin/how-do-i-view-extole-system-status-and-subscribe-to-extole-updates"},{"title":"Why Is the From Address @email.referral-mail.com?","href":"/guides/notifications-and-troubleshooting/platform-and-admin/why-is-the-from-email-email-referral-mail-com-gmail-friendly-from-changes"},{"title":"How can I Whitelist My Extole in uBlock Origin?","href":"/guides/notifications-and-troubleshooting/platform-and-admin/how-can-i-whitelist-my-extole-in-ublock-origin"},{"title":"Extole Browser Support","href":"/guides/notifications-and-troubleshooting/platform-and-admin/extole-browser-support"},{"title":"Login Troubleshooting Tips","href":"/guides/notifications-and-troubleshooting/platform-and-admin/login-troubleshooting-tips"},{"title":"Subscribing to My Extole Notifications","href":"/guides/notifications-and-troubleshooting/platform-and-admin/subscribing-to-my-extole-notifications"},{"title":"What to do When you Get a Notification","href":"/guides/notifications-and-troubleshooting/platform-and-admin/what-to-do-when-you-get-a-notification"}]},{"group":"Troubleshooting","pages":[{"title":"Quick Troubleshooting Guide","href":"/guides/notifications-and-troubleshooting/troubleshooting/quick-troubleshooting-guide"}]},{"title":"Managing Your SSL Certificates","href":"/guides/notifications-and-troubleshooting/managing-your-ssl-certificates"}]},{"group":"Compliance \u0026 Policies","pages":[{"title":"ADA Compliance","href":"/guides/compliance-and-policies/ada-compliance"},{"title":"Data Processing Agreement","href":"/guides/compliance-and-policies/data-processing-agreement"},{"title":"Data Subject Rights","href":"/guides/compliance-and-policies/data-subject-rights"},{"title":"Extole Cookie Handling","href":"/guides/compliance-and-policies/extole-cookie-handling"}]},{"group":"User Management","pages":[{"group":"Managing Users","pages":[{"title":"Deleting Team Members","href":"/guides/user-management/managing-users/deleting-team-members"},{"title":"Okta Single Sign-On to My Extole","href":"/guides/user-management/managing-users/okta-single-sign-on-to-my-extole"},{"title":"Creating an Extole Account","href":"/guides/user-management/managing-users/creating-an-extole-account"},{"title":"Inviting Team Members","href":"/guides/user-management/managing-users/inviting-team-members"},{"title":"Managing Your Extole Users","href":"/guides/user-management/managing-users/managing-your-extole-users"},{"title":"User Roles \u0026 Permissions","href":"/guides/user-management/managing-users/user-roles-permissions"}]},{"title":"Access Multiple Instances","href":"/guides/user-management/access-multiple-instances"}]},{"group":"Flow Campaigns","root":{"title":"Flow Campaigns","href":"/guides/flow-campaigns/index"},"pages":[{"title":"How to Create a Reward That Triggers on Event Data","href":"/guides/flow-campaigns/how-to-create-a-reward-that-triggers-on-event-data"},{"title":"How to Set Up Bonus Rewards on a Specific Referral Count (2nd, 3rd, 5th, etc.)","href":"/guides/flow-campaigns/how-to-set-up-bonus-rewards-on-a-specific-referral-count-2nd-3rd-5th-etc"},{"title":"Change the Reward on your Program","href":"/guides/flow-campaigns/change-the-reward-on-your-program"},{"title":"Common Trigger Rules","href":"/guides/flow-campaigns/common-trigger-rules"},{"title":"How to Set Up Triggered By","href":"/guides/flow-campaigns/how-to-set-up-triggered-by"},{"title":"Configure Common Reward Scenarios for Credit Unions and Banks","href":"/guides/flow-campaigns/configure-common-reward-scenarios-for-credit-unions-and-banks"},{"title":"Default Business Event Quality Rules","href":"/guides/flow-campaigns/default-business-event-quality-rules"},{"title":"How to Add a Coupon Reward to Your Referral Program","href":"/guides/flow-campaigns/how-to-add-a-coupon-reward-to-your-referral-program"},{"title":"How to Add a New Business Event","href":"/guides/flow-campaigns/how-to-add-a-new-business-event"},{"title":"How to Add a New Reward","href":"/guides/flow-campaigns/how-to-add-a-new-reward"},{"title":"How to Add a Promotion Email or Onsite CTA","href":"/guides/flow-campaigns/how-to-add-a-promotion-email-or-onsite-cta"},{"title":"How to Approve Failed Rewards","href":"/guides/flow-campaigns/how-to-approve-failed-rewards"},{"title":"How to Issue a Manual Reward","href":"/guides/flow-campaigns/how-to-issue-a-manual-reward"},{"title":"How to Set Up a Reward","href":"/guides/flow-campaigns/how-to-set-up-a-reward"},{"title":"How to Set Up a Tango Gift Card Reward","href":"/guides/flow-campaigns/how-to-set-up-a-tango-gift-card-reward"},{"title":"How to Set Up Business Event Rules","href":"/guides/flow-campaigns/how-to-set-up-business-event-rules"},{"title":"How to Set Up Reward Rules","href":"/guides/flow-campaigns/how-to-set-up-reward-rules"},{"title":"How to Target a Program","href":"/guides/flow-campaigns/how-to-target-a-program"}]}]},{"tab":"API Reference","pages":[{"title":"API Reference","href":"/api-reference/getting-started/api-overview"}]},{"tab":"News","pages":[{"title":"News","href":"/news/recent-releases"}]}]},"basePath":"","title":"Choosing Your Point-to-Reward Ratio - Extole Documentation","buildId":"dpl_Fyv1NbzwP68g2bEH2Roy98uY1zmE","deploymentId":"dpl_Fyv1NbzwP68g2bEH2Roy98uY1zmE","dynamics":[],"chunks":[]}