{"id":5960,"date":"2026-08-17T16:12:40","date_gmt":"2026-08-17T16:12:40","guid":{"rendered":"https:\/\/adex.com\/blog\/?p=5960"},"modified":"2026-08-17T16:44:24","modified_gmt":"2026-08-17T16:44:24","slug":"multi-accounting-detection","status":"publish","type":"post","link":"https:\/\/adex.com\/blog\/multi-accounting-detection\/","title":{"rendered":"Multi-Accounting Detection: Finding One User Behind Many Identities"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\">A welcome bonus is priced for one person claiming it once. When one person claims it forty times, nothing visibly breaks: each account registers cleanly, meets the condition, takes the incentive, and goes quiet. Multi-accounting detection is the work of proving those forty customers were one, using data you already hold.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">No stolen card, no injected script \u2013 just a person who read the promo terms closely and worked out that the cheapest input in an acquisition funnel is a new identity. Analysts who work these cases describe it the same way: it&#8217;s rarely sophisticated, but economically sensible.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">So the question is whether your funnel makes the attempt profitable, and whether you find out at signup or after the money has left.<\/p>\n\n\n<div class=\"toc\"><h4 class=\"toc__title\" id=\"contents\">Contents<\/h4><ul class=\"toc__list\"><li class=\"toc__list_item\"><a href=\"#one-person-many-customers-how-the-cycle-repeats\">One Person, Many Customers: How the Cycle Repeats<\/a><\/li><li class=\"toc__list_item\"><a href=\"#the-arithmetic-behind-every-farmed-identity\">The Arithmetic Behind Every Farmed Identity<\/a><\/li><li class=\"toc__list_item\"><a href=\"#linkage-layers-ordered-by-what-they-cost-to-defeat\">Linkage Layers, Ordered by What They Cost to Defeat<\/a><\/li><li class=\"toc__list_item\"><a href=\"#what-the-signup-surface-gives-away\">What the Signup Surface Gives Away<\/a><\/li><li class=\"toc__list_item\"><a href=\"#the-two-links-that-cost-real-money-to-break\">The Two Links That Cost Real Money to Break<\/a><\/li><li class=\"toc__list_item\"><a href=\"#where-the-check-belongs-and-who-pays-for-it\">Where the Check Belongs, and Who Pays for It<\/a><\/li><li class=\"toc__list_item\"><a href=\"#where-multi-accounting-detection-breaks-down\">Where Multi-Accounting Detection Breaks Down<\/a><\/li><li class=\"toc__list_item\"><a href=\"#faq\">FAQ<\/a><\/li><li class=\"toc__list_item\"><a href=\"#pricing-the-check-before-you-price-the-bonus\">Pricing the Check Before You Price the Bonus<\/a><\/li><\/ul><\/div><style>\n.toc {}\n.toc__title {\n      font-size: 32px;\n    line-height: 40px;\n    font-weight: 700;\n}\n.toc__list_item {\n    color: #FE645A !important;\n}\n.toc__list_item:not(:last-child){\n    margin-bottom: 5px;\n}\n.toc__list_item a {\n    font-size: 18px;\n    line-height: 24px;\n    color: #FE645A;\n    font-weight: 600;\n}\n.toc__list_item a:hover {\n    text-decoration: underline;\n}\n@media (max-width: 1023px) {.toc__title {font-size: 24px;line-height: 32px;}}\n<\/style>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"key-takeaways\">Key Takeaways:<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Bonus abuse is a margin business: it runs while the payout per identity beats the cost of producing one.<\/li>\n\n\n\n<li>Linkage signals differ in durability. Network origin and inbox addresses rotate cheaply; behavior and the destination of the money do not.<\/li>\n\n\n\n<li>You pay twice for a farmed account: the incentive, plus the acquisition cost of a signup counted as new.<\/li>\n\n\n\n<li>A signup check is cheaper than a post-payout investigation, but its friction lands on everyone, and suppressed conversions never appear in a report.<\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"one-person-many-customers-how-the-cycle-repeats\">One Person, Many Customers: How the Cycle Repeats<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">The cycle has four steps, and none of them are hidden:<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>An account registers with a fresh address and a fresh number.<\/li>\n\n\n\n<li>It does whatever the promo requires: a first deposit, a first order, a confirmed email, etc. <\/li>\n\n\n\n<li>The incentive lands, the value moves somewhere durable.<\/li>\n\n\n\n<li>The account is parked until the offer repeats.<\/li>\n<\/ol>\n\n\n\n<p class=\"wp-block-paragraph\">Referral programs tighten the loop, because one operator can sit on both ends: account one refers account two, and the referral payout arrives on top of the bonus. Group-IB&#8217;s <a href=\"https:\/\/www.group-ib.com\/resources\/knowledge-hub\/bonus-abuse-fraud\/\" target=\"_blank\" rel=\"noreferrer noopener nofollow\">knowledge hub entry on bonus abuse<\/a> walks through this family of schemes and the indicators that expose them.<\/p>\n\n\n<div class=\"block__bord\"><div class=\"block__bord_desc\"><p>The common thread is that no individual account looks wrong. Every one passes review on its own merits, because the abuse is a property of the set rather than any member of it, so detection has to be about relationships.<\/p>\n<\/div><\/div>\n<style>\n.block__bord { margin: 32px 0; padding: 1.25em 2.375em;\tborder-radius: 24px; background: rgba(0, 220, 200, 0.20); }\n.block__bord_desc {font-size: 16px !important;font-weight: 400 !important;color: #606060 !important;}\n<\/style>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"the-arithmetic-behind-every-farmed-identity\">The Arithmetic Behind Every Farmed Identity<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Whether the scheme runs is a subtraction problem. On one side is the payout per identity: welcome bonus, promo code value, referral fee, and whatever share of that converts into something the operator keeps. On the other is the cost of producing one identity that survives your checks, and it is never one item. An inbox address is effectively free; a phone number that receives codes is not. Add device or browser separation so two accounts do not look identical, a network path that does not resolve to one origin, a destination where value can land, and the operator&#8217;s own time: a one-person farm has a ceiling measured in accounts per hour.<\/p>\n\n\n<div class=\"block__bord\"><div class=\"block__bord_desc\"><p>The scheme scales while payout stays above that cost, so every layer you add either raises production cost or catches accounts before they withdraw. Neither of those requires identifying who the operator actually is.<\/p>\n<\/div><\/div>\n<style>\n.block__bord { margin: 32px 0; padding: 1.25em 2.375em;\tborder-radius: 24px; background: rgba(0, 220, 200, 0.20); }\n.block__bord_desc {font-size: 16px !important;font-weight: 400 !important;color: #606060 !important;}\n<\/style>\n\n\n\n<p class=\"wp-block-paragraph\">A second loss hides in reporting. If those registrations came through a paid channel, an advertiser paid acquisition cost per identity on top of the incentive, and cohort metrics absorb it quietly: retention looks weak, and the channel gets blamed, when one user was counted many times.<\/p>\n\n\n<div class=\"block__preview\">\n        <a href=\"https:\/\/adex.com\/blog\/free-trial-abuse-saas\/\" class=\"block__preview_img\"><img src=\"https:\/\/adex.com\/blog\/wp-content\/uploads\/2026\/07\/Adex-Free-Trial-Abuse-in-SaaS.png\" srcset=\"https:\/\/adex.com\/blog\/wp-content\/uploads\/2026\/07\/Adex-Free-Trial-Abuse-in-SaaS.png\" sizes=\"100vw\" alt=\"Adex - free trial abuse in SaaS showing how fraudulent signups distort growth metrics and increase infrastructure costs.\" decoding=\"async\" class=\"lazy\"><\/a>\n    <div class=\"block__preview_box\">\n        <a href=\"https:\/\/adex.com\/blog\/category\/current_risks\/\" class=\"block__preview_box-cat\">Current risks<\/a>        <h3 class=\"block__preview_box-title\" id=\"free-trial-abuse-in-saas-when-signups-cost-more-than-they-return\"><a href=\"https:\/\/adex.com\/blog\/free-trial-abuse-saas\/\">Free-Trial Abuse in SaaS: When Signups Cost More Than They Return<\/a><\/h3>\n    <\/div>\n<\/div>\n<style>\n.block__preview {display: flex;align-items: center;justify-content: center; margin: 32px 0;}\n.block__preview a {text-decoration: none;}\n.block__preview_img {min-width: 360px;max-width: 360px;min-height: 188px;width: 100%;height: 100%;}\n.block__preview_img img {width: 100%;height: 100%;}\n.block__preview_box {margin-left: 40px;max-width: 360px;}\n.block__preview_box-cat {color: #00B8A7 !important;font-weight: 600;font-size: 12px;line-height: 16px;text-transform: uppercase; display: block; margin-bottom: 4px;}\n.block__preview_box-cat:hover {color: #FE645A !important; text-decoration: none !important;}\n.block__preview_box-title {font-size: 20px;font-weight: 700;line-height: 24px;color: #0B172D;}\n.block__preview_box-title a {color: #0B172D !important;}\n.block__preview_box-title a:hover {color: #FE645A !important;}\n@media screen and (max-width: 768px) {.block__preview {flex-direction: column;}.block__preview_box {max-width: 100%; margin-top: 32px;margin-left: 0px;}.block__preview_img {max-width: 100%;min-width: 100%;min-height: 100%;}}<\/style>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"linkage-layers-ordered-by-what-they-cost-to-defeat\">Linkage Layers, Ordered by What They Cost to Defeat<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Ranking these layers by how convincing they look in a review queue is the wrong order. A signal is worth what it costs the other side to break, and the cheapest to collect are the cheapest to evade.<\/p>\n\n\n\n<figure class=\"wp-block-table is-style-stripes\"><table class=\"has-fixed-layout\"><thead><tr><th><strong>Linkage layer<\/strong><\/th><th><strong>What connects the accounts<\/strong><\/th><th><strong>Cost to break it<\/strong><\/th><th><strong>Where it fails you<\/strong><\/th><\/tr><\/thead><tbody><tr><td>Network origin<\/td><td>Same address or subnet, data center ranges<\/td><td>Low: a new exit node per session<\/td><td>Carrier pooling hides real users behind one address<\/td><\/tr><tr><td>Contact identifiers<\/td><td><a href=\"https:\/\/adex.com\/blog\/fake-signup-detection\/\" type=\"link\" id=\"https:\/\/adex.com\/blog\/fake-signup-detection\/\">Disposable inbox domains, a reused number<\/a><\/td><td>Low to moderate: inboxes are free, numbers are not<\/td><td>Recycled numbers collide honestly<\/td><\/tr><tr><td>Device and browser<\/td><td>Repeating fingerprint, hardware attributes<\/td><td>Moderate: anti-detect profiles or separate devices<\/td><td>Homes and offices share devices<\/td><\/tr><tr><td>Behavior and timing<\/td><td>Same route, same claim latency, one window<\/td><td>High: needs more humans or better automation<\/td><td>Needs volume and a baseline first<\/td><\/tr><tr><td>Money<\/td><td>One payout destination, one instrument<\/td><td>High: value must arrive somewhere reachable<\/td><td>Arrives after the incentive is granted<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">The top rows buy fast coverage against casual repetition. The bottom rows are where detection pays for itself, and they arrive latest.<\/p>\n\n\n\n<style>\n#adx-account-links-v1,\n#adx-account-links-v1 * {\n  box-sizing: border-box !important;\n}\n\n#adx-account-links-v1 {\n  width: 100% !important;\n  max-width: 1120px !important;\n  margin: 32px auto !important;\n  padding: 0 !important;\n  overflow: hidden !important;\n  color: #16181d !important;\n  background: #ffffff !important;\n  border: 1px solid #d8dee9 !important;\n  border-radius: 16px !important;\n  box-shadow: 0 8px 28px rgba(22, 24, 29, 0.07) !important;\n  font-family: Arial, Helvetica, sans-serif !important;\n}\n\n#adx-account-links-v1 .adx-al-header {\n  padding: 30px 32px 23px !important;\n  background: #ffffff !important;\n  border-bottom: 1px solid #e5e9f0 !important;\n}\n\n#adx-account-links-v1 .adx-al-title {\n  margin: 0 0 8px !important;\n  padding: 0 !important;\n  color: #16181d !important;\n  font-family: Arial, Helvetica, sans-serif !important;\n  font-size: 26px !important;\n  font-weight: 700 !important;\n  line-height: 1.25 !important;\n  letter-spacing: -0.02em !important;\n}\n\n#adx-account-links-v1 .adx-al-intro {\n  max-width: 820px !important;\n  margin: 0 !important;\n  padding: 0 !important;\n  color: #5b6472 !important;\n  font-family: Arial, Helvetica, sans-serif !important;\n  font-size: 14px !important;\n  font-weight: 400 !important;\n  line-height: 1.5 !important;\n}\n\n#adx-account-links-v1 .adx-al-desktop {\n  display: block !important;\n  padding: 24px 24px 0 !important;\n}\n\n#adx-account-links-v1 .adx-al-chart {\n  display: block !important;\n  width: 100% !important;\n  height: auto !important;\n  margin: 0 !important;\n}\n\n#adx-account-links-v1 .adx-al-mobile {\n  display: none !important;\n}\n\n#adx-account-links-v1 .adx-al-legend {\n  display: grid !important;\n  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;\n  gap: 14px !important;\n  margin: 22px 24px 0 !important;\n  padding: 18px !important;\n  background: #f4f6fa !important;\n  border: 1px solid #d8dee9 !important;\n  border-radius: 11px !important;\n}\n\n#adx-account-links-v1 .adx-al-legend-item {\n  display: grid !important;\n  grid-template-columns: 30px minmax(0, 1fr) !important;\n  gap: 10px !important;\n  align-items: start !important;\n  margin: 0 !important;\n  padding: 0 !important;\n}\n\n#adx-account-links-v1 .adx-al-legend-line {\n  display: block !important;\n  width: 28px !important;\n  height: 4px !important;\n  margin: 8px 0 0 !important;\n  background: var(--adx-link-color) !important;\n  border-radius: 4px !important;\n}\n\n#adx-account-links-v1 .adx-al-legend-blue {\n  --adx-link-color: #2f6bff;\n}\n\n#adx-account-links-v1 .adx-al-legend-amber {\n  --adx-link-color: #e8a33d;\n}\n\n#adx-account-links-v1 .adx-al-legend-green {\n  --adx-link-color: #2fa37c;\n}\n\n#adx-account-links-v1 .adx-al-legend-copy {\n  margin: 0 !important;\n  padding: 0 !important;\n  color: #343945 !important;\n  font-family: Arial, Helvetica, sans-serif !important;\n  font-size: 13px !important;\n  font-weight: 400 !important;\n  line-height: 1.48 !important;\n}\n\n#adx-account-links-v1 .adx-al-legend-copy strong {\n  color: #16181d !important;\n  font-weight: 700 !important;\n}\n\n#adx-account-links-v1 .adx-al-caption {\n  display: block !important;\n  margin: 0 !important;\n  padding: 18px 24px 23px !important;\n  color: #697280 !important;\n  font-family: Arial, Helvetica, sans-serif !important;\n  font-size: 12.5px !important;\n  font-style: normal !important;\n  font-weight: 400 !important;\n  line-height: 1.5 !important;\n  text-align: left !important;\n}\n\n#adx-account-links-v1 .adx-al-mobile-operator {\n  margin: 0 0 16px !important;\n  padding: 18px !important;\n  color: #ffffff !important;\n  background: #16181d !important;\n  border-radius: 10px !important;\n  text-align: center !important;\n}\n\n#adx-account-links-v1 .adx-al-mobile-operator strong {\n  display: block !important;\n  margin: 0 0 4px !important;\n  color: #ffffff !important;\n  font-family: Arial, Helvetica, sans-serif !important;\n  font-size: 16px !important;\n  font-weight: 700 !important;\n  line-height: 1.35 !important;\n}\n\n#adx-account-links-v1 .adx-al-mobile-operator span {\n  display: block !important;\n  color: #d8dee9 !important;\n  font-family: Arial, Helvetica, sans-serif !important;\n  font-size: 12.5px !important;\n  font-weight: 400 !important;\n  line-height: 1.4 !important;\n}\n\n#adx-account-links-v1 .adx-al-mobile-list {\n  display: grid !important;\n  gap: 11px !important;\n  margin: 0 !important;\n  padding: 0 !important;\n}\n\n#adx-account-links-v1 .adx-al-mobile-row {\n  --adx-link-color: #2f6bff;\n  position: relative !important;\n  display: grid !important;\n  grid-template-columns: minmax(125px, 0.9fr) minmax(0, 1.1fr) !important;\n  gap: 13px !important;\n  align-items: center !important;\n  margin: 0 !important;\n  padding: 14px 15px 14px 20px !important;\n  background: #f7f8fb !important;\n  border: 1px solid #d8dee9 !important;\n  border-radius: 9px !important;\n}\n\n#adx-account-links-v1 .adx-al-mobile-row::before {\n  position: absolute !important;\n  top: 10px !important;\n  bottom: 10px !important;\n  left: 0 !important;\n  width: 4px !important;\n  content: \"\" !important;\n  background: var(--adx-link-color) !important;\n  border-radius: 0 4px 4px 0 !important;\n}\n\n#adx-account-links-v1 .adx-al-mobile-blue {\n  --adx-link-color: #2f6bff;\n}\n\n#adx-account-links-v1 .adx-al-mobile-amber {\n  --adx-link-color: #e8a33d;\n}\n\n#adx-account-links-v1 .adx-al-mobile-green {\n  --adx-link-color: #2fa37c;\n}\n\n#adx-account-links-v1 .adx-al-mobile-signal {\n  margin: 0 !important;\n  padding: 0 !important;\n  color: #343945 !important;\n  font-family: Arial, Helvetica, sans-serif !important;\n  font-size: 13px !important;\n  font-weight: 700 !important;\n  line-height: 1.4 !important;\n}\n\n#adx-account-links-v1 .adx-al-mobile-account {\n  margin: 0 !important;\n  padding: 10px 12px !important;\n  background: #ffffff !important;\n  border: 1px solid #d8dee9 !important;\n  border-radius: 7px !important;\n}\n\n#adx-account-links-v1 .adx-al-mobile-account strong {\n  display: block !important;\n  margin: 0 0 2px !important;\n  color: #16181d !important;\n  font-family: Arial, Helvetica, sans-serif !important;\n  font-size: 13.5px !important;\n  font-weight: 700 !important;\n  line-height: 1.35 !important;\n}\n\n#adx-account-links-v1 .adx-al-mobile-account span {\n  display: block !important;\n  color: #5b6472 !important;\n  font-family: Arial, Helvetica, sans-serif !important;\n  font-size: 12px !important;\n  font-weight: 400 !important;\n  line-height: 1.4 !important;\n}\n\n@media (max-width: 860px) {\n  #adx-account-links-v1 .adx-al-desktop {\n    display: none !important;\n  }\n\n  #adx-account-links-v1 .adx-al-mobile {\n    display: block !important;\n    padding: 20px 20px 0 !important;\n  }\n\n  #adx-account-links-v1 .adx-al-legend {\n    grid-template-columns: 1fr !important;\n    margin: 20px 20px 0 !important;\n  }\n\n  #adx-account-links-v1 .adx-al-caption {\n    padding-right: 20px !important;\n    padding-left: 20px !important;\n  }\n}\n\n@media (max-width: 520px) {\n  #adx-account-links-v1 {\n    margin: 24px auto !important;\n    border-radius: 12px !important;\n  }\n\n  #adx-account-links-v1 .adx-al-header {\n    padding: 24px 20px 20px !important;\n  }\n\n  #adx-account-links-v1 .adx-al-title {\n    font-size: 21px !important;\n  }\n\n  #adx-account-links-v1 .adx-al-intro {\n    font-size: 13px !important;\n  }\n\n  #adx-account-links-v1 .adx-al-mobile {\n    padding: 18px 16px 0 !important;\n  }\n\n  #adx-account-links-v1 .adx-al-mobile-row {\n    grid-template-columns: 1fr !important;\n    gap: 8px !important;\n    padding: 13px 13px 13px 19px !important;\n  }\n\n  #adx-account-links-v1 .adx-al-legend {\n    margin: 18px 16px 0 !important;\n    padding: 16px !important;\n  }\n\n  #adx-account-links-v1 .adx-al-caption {\n    padding: 16px 16px 19px !important;\n  }\n}\n<\/style>\n\n<figure\n  id=\"adx-account-links-v1\"\n  aria-labelledby=\"adx-account-links-title-v1\"\n  aria-describedby=\"adx-account-links-description-v1\"\n>\n  <header class=\"adx-al-header\">\n    <h3 id=\"adx-account-links-title-v1\" class=\"adx-al-title\">\n      How Accounts Link Back to One Operator\n    <\/h3>\n\n    <p id=\"adx-account-links-description-v1\" class=\"adx-al-intro\">\n      Edge color shows what it costs the abuser to break each link, not how strong\n      the evidence looks.\n    <\/p>\n  <\/header>\n\n  <div class=\"adx-al-desktop\">\n    <svg\n      class=\"adx-al-chart\"\n      xmlns=\"http:\/\/www.w3.org\/2000\/svg\"\n      viewBox=\"0 0 1000 520\"\n      role=\"img\"\n      aria-labelledby=\"adx-account-links-svg-title-v1 adx-account-links-svg-desc-v1\"\n    >\n      <title id=\"adx-account-links-svg-title-v1\">\n        Six accounts linked to one operator through device, payment, behavior,\n        network, email, and phone signals\n      <\/title>\n\n      <desc id=\"adx-account-links-svg-desc-v1\">\n        A central human operator connects to six surrounding accounts. Blue\n        connections are cheap to change, amber connections have a moderate cost,\n        and green connections are expensive to change.\n      <\/desc>\n\n      <defs>\n        <marker\n          id=\"adx-arrow-blue-v1\"\n          markerWidth=\"8\"\n          markerHeight=\"8\"\n          refX=\"7\"\n          refY=\"4\"\n          orient=\"auto\"\n        >\n          <path d=\"M0,0 L8,4 L0,8 Z\" fill=\"#2f6bff\"><\/path>\n        <\/marker>\n\n        <marker\n          id=\"adx-arrow-amber-v1\"\n          markerWidth=\"8\"\n          markerHeight=\"8\"\n          refX=\"7\"\n          refY=\"4\"\n          orient=\"auto\"\n        >\n          <path d=\"M0,0 L8,4 L0,8 Z\" fill=\"#e8a33d\"><\/path>\n        <\/marker>\n\n        <marker\n          id=\"adx-arrow-green-v1\"\n          markerWidth=\"8\"\n          markerHeight=\"8\"\n          refX=\"7\"\n          refY=\"4\"\n          orient=\"auto\"\n        >\n          <path d=\"M0,0 L8,4 L0,8 Z\" fill=\"#2fa37c\"><\/path>\n        <\/marker>\n      <\/defs>\n\n      <rect\n        x=\"30\"\n        y=\"20\"\n        width=\"940\"\n        height=\"480\"\n        rx=\"12\"\n        fill=\"#f4f6fa\"\n        stroke=\"#d8dee9\"\n        stroke-width=\"1.5\"\n      ><\/rect>\n\n      <line\n        x1=\"610\"\n        y1=\"260\"\n        x2=\"740\"\n        y2=\"260\"\n        stroke=\"#e8a33d\"\n        stroke-width=\"2.4\"\n        marker-end=\"url(#adx-arrow-amber-v1)\"\n      ><\/line>\n\n      <line\n        x1=\"560\"\n        y1=\"300\"\n        x2=\"650\"\n        y2=\"390\"\n        stroke=\"#2fa37c\"\n        stroke-width=\"2.4\"\n        marker-end=\"url(#adx-arrow-green-v1)\"\n      ><\/line>\n\n      <line\n        x1=\"440\"\n        y1=\"300\"\n        x2=\"350\"\n        y2=\"390\"\n        stroke=\"#2fa37c\"\n        stroke-width=\"2.4\"\n        marker-end=\"url(#adx-arrow-green-v1)\"\n      ><\/line>\n\n      <line\n        x1=\"390\"\n        y1=\"260\"\n        x2=\"260\"\n        y2=\"260\"\n        stroke=\"#2f6bff\"\n        stroke-width=\"2.4\"\n        marker-end=\"url(#adx-arrow-blue-v1)\"\n      ><\/line>\n\n      <line\n        x1=\"440\"\n        y1=\"220\"\n        x2=\"350\"\n        y2=\"130\"\n        stroke=\"#2f6bff\"\n        stroke-width=\"2.4\"\n        marker-end=\"url(#adx-arrow-blue-v1)\"\n      ><\/line>\n\n      <line\n        x1=\"560\"\n        y1=\"220\"\n        x2=\"650\"\n        y2=\"130\"\n        stroke=\"#e8a33d\"\n        stroke-width=\"2.4\"\n        marker-end=\"url(#adx-arrow-amber-v1)\"\n      ><\/line>\n\n      <rect\n        x=\"390\"\n        y=\"220\"\n        width=\"220\"\n        height=\"80\"\n        rx=\"11\"\n        fill=\"#16181d\"\n      ><\/rect>\n\n      <text\n        x=\"500\"\n        y=\"252\"\n        fill=\"#ffffff\"\n        font-family=\"Arial, Helvetica, sans-serif\"\n        font-size=\"16\"\n        font-weight=\"700\"\n        text-anchor=\"middle\"\n      >\n        One human operator\n      <\/text>\n\n      <text\n        x=\"500\"\n        y=\"276\"\n        fill=\"#d8dee9\"\n        font-family=\"Arial, Helvetica, sans-serif\"\n        font-size=\"12.5\"\n        text-anchor=\"middle\"\n      >\n        one funnel, one payout plan\n      <\/text>\n\n      <g>\n        <rect x=\"740\" y=\"230\" width=\"200\" height=\"60\" rx=\"9\" fill=\"#ffffff\" stroke=\"#d8dee9\" stroke-width=\"1.5\"><\/rect>\n        <text x=\"840\" y=\"254\" fill=\"#16181d\" font-family=\"Arial, Helvetica, sans-serif\" font-size=\"14\" font-weight=\"700\" text-anchor=\"middle\">Account 1<\/text>\n        <text x=\"840\" y=\"275\" fill=\"#5b6472\" font-family=\"Arial, Helvetica, sans-serif\" font-size=\"12.5\" text-anchor=\"middle\">Bonus claimed<\/text>\n      <\/g>\n\n      <g>\n        <rect x=\"620\" y=\"390\" width=\"200\" height=\"60\" rx=\"9\" fill=\"#ffffff\" stroke=\"#d8dee9\" stroke-width=\"1.5\"><\/rect>\n        <text x=\"720\" y=\"414\" fill=\"#16181d\" font-family=\"Arial, Helvetica, sans-serif\" font-size=\"14\" font-weight=\"700\" text-anchor=\"middle\">Account 2<\/text>\n        <text x=\"720\" y=\"435\" fill=\"#5b6472\" font-family=\"Arial, Helvetica, sans-serif\" font-size=\"12.5\" text-anchor=\"middle\">Bonus claimed<\/text>\n      <\/g>\n\n      <g>\n        <rect x=\"180\" y=\"390\" width=\"200\" height=\"60\" rx=\"9\" fill=\"#ffffff\" stroke=\"#d8dee9\" stroke-width=\"1.5\"><\/rect>\n        <text x=\"280\" y=\"414\" fill=\"#16181d\" font-family=\"Arial, Helvetica, sans-serif\" font-size=\"14\" font-weight=\"700\" text-anchor=\"middle\">Account 3<\/text>\n        <text x=\"280\" y=\"435\" fill=\"#5b6472\" font-family=\"Arial, Helvetica, sans-serif\" font-size=\"12.5\" text-anchor=\"middle\">Bonus claimed<\/text>\n      <\/g>\n\n      <g>\n        <rect x=\"60\" y=\"230\" width=\"200\" height=\"60\" rx=\"9\" fill=\"#ffffff\" stroke=\"#d8dee9\" stroke-width=\"1.5\"><\/rect>\n        <text x=\"160\" y=\"254\" fill=\"#16181d\" font-family=\"Arial, Helvetica, sans-serif\" font-size=\"14\" font-weight=\"700\" text-anchor=\"middle\">Account 4<\/text>\n        <text x=\"160\" y=\"275\" fill=\"#5b6472\" font-family=\"Arial, Helvetica, sans-serif\" font-size=\"12.5\" text-anchor=\"middle\">Referral paid<\/text>\n      <\/g>\n\n      <g>\n        <rect x=\"180\" y=\"70\" width=\"200\" height=\"60\" rx=\"9\" fill=\"#ffffff\" stroke=\"#d8dee9\" stroke-width=\"1.5\"><\/rect>\n        <text x=\"280\" y=\"94\" fill=\"#16181d\" font-family=\"Arial, Helvetica, sans-serif\" font-size=\"14\" font-weight=\"700\" text-anchor=\"middle\">Account 5<\/text>\n        <text x=\"280\" y=\"115\" fill=\"#5b6472\" font-family=\"Arial, Helvetica, sans-serif\" font-size=\"12.5\" text-anchor=\"middle\">Referral paid<\/text>\n      <\/g>\n\n      <g>\n        <rect x=\"620\" y=\"70\" width=\"200\" height=\"60\" rx=\"9\" fill=\"#ffffff\" stroke=\"#d8dee9\" stroke-width=\"1.5\"><\/rect>\n        <text x=\"720\" y=\"94\" fill=\"#16181d\" font-family=\"Arial, Helvetica, sans-serif\" font-size=\"14\" font-weight=\"700\" text-anchor=\"middle\">Account 6<\/text>\n        <text x=\"720\" y=\"115\" fill=\"#5b6472\" font-family=\"Arial, Helvetica, sans-serif\" font-size=\"12.5\" text-anchor=\"middle\">Promo code used<\/text>\n      <\/g>\n\n      <g>\n        <rect x=\"616\" y=\"241\" width=\"118\" height=\"29\" rx=\"5\" fill=\"#ffffff\" stroke=\"#d8dee9\" stroke-width=\"1.2\"><\/rect>\n        <text x=\"675\" y=\"260\" fill=\"#16181d\" font-family=\"Arial, Helvetica, sans-serif\" font-size=\"12.5\" text-anchor=\"middle\">Device fingerprint<\/text>\n      <\/g>\n\n      <g>\n        <rect x=\"548\" y=\"332\" width=\"142\" height=\"29\" rx=\"5\" fill=\"#ffffff\" stroke=\"#d8dee9\" stroke-width=\"1.2\"><\/rect>\n        <text x=\"619\" y=\"351\" fill=\"#16181d\" font-family=\"Arial, Helvetica, sans-serif\" font-size=\"12.5\" text-anchor=\"middle\">Payment instrument<\/text>\n      <\/g>\n\n      <g>\n        <rect x=\"310\" y=\"332\" width=\"142\" height=\"29\" rx=\"5\" fill=\"#ffffff\" stroke=\"#d8dee9\" stroke-width=\"1.2\"><\/rect>\n        <text x=\"381\" y=\"351\" fill=\"#16181d\" font-family=\"Arial, Helvetica, sans-serif\" font-size=\"12.5\" text-anchor=\"middle\">Behavioral timing<\/text>\n      <\/g>\n\n      <g>\n        <rect x=\"266\" y=\"241\" width=\"118\" height=\"29\" rx=\"5\" fill=\"#ffffff\" stroke=\"#d8dee9\" stroke-width=\"1.2\"><\/rect>\n        <text x=\"325\" y=\"260\" fill=\"#16181d\" font-family=\"Arial, Helvetica, sans-serif\" font-size=\"12.5\" text-anchor=\"middle\">Network origin<\/text>\n      <\/g>\n\n      <g>\n        <rect x=\"324\" y=\"163\" width=\"108\" height=\"29\" rx=\"5\" fill=\"#ffffff\" stroke=\"#d8dee9\" stroke-width=\"1.2\"><\/rect>\n        <text x=\"378\" y=\"182\" fill=\"#16181d\" font-family=\"Arial, Helvetica, sans-serif\" font-size=\"12.5\" text-anchor=\"middle\">Email pattern<\/text>\n      <\/g>\n\n      <g>\n        <rect x=\"568\" y=\"163\" width=\"102\" height=\"29\" rx=\"5\" fill=\"#ffffff\" stroke=\"#d8dee9\" stroke-width=\"1.2\"><\/rect>\n        <text x=\"619\" y=\"182\" fill=\"#16181d\" font-family=\"Arial, Helvetica, sans-serif\" font-size=\"12.5\" text-anchor=\"middle\">Phone reuse<\/text>\n      <\/g>\n    <\/svg>\n  <\/div>\n\n  <div class=\"adx-al-mobile\" aria-label=\"Mobile account-link map\">\n    <div class=\"adx-al-mobile-operator\">\n      <strong>One human operator<\/strong>\n      <span>one funnel, one payout plan<\/span>\n    <\/div>\n\n    <div class=\"adx-al-mobile-list\">\n      <div class=\"adx-al-mobile-row adx-al-mobile-amber\">\n        <p class=\"adx-al-mobile-signal\">Device fingerprint<\/p>\n\n        <div class=\"adx-al-mobile-account\">\n          <strong>Account 1<\/strong>\n          <span>Bonus claimed<\/span>\n        <\/div>\n      <\/div>\n\n      <div class=\"adx-al-mobile-row adx-al-mobile-green\">\n        <p class=\"adx-al-mobile-signal\">Payment instrument<\/p>\n\n        <div class=\"adx-al-mobile-account\">\n          <strong>Account 2<\/strong>\n          <span>Bonus claimed<\/span>\n        <\/div>\n      <\/div>\n\n      <div class=\"adx-al-mobile-row adx-al-mobile-green\">\n        <p class=\"adx-al-mobile-signal\">Behavioral timing<\/p>\n\n        <div class=\"adx-al-mobile-account\">\n          <strong>Account 3<\/strong>\n          <span>Bonus claimed<\/span>\n        <\/div>\n      <\/div>\n\n      <div class=\"adx-al-mobile-row adx-al-mobile-blue\">\n        <p class=\"adx-al-mobile-signal\">Network origin<\/p>\n\n        <div class=\"adx-al-mobile-account\">\n          <strong>Account 4<\/strong>\n          <span>Referral paid<\/span>\n        <\/div>\n      <\/div>\n\n      <div class=\"adx-al-mobile-row adx-al-mobile-blue\">\n        <p class=\"adx-al-mobile-signal\">Email pattern<\/p>\n\n        <div class=\"adx-al-mobile-account\">\n          <strong>Account 5<\/strong>\n          <span>Referral paid<\/span>\n        <\/div>\n      <\/div>\n\n      <div class=\"adx-al-mobile-row adx-al-mobile-amber\">\n        <p class=\"adx-al-mobile-signal\">Phone reuse<\/p>\n\n        <div class=\"adx-al-mobile-account\">\n          <strong>Account 6<\/strong>\n          <span>Promo code used<\/span>\n        <\/div>\n      <\/div>\n    <\/div>\n  <\/div>\n\n  <div class=\"adx-al-legend\" aria-label=\"Connection cost legend\">\n    <div class=\"adx-al-legend-item adx-al-legend-blue\">\n      <span class=\"adx-al-legend-line\" aria-hidden=\"true\"><\/span>\n\n      <p class=\"adx-al-legend-copy\">\n        <strong>Cheap to change:<\/strong> a fresh proxy and a fresh inbox address\n        break these links first.\n      <\/p>\n    <\/div>\n\n    <div class=\"adx-al-legend-item adx-al-legend-amber\">\n      <span class=\"adx-al-legend-line\" aria-hidden=\"true\"><\/span>\n\n      <p class=\"adx-al-legend-copy\">\n        <strong>Moderate cost:<\/strong> separate device profiles and separate\n        phone numbers.\n      <\/p>\n    <\/div>\n\n    <div class=\"adx-al-legend-item adx-al-legend-green\">\n      <span class=\"adx-al-legend-line\" aria-hidden=\"true\"><\/span>\n\n      <p class=\"adx-al-legend-copy\">\n        <strong>Expensive to change:<\/strong> how a person behaves and where the\n        money has to land.\n      <\/p>\n    <\/div>\n  <\/div>\n\n  <figcaption class=\"adx-al-caption\">\n    The edges an abuser can rotate cheaply are the ones you should trust least.\n  <\/figcaption>\n<\/figure>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"what-the-signup-surface-gives-away\">What the Signup Surface Gives Away<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Most cheap signals arrive in the first seconds, before the account has done anything. SEON&#8217;s breakdown of <a href=\"https:\/\/seon.io\/resources\/igaming-registration-fraud-detection\/\" target=\"_blank\" rel=\"noreferrer noopener nofollow\">registration fraud detection in iGaming<\/a> names the ones that carry weight there: disposable email addresses, VPN (Virtual Private Network) and data center IP (Internet Protocol) addresses, phone numbers shared across accounts, and device identifiers already linked to more than one account. They travel across verticals, because they describe the production line rather than the product.<\/p>\n\n\n<div class=\"block__bord\"><div class=\"block__bord_desc\"><p>None is conclusive alone. A data center address by itself catches a careless operator and annoys a privacy-minded customer, while that address plus a fingerprint already seen twice this week plus a claim submitted seconds after registration is a different proposition.<\/p>\n<\/div><\/div>\n<style>\n.block__bord { margin: 32px 0; padding: 1.25em 2.375em;\tborder-radius: 24px; background: rgba(0, 220, 200, 0.20); }\n.block__bord_desc {font-size: 16px !important;font-weight: 400 !important;color: #606060 !important;}\n<\/style>\n\n\n\n<p class=\"wp-block-paragraph\">One more thing arrives at the same doorway and needs separating out. <a href=\"https:\/\/www.imperva.com\/blog\/2025-imperva-bad-bot-report-how-ai-is-supercharging-the-bot-threat\/\" type=\"link\" id=\"https:\/\/www.imperva.com\/blog\/2025-imperva-bad-bot-report-how-ai-is-supercharging-the-bot-threat\/\">The 2025 Imperva Bad Bot Report<\/a> puts automated traffic at 51% of all web traffic in 2024, with bad bots at 37%, up from 32% a year earlier. Account takeover is not multi-accounting: it uses stolen credentials to enter accounts that already exist, while multi-accounting manufactures new ones. They share the registration and login surface, so your signals are read in a crowded room, but they need separate responses.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"the-two-links-that-cost-real-money-to-break\">The Two Links That Cost Real Money to Break<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Behavior is where a farm gets expensive, because the operator is imitating variety while doing the same job repeatedly. The tells are mundane: an identical route through the funnel, no wandering into pages a real new customer wanders into, fields filled by paste rather than typing, and claim latency clustered in a narrow band. Session timing carries more weight than people expect. Real signups spread across hours and days in a shape that follows the traffic source, while a farm spreads across whatever window the operator was awake. Overlay claim timing on registration timing and the clusters often separate.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">These are relative signals, though: they need a baseline for your own funnel, so a brand new promo is the moment your coverage is thinnest. Across production environments, there is no correct point on that line, only a decision about who carries the cost of uncertainty.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">The other expensive link is the money. Value must eventually reach somewhere the operator controls, and no proxy rotation removes that, which is why payout data produces the tightest clusters: several accounts naming one destination, one instrument funding deposits under different names, a holder name that does not match the account.<\/p>\n\n\n<div class=\"block__bord\"><div class=\"block__bord_desc\"><p>The catch is that the strongest signal arrives last. By the time a payout request reaches a queue, the incentive has been granted, the acquisition cost paid, and any commission settled. A check there protects the withdrawal.<\/p>\n<\/div><\/div>\n<style>\n.block__bord { margin: 32px 0; padding: 1.25em 2.375em;\tborder-radius: 24px; background: rgba(0, 220, 200, 0.20); }\n.block__bord_desc {font-size: 16px !important;font-weight: 400 !important;color: #606060 !important;}\n<\/style>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"where-the-check-belongs-and-who-pays-for-it\">Where the Check Belongs, and Who Pays for It<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Placing checks is a resource decision more than a technical one. The same signal costs a different amount depending on when you act on it, and so does being wrong.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Passive checks at signup stay close to free for a real user, because reading device, network, and contact signals costs that user nothing. The moment a check becomes a form field, a code or a document upload, it starts subtracting real conversions. Behavioral checks after the first action are the cheapest place to add strength, since the data already exists and the reward has not been released. Hard checks at payout are the most accurate and the most expensive in trust.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Side by side, each option is strong on a different axis.<\/p>\n\n\n\n<style>\n  #adx-lifecycle-matrix-v1,\n  #adx-lifecycle-matrix-v1 * {\n    box-sizing: border-box;\n  }\n\n  #adx-lifecycle-matrix-v1 {\n    --adx-text: #16181d;\n    --adx-muted: #5b6472;\n    --adx-panel: #f4f6fa;\n    --adx-border: #d8dee9;\n    --adx-white: #ffffff;\n    --adx-amber: #e8a33d;\n    --adx-green: #2fa37c;\n    --adx-red: #d9534f;\n    --adx-blue: #2f6bff;\n    width: 100%;\n    max-width: 1000px;\n    margin: 32px auto;\n    color: var(--adx-text);\n    font-family: Lato, Helvetica, Arial, sans-serif;\n  }\n\n  #adx-lifecycle-matrix-v1 .adx-visual__header {\n    margin: 0 0 16px;\n  }\n\n  #adx-lifecycle-matrix-v1 .adx-visual__title {\n    margin: 0 0 7px;\n    color: var(--adx-text);\n    font-size: 24px;\n    font-weight: 700;\n    line-height: 1.25;\n  }\n\n  #adx-lifecycle-matrix-v1 .adx-visual__intro {\n    max-width: 780px;\n    margin: 0;\n    color: var(--adx-muted);\n    font-size: 13px;\n    line-height: 1.5;\n  }\n\n  #adx-lifecycle-matrix-v1 .adx-matrix {\n    overflow: hidden;\n    border: 1px solid var(--adx-border);\n    border-radius: 10px;\n    background: var(--adx-white);\n  }\n\n  #adx-lifecycle-matrix-v1 .adx-matrix__table {\n    width: 100%;\n    margin: 0;\n    border: 0;\n    border-collapse: separate;\n    border-spacing: 0;\n    table-layout: fixed;\n  }\n\n  #adx-lifecycle-matrix-v1 .adx-matrix__table th,\n  #adx-lifecycle-matrix-v1 .adx-matrix__table td {\n    vertical-align: top;\n    text-align: left;\n  }\n\n  #adx-lifecycle-matrix-v1 .adx-matrix__table thead th {\n    padding: 15px 14px;\n    border: 0;\n    border-right: 1px solid var(--adx-border);\n    border-bottom: 1px solid var(--adx-border);\n    background: var(--adx-panel);\n    color: var(--adx-text);\n    font-size: 14px;\n    font-weight: 700;\n    line-height: 1.35;\n  }\n\n  #adx-lifecycle-matrix-v1 .adx-matrix__table thead th:last-child {\n    border-right: 0;\n  }\n\n  #adx-lifecycle-matrix-v1 .adx-matrix__table tbody th,\n  #adx-lifecycle-matrix-v1 .adx-matrix__table tbody td {\n    padding: 20px 14px;\n    border: 0;\n    border-right: 1px solid var(--adx-border);\n    border-bottom: 1px solid var(--adx-border);\n    background: var(--adx-white);\n    color: var(--adx-text);\n    font-size: 13px;\n    font-weight: 400;\n    line-height: 1.48;\n  }\n\n  #adx-lifecycle-matrix-v1 .adx-matrix__table tbody tr:last-child th,\n  #adx-lifecycle-matrix-v1 .adx-matrix__table tbody tr:last-child td {\n    border-bottom: 0;\n  }\n\n  #adx-lifecycle-matrix-v1 .adx-matrix__table tbody td:last-child {\n    border-right: 0;\n  }\n\n  #adx-lifecycle-matrix-v1 .adx-matrix__table tbody th {\n    position: relative;\n    padding-left: 20px;\n    border-left: 6px solid var(--adx-row-color);\n  }\n\n  #adx-lifecycle-matrix-v1 .adx-matrix__table p {\n    margin: 0;\n  }\n\n  #adx-lifecycle-matrix-v1 .adx-checkpoint {\n    display: block;\n    margin: 0 0 5px;\n    color: var(--adx-text);\n    font-size: 15px;\n    font-weight: 700;\n    line-height: 1.35;\n  }\n\n  #adx-lifecycle-matrix-v1 .adx-checkpoint__note {\n    display: block;\n    color: var(--adx-muted);\n    font-size: 12px;\n    font-weight: 400;\n    line-height: 1.4;\n  }\n\n  #adx-lifecycle-matrix-v1 .adx-row--signup {\n    --adx-row-color: var(--adx-amber);\n  }\n\n  #adx-lifecycle-matrix-v1 .adx-row--action {\n    --adx-row-color: var(--adx-green);\n  }\n\n  #adx-lifecycle-matrix-v1 .adx-row--payout {\n    --adx-row-color: var(--adx-red);\n  }\n\n  #adx-lifecycle-matrix-v1 .adx-row--retro {\n    --adx-row-color: var(--adx-blue);\n  }\n\n  #adx-lifecycle-matrix-v1 .adx-mobile-matrix {\n    display: none;\n  }\n\n  #adx-lifecycle-matrix-v1 .adx-mobile-row {\n    position: relative;\n    overflow: hidden;\n    border: 1px solid var(--adx-border);\n    border-left: 6px solid var(--adx-row-color);\n    border-radius: 10px;\n    background: var(--adx-white);\n  }\n\n  #adx-lifecycle-matrix-v1 .adx-mobile-row__header {\n    padding: 16px 17px 14px;\n    border-bottom: 1px solid var(--adx-border);\n    background: var(--adx-panel);\n  }\n\n  #adx-lifecycle-matrix-v1 .adx-mobile-row__body {\n    padding: 0 17px;\n  }\n\n  #adx-lifecycle-matrix-v1 .adx-mobile-field {\n    padding: 15px 0;\n    border-bottom: 1px solid var(--adx-border);\n  }\n\n  #adx-lifecycle-matrix-v1 .adx-mobile-field:last-child {\n    border-bottom: 0;\n  }\n\n  #adx-lifecycle-matrix-v1 .adx-mobile-field__label {\n    display: block;\n    margin: 0 0 5px;\n    color: var(--adx-muted);\n    font-size: 11px;\n    font-weight: 700;\n    letter-spacing: 0.05em;\n    line-height: 1.35;\n    text-transform: uppercase;\n  }\n\n  #adx-lifecycle-matrix-v1 .adx-mobile-field p {\n    margin: 0;\n    color: var(--adx-text);\n    font-size: 13px;\n    line-height: 1.5;\n  }\n\n  #adx-lifecycle-matrix-v1 .adx-visual__footer {\n    margin-top: 16px;\n    padding: 14px 16px;\n    border: 1px solid var(--adx-border);\n    border-radius: 8px;\n    background: var(--adx-panel);\n    color: var(--adx-text);\n    font-size: 13px;\n    line-height: 1.5;\n  }\n\n  #adx-lifecycle-matrix-v1 .adx-visual__footer strong {\n    font-weight: 700;\n  }\n\n  #adx-lifecycle-matrix-v1 .adx-visual__caption {\n    margin-top: 10px;\n    color: var(--adx-muted);\n    font-size: 12px;\n    line-height: 1.5;\n  }\n\n  #adx-lifecycle-matrix-v1 .adx-sr-only {\n    position: absolute !important;\n    width: 1px !important;\n    height: 1px !important;\n    padding: 0 !important;\n    overflow: hidden !important;\n    clip: rect(0, 0, 0, 0) !important;\n    white-space: nowrap !important;\n    border: 0 !important;\n  }\n\n  @media (max-width: 820px) {\n    #adx-lifecycle-matrix-v1 .adx-matrix {\n      display: none;\n    }\n\n    #adx-lifecycle-matrix-v1 .adx-mobile-matrix {\n      display: grid;\n      gap: 12px;\n    }\n  }\n\n  @media (max-width: 520px) {\n    #adx-lifecycle-matrix-v1 {\n      margin: 24px auto;\n    }\n\n    #adx-lifecycle-matrix-v1 .adx-visual__title {\n      font-size: 21px;\n    }\n\n    #adx-lifecycle-matrix-v1 .adx-visual__intro {\n      font-size: 12px;\n    }\n\n    #adx-lifecycle-matrix-v1 .adx-mobile-row__header,\n    #adx-lifecycle-matrix-v1 .adx-mobile-row__body {\n      padding-right: 14px;\n      padding-left: 14px;\n    }\n  }\n<\/style>\n\n<figure\n  id=\"adx-lifecycle-matrix-v1\"\n  class=\"adx-visual\"\n  aria-labelledby=\"adx-lifecycle-title\"\n  aria-describedby=\"adx-lifecycle-intro adx-lifecycle-footer adx-lifecycle-caption\"\n>\n  <header class=\"adx-visual__header\">\n    <div id=\"adx-lifecycle-title\" class=\"adx-visual__title\">\n      Where a Check Can Sit in the Account Lifecycle\n    <\/div>\n\n    <p id=\"adx-lifecycle-intro\" class=\"adx-visual__intro\">\n      Illustrative framework. The left color bar marks the friction profile at each checkpoint.\n    <\/p>\n  <\/header>\n\n  <div class=\"adx-matrix\">\n    <table class=\"adx-matrix__table\">\n      <caption class=\"adx-sr-only\">\n        Comparison of signup, first action, payout request, and retrospective checks by what they catch, their cost to a real user, and their main false positive risk.\n      <\/caption>\n\n      <colgroup>\n        <col style=\"width: 22%;\">\n        <col style=\"width: 27%;\">\n        <col style=\"width: 25%;\">\n        <col style=\"width: 26%;\">\n      <\/colgroup>\n\n      <thead>\n        <tr>\n          <th scope=\"col\">Checkpoint<\/th>\n          <th scope=\"col\">What It Catches<\/th>\n          <th scope=\"col\">Cost to a Real User<\/th>\n          <th scope=\"col\">Main False Positive Risk<\/th>\n        <\/tr>\n      <\/thead>\n\n      <tbody>\n        <tr class=\"adx-row--signup\">\n          <th scope=\"row\">\n            <span class=\"adx-checkpoint\">Signup<\/span>\n            <span class=\"adx-checkpoint__note\">passive checks only<\/span>\n          <\/th>\n          <td>\n            <p>Reused device fingerprints, disposable inbox domains, data center IP ranges, and repeat phone numbers.<\/p>\n          <\/td>\n          <td>\n            <p>Close to zero while the checks stay invisible. Every added form field cuts real signups.<\/p>\n          <\/td>\n          <td>\n            <p>Shared homes and offices, privacy tools, and recycled phone numbers.<\/p>\n          <\/td>\n        <\/tr>\n\n        <tr class=\"adx-row--action\">\n          <th scope=\"row\">\n            <span class=\"adx-checkpoint\">First Action<\/span>\n            <span class=\"adx-checkpoint__note\">before the reward unlocks<\/span>\n          <\/th>\n          <td>\n            <p>Identical navigation paths, no exploration, pasted form fields, and claims clustered in one window.<\/p>\n          <\/td>\n          <td>\n            <p>None. It runs on event data you already collect, and the user never sees it happen.<\/p>\n          <\/td>\n          <td>\n            <p>Fast, confident returning users can look scripted.<\/p>\n          <\/td>\n        <\/tr>\n\n        <tr class=\"adx-row--payout\">\n          <th scope=\"row\">\n            <span class=\"adx-checkpoint\">Payout Request<\/span>\n            <span class=\"adx-checkpoint__note\">money about to leave<\/span>\n          <\/th>\n          <td>\n            <p>One payout destination behind many accounts, name mismatches, and reused payment instruments.<\/p>\n          <\/td>\n          <td>\n            <p>High. A hold lands at the moment the user expects trust, and support hears about it.<\/p>\n          <\/td>\n          <td>\n            <p>Joint accounts and family payment instruments can be held by mistake.<\/p>\n          <\/td>\n        <\/tr>\n\n        <tr class=\"adx-row--retro\">\n          <th scope=\"row\">\n            <span class=\"adx-checkpoint\">Retro Sweep<\/span>\n            <span class=\"adx-checkpoint__note\">cohort reviewed later<\/span>\n          <\/th>\n          <td>\n            <p>Clusters that surface only after the cohort has enough history to be compared against itself.<\/p>\n          <\/td>\n          <td>\n            <p>None up front, but a block can arrive weeks after signup on an account in good standing.<\/p>\n          <\/td>\n          <td>\n            <p>Thin logs and stale evidence can make legitimate accounts look connected.<\/p>\n          <\/td>\n        <\/tr>\n      <\/tbody>\n    <\/table>\n  <\/div>\n\n  <div class=\"adx-mobile-matrix\" aria-label=\"Account lifecycle checkpoint comparison\">\n    <section class=\"adx-mobile-row adx-row--signup\">\n      <header class=\"adx-mobile-row__header\">\n        <span class=\"adx-checkpoint\">Signup<\/span>\n        <span class=\"adx-checkpoint__note\">passive checks only<\/span>\n      <\/header>\n\n      <div class=\"adx-mobile-row__body\">\n        <div class=\"adx-mobile-field\">\n          <span class=\"adx-mobile-field__label\">What It Catches<\/span>\n          <p>Reused device fingerprints, disposable inbox domains, data center IP ranges, and repeat phone numbers.<\/p>\n        <\/div>\n\n        <div class=\"adx-mobile-field\">\n          <span class=\"adx-mobile-field__label\">Cost to a Real User<\/span>\n          <p>Close to zero while the checks stay invisible. Every added form field cuts real signups.<\/p>\n        <\/div>\n\n        <div class=\"adx-mobile-field\">\n          <span class=\"adx-mobile-field__label\">Main False Positive Risk<\/span>\n          <p>Shared homes and offices, privacy tools, and recycled phone numbers.<\/p>\n        <\/div>\n      <\/div>\n    <\/section>\n\n    <section class=\"adx-mobile-row adx-row--action\">\n      <header class=\"adx-mobile-row__header\">\n        <span class=\"adx-checkpoint\">First Action<\/span>\n        <span class=\"adx-checkpoint__note\">before the reward unlocks<\/span>\n      <\/header>\n\n      <div class=\"adx-mobile-row__body\">\n        <div class=\"adx-mobile-field\">\n          <span class=\"adx-mobile-field__label\">What It Catches<\/span>\n          <p>Identical navigation paths, no exploration, pasted form fields, and claims clustered in one window.<\/p>\n        <\/div>\n\n        <div class=\"adx-mobile-field\">\n          <span class=\"adx-mobile-field__label\">Cost to a Real User<\/span>\n          <p>None. It runs on event data you already collect, and the user never sees it happen.<\/p>\n        <\/div>\n\n        <div class=\"adx-mobile-field\">\n          <span class=\"adx-mobile-field__label\">Main False Positive Risk<\/span>\n          <p>Fast, confident returning users can look scripted.<\/p>\n        <\/div>\n      <\/div>\n    <\/section>\n\n    <section class=\"adx-mobile-row adx-row--payout\">\n      <header class=\"adx-mobile-row__header\">\n        <span class=\"adx-checkpoint\">Payout Request<\/span>\n        <span class=\"adx-checkpoint__note\">money about to leave<\/span>\n      <\/header>\n\n      <div class=\"adx-mobile-row__body\">\n        <div class=\"adx-mobile-field\">\n          <span class=\"adx-mobile-field__label\">What It Catches<\/span>\n          <p>One payout destination behind many accounts, name mismatches, and reused payment instruments.<\/p>\n        <\/div>\n\n        <div class=\"adx-mobile-field\">\n          <span class=\"adx-mobile-field__label\">Cost to a Real User<\/span>\n          <p>High. A hold lands at the moment the user expects trust, and support hears about it.<\/p>\n        <\/div>\n\n        <div class=\"adx-mobile-field\">\n          <span class=\"adx-mobile-field__label\">Main False Positive Risk<\/span>\n          <p>Joint accounts and family payment instruments can be held by mistake.<\/p>\n        <\/div>\n      <\/div>\n    <\/section>\n\n    <section class=\"adx-mobile-row adx-row--retro\">\n      <header class=\"adx-mobile-row__header\">\n        <span class=\"adx-checkpoint\">Retro Sweep<\/span>\n        <span class=\"adx-checkpoint__note\">cohort reviewed later<\/span>\n      <\/header>\n\n      <div class=\"adx-mobile-row__body\">\n        <div class=\"adx-mobile-field\">\n          <span class=\"adx-mobile-field__label\">What It Catches<\/span>\n          <p>Clusters that surface only after the cohort has enough history to be compared against itself.<\/p>\n        <\/div>\n\n        <div class=\"adx-mobile-field\">\n          <span class=\"adx-mobile-field__label\">Cost to a Real User<\/span>\n          <p>None up front, but a block can arrive weeks after signup on an account in good standing.<\/p>\n        <\/div>\n\n        <div class=\"adx-mobile-field\">\n          <span class=\"adx-mobile-field__label\">Main False Positive Risk<\/span>\n          <p>Thin logs and stale evidence can make legitimate accounts look connected.<\/p>\n        <\/div>\n      <\/div>\n    <\/section>\n  <\/div>\n\n  <div id=\"adx-lifecycle-footer\" class=\"adx-visual__footer\">\n    <strong>No single row is the answer:<\/strong> cheap checks miss the patient abuser, while strict checks tax the honest user.\n  <\/div>\n\n  <figcaption id=\"adx-lifecycle-caption\" class=\"adx-visual__caption\">\n    Each checkpoint is strong on a different axis, and none is strong on all three.\n  <\/figcaption>\n<\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">A workable arrangement is staged: passive linkage at signup that escalates only when a cluster forms, behavioral scoring before the incentive unlocks, manual review at payout where the money signals converge.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">None of that removes the trade underneath. Every gate at registration reduces abuse and reduces genuine signups at once, and only one of those effects shows up in a report: blocked abuse is countable, while suppressed conversion is a counterfactual, because someone who saw one more required field and closed the tab leaves no row anywhere.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">That asymmetry bends decisions predictably. The visible number wins the argument, so friction accumulates because nothing in the data pushes back. Then a soft quarter arrives, the gates come off quickly, and the abuse returns faster than the traffic does, because the farm was watching the offer terms and the honest user was not.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Launching an incentive and a behavioral model at the same time means the first stretch goes on recalibration. Moving friction off clean accounts and onto suspicious ones is the improvement actually available, and it turns a policy question into a classification question.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"where-multi-accounting-detection-breaks-down\">Where Multi-Accounting Detection Breaks Down<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Shared context is the biggest source of honest collisions. Households, offices, campus networks, public hotspots, and mobile carrier address pooling all put unrelated people behind identifiers that look shared. Where most traffic is mobile, and addresses are pooled aggressively, network origin loses most of its value, and a rule tuned on one audience will misfire on another.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Device fingerprinting fraud is an arms race with a well-supplied other side. Anti-detect browsers exist to produce distinct, plausible fingerprints on demand, and a farm using separate physical devices defeats fingerprint matching without any cleverness at all. Treat fingerprint reuse as a filter, not a verdict.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Then there is the evidence itself. A cluster is a probability statement, not a proof, and it weakens the further you sit from the money. Punitive action on a cluster alone will catch real customers, which is why anything that confiscates value or closes an account permanently needs a human in the loop and a working appeals path.<\/p>\n\n\n<div class=\"block__bord\"><div class=\"block__bord_desc\"><p>One constraint is worth accepting rather than fighting: a block notice should not explain itself, because naming the signal that fired hands over the next iteration.<\/p>\n<\/div><\/div>\n<style>\n.block__bord { margin: 32px 0; padding: 1.25em 2.375em;\tborder-radius: 24px; background: rgba(0, 220, 200, 0.20); }\n.block__bord_desc {font-size: 16px !important;font-weight: 400 !important;color: #606060 !important;}\n<\/style>\n\n\n<div class=\"block__preview\">\n        <a href=\"https:\/\/adex.com\/blog\/anti-detect-browser-fraud-detection\/\" class=\"block__preview_img\"><img src=\"https:\/\/adex.com\/blog\/wp-content\/uploads\/2026\/07\/adex-banners-anti-detect-browsers.png\" srcset=\"https:\/\/adex.com\/blog\/wp-content\/uploads\/2026\/07\/adex-banners-anti-detect-browsers.png\" sizes=\"100vw\" alt=\"Anti-detect browsers make one device look like many. They spoof fingerprints, rotate identities, and bypass the checks ad platforms use to catch fraud. Here's what that means for your campaigns.\" decoding=\"async\" class=\"lazy\"><\/a>\n    <div class=\"block__preview_box\">\n        <a href=\"https:\/\/adex.com\/blog\/category\/current_risks\/\" class=\"block__preview_box-cat\">Current risks<\/a>        <h3 class=\"block__preview_box-title\" id=\"how-anti-detect-browsers-build-fake-digital-identities-where-detection-finds-the-gaps\"><a href=\"https:\/\/adex.com\/blog\/anti-detect-browser-fraud-detection\/\">How Anti-Detect Browsers Build Fake Digital Identities: Where Detection Finds the Gaps<\/a><\/h3>\n    <\/div>\n<\/div>\n<style>\n.block__preview {display: flex;align-items: center;justify-content: center; margin: 32px 0;}\n.block__preview a {text-decoration: none;}\n.block__preview_img {min-width: 360px;max-width: 360px;min-height: 188px;width: 100%;height: 100%;}\n.block__preview_img img {width: 100%;height: 100%;}\n.block__preview_box {margin-left: 40px;max-width: 360px;}\n.block__preview_box-cat {color: #00B8A7 !important;font-weight: 600;font-size: 12px;line-height: 16px;text-transform: uppercase; display: block; margin-bottom: 4px;}\n.block__preview_box-cat:hover {color: #FE645A !important; text-decoration: none !important;}\n.block__preview_box-title {font-size: 20px;font-weight: 700;line-height: 24px;color: #0B172D;}\n.block__preview_box-title a {color: #0B172D !important;}\n.block__preview_box-title a:hover {color: #FE645A !important;}\n@media screen and (max-width: 768px) {.block__preview {flex-direction: column;}.block__preview_box {max-width: 100%; margin-top: 32px;margin-left: 0px;}.block__preview_img {max-width: 100%;min-width: 100%;min-height: 100%;}}<\/style>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"faq\">FAQ<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"what-is-multi-accounting-detection\">What is multi-accounting detection? <\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Identifying when several accounts belong to the same person, using signals the platform already collects: device and browser attributes, network origin, contact identifiers, behavior, and payment details. The output is a cluster with a confidence level, not a verdict, and what you do with it is a policy decision.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"how-do-platforms-know-that-two-accounts-belong-to-the-same-person\">How do platforms know that two accounts belong to the same person? <\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">No single field proves it. Linkage comes from agreement across independent signals: a repeated device fingerprint, one payment instrument behind several deposits, matching claim timing, a shared payout destination. Any one has an innocent explanation, and four at once rarely does.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"what-is-the-difference-between-bonus-abuse-and-normal-promo-usage\">What is the difference between bonus abuse and normal promo usage? <\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">A customer taking a welcome offer once, as intended, is the offer working. Bonus abuse is repeated extraction of a one-time incentive by one person through manufactured identities. The workable distinction is not motive, which you cannot observe, but repetition across linked accounts.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"can-device-fingerprinting-stop-multi-accounting-on-its-own\">Can device fingerprinting stop multi-accounting on its own? <\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">No. Fingerprinting catches unsophisticated repetition and is defeated by anti-detect browser profiles or by separate devices. It is cheap and immediate, but a defense resting on it alone fails against any funded operation, and it produces false matches in shared households.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"is-it-better-to-block-linked-accounts-at-signup-or-at-payout\">Is it better to block linked accounts at signup or at payout? <\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Signup is cheaper, because nothing has been granted and no acquisition cost is at risk. Payout is more accurate, because payment signals are hardest to disguise, but by then the incentive and the media spend are gone. Most funnels need both.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"pricing-the-check-before-you-price-the-bonus\">Pricing the Check Before You Price the Bonus<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">The design decision arrives earlier than most teams treat it. An incentive gets approved on a growth forecast, and the linkage question gets asked after the first payout batch looks strange. By then the offer terms are public, the abuse economics are fixed, and every remaining option is a retrofit.<\/p>\n\n\n<div class=\"block__bord\"><div class=\"block__bord_desc\"><p>The better sequence is to price the bonus and the check together. If the payout per identity is worth farming, the cost of producing an identity has to rise the moment the offer goes live, and the place to raise it is the layer nobody can cheaply rotate: not the inbox address, but the behavior and the destination of the money.<\/p>\n<\/div><\/div>\n<style>\n.block__bord { margin: 32px 0; padding: 1.25em 2.375em;\tborder-radius: 24px; background: rgba(0, 220, 200, 0.20); }\n.block__bord_desc {font-size: 16px !important;font-weight: 400 !important;color: #606060 !important;}\n<\/style>\n\n\n\n<p class=\"wp-block-paragraph\">Keep one column on the other side of that ledger too. Ask what the check is doing to users who are not abusing anything, because that number exists whether or not anybody measures it.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Join our Telegram for more insights and share your ideas with fellow-affiliates.<\/p>\n\n\n    <div class=\"block__buttons\">\n        <a href=\"https:\/\/app.adex.com\/auth\/login\" class=\"block__buttons_btn\">JOIN ADEX<\/a>    <\/div>\n<style>\n    .block__buttons {\n        text-align: center;\n    }\n\n    .block__buttons_btn {\n        background-color: rgba(254, 100, 90, 1) !important;\n        border-radius: 200px !important;\n        padding: 16px 24px !important;\n        font-weight: 600 !important;\n        font-size: 18px !important;\n        line-height: 24px !important;\n        text-align: center !important;\n        display: inline-block !important;\n        color: #fff !important;\n        text-decoration: none !important;\n        text-transform: uppercase !important;\n    }\n\n    .block__buttons_btn:hover {\n        color: rgba(11, 31, 58, 1) !important;\n    }\n<\/style>\n","protected":false},"excerpt":{"rendered":"<p>How many \u201cnew customers\u201d are actually one person claiming the same reward again and again? See how multi-accounting detection uncovers connections between accounts, protects promo budgets, and catches abuse before the money leaves.<\/p>\n","protected":false},"author":8,"featured_media":6060,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[1],"tags":[18,16],"class_list":["post-5960","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-guides","tag-fraud","tag-threat"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.4 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Multi-Accounting Detection: One User, Many Identities<\/title>\n<meta name=\"description\" content=\"Multi-Accounting Detection uses device, behavioral, payment, and network signals to expose bonus abuse before rewards and ad spend are lost.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/adex.com\/blog\/multi-accounting-detection\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Multi-Accounting Detection: One User, Many Identities\" \/>\n<meta property=\"og:description\" content=\"Multi-Accounting Detection uses device, behavioral, payment, and network signals to expose bonus abuse before rewards and ad spend are lost.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/adex.com\/blog\/multi-accounting-detection\/\" \/>\n<meta property=\"og:site_name\" content=\"ADEX\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/adexsaas\/\" \/>\n<meta property=\"article:published_time\" content=\"2026-08-17T16:12:40+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2026-08-17T16:44:24+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/adex.com\/blog\/wp-content\/uploads\/2026\/08\/adex-multi-accounting-detection.png\" \/>\n\t<meta property=\"og:image:width\" content=\"1200\" \/>\n\t<meta property=\"og:image:height\" content=\"628\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Olya Mikheeva\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@adexsaas\" \/>\n<meta name=\"twitter:site\" content=\"@adexsaas\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Olya Mikheeva\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"12 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/adex.com\\\/blog\\\/multi-accounting-detection\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/adex.com\\\/blog\\\/multi-accounting-detection\\\/\"},\"author\":{\"name\":\"Olya Mikheeva\",\"@id\":\"https:\\\/\\\/adex.com\\\/blog\\\/#\\\/schema\\\/person\\\/c5794aef7aa28987e7019a804390ee3a\"},\"headline\":\"Multi-Accounting Detection: Finding One User Behind Many Identities\",\"datePublished\":\"2026-08-17T16:12:40+00:00\",\"dateModified\":\"2026-08-17T16:44:24+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/adex.com\\\/blog\\\/multi-accounting-detection\\\/\"},\"wordCount\":2583,\"publisher\":{\"@id\":\"https:\\\/\\\/adex.com\\\/blog\\\/#organization\"},\"image\":{\"@id\":\"https:\\\/\\\/adex.com\\\/blog\\\/multi-accounting-detection\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/adex.com\\\/blog\\\/wp-content\\\/uploads\\\/2026\\\/08\\\/adex-multi-accounting-detection.png\",\"keywords\":[\"Fraud\",\"Threat\"],\"articleSection\":[\"Guides\"],\"inLanguage\":\"en-US\"},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/adex.com\\\/blog\\\/multi-accounting-detection\\\/\",\"url\":\"https:\\\/\\\/adex.com\\\/blog\\\/multi-accounting-detection\\\/\",\"name\":\"Multi-Accounting Detection: One User, Many Identities\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/adex.com\\\/blog\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/adex.com\\\/blog\\\/multi-accounting-detection\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/adex.com\\\/blog\\\/multi-accounting-detection\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/adex.com\\\/blog\\\/wp-content\\\/uploads\\\/2026\\\/08\\\/adex-multi-accounting-detection.png\",\"datePublished\":\"2026-08-17T16:12:40+00:00\",\"dateModified\":\"2026-08-17T16:44:24+00:00\",\"description\":\"Multi-Accounting Detection uses device, behavioral, payment, and network signals to expose bonus abuse before rewards and ad spend are lost.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/adex.com\\\/blog\\\/multi-accounting-detection\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/adex.com\\\/blog\\\/multi-accounting-detection\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/adex.com\\\/blog\\\/multi-accounting-detection\\\/#primaryimage\",\"url\":\"https:\\\/\\\/adex.com\\\/blog\\\/wp-content\\\/uploads\\\/2026\\\/08\\\/adex-multi-accounting-detection.png\",\"contentUrl\":\"https:\\\/\\\/adex.com\\\/blog\\\/wp-content\\\/uploads\\\/2026\\\/08\\\/adex-multi-accounting-detection.png\",\"width\":1200,\"height\":628,\"caption\":\"Multi-accounting detection: how device, behaviour, payment and network signals link dozens of accounts to one user and why screening at signup is cheaper.\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/adex.com\\\/blog\\\/multi-accounting-detection\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/adex.com\\\/blog\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Multi-Accounting Detection: Finding One User Behind Many Identities\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/adex.com\\\/blog\\\/#website\",\"url\":\"https:\\\/\\\/adex.com\\\/blog\\\/\",\"name\":\"ADEX - Ad Fraud & Invalid Traffic Prevention Platform\",\"description\":\"\",\"publisher\":{\"@id\":\"https:\\\/\\\/adex.com\\\/blog\\\/#organization\"},\"alternateName\":\"ADEX\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/adex.com\\\/blog\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/adex.com\\\/blog\\\/#organization\",\"name\":\"ADEX - Ad Fraud & Invalid Traffic Prevention Platform\",\"url\":\"https:\\\/\\\/adex.com\\\/blog\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/adex.com\\\/blog\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/adex.com\\\/blog\\\/wp-content\\\/uploads\\\/2022\\\/05\\\/CDD2258_copy-48-1.svg\",\"contentUrl\":\"https:\\\/\\\/adex.com\\\/blog\\\/wp-content\\\/uploads\\\/2022\\\/05\\\/CDD2258_copy-48-1.svg\",\"width\":148,\"height\":30,\"caption\":\"ADEX - Ad Fraud & Invalid Traffic Prevention Platform\"},\"image\":{\"@id\":\"https:\\\/\\\/adex.com\\\/blog\\\/#\\\/schema\\\/logo\\\/image\\\/\"},\"sameAs\":[\"https:\\\/\\\/www.facebook.com\\\/adexsaas\\\/\",\"https:\\\/\\\/x.com\\\/adexsaas\"]},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/adex.com\\\/blog\\\/#\\\/schema\\\/person\\\/c5794aef7aa28987e7019a804390ee3a\",\"name\":\"Olya Mikheeva\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/7e1ca40f4b08b576bd7c51e8946605febbcaa99bf482f69ead517b1cd512de42?s=96&d=mm&r=g\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/7e1ca40f4b08b576bd7c51e8946605febbcaa99bf482f69ead517b1cd512de42?s=96&d=mm&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/7e1ca40f4b08b576bd7c51e8946605febbcaa99bf482f69ead517b1cd512de42?s=96&d=mm&r=g\",\"caption\":\"Olya Mikheeva\"}}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Multi-Accounting Detection: One User, Many Identities","description":"Multi-Accounting Detection uses device, behavioral, payment, and network signals to expose bonus abuse before rewards and ad spend are lost.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/adex.com\/blog\/multi-accounting-detection\/","og_locale":"en_US","og_type":"article","og_title":"Multi-Accounting Detection: One User, Many Identities","og_description":"Multi-Accounting Detection uses device, behavioral, payment, and network signals to expose bonus abuse before rewards and ad spend are lost.","og_url":"https:\/\/adex.com\/blog\/multi-accounting-detection\/","og_site_name":"ADEX","article_publisher":"https:\/\/www.facebook.com\/adexsaas\/","article_published_time":"2026-08-17T16:12:40+00:00","article_modified_time":"2026-08-17T16:44:24+00:00","og_image":[{"width":1200,"height":628,"url":"https:\/\/adex.com\/blog\/wp-content\/uploads\/2026\/08\/adex-multi-accounting-detection.png","type":"image\/png"}],"author":"Olya Mikheeva","twitter_card":"summary_large_image","twitter_creator":"@adexsaas","twitter_site":"@adexsaas","twitter_misc":{"Written by":"Olya Mikheeva","Est. reading time":"12 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/adex.com\/blog\/multi-accounting-detection\/#article","isPartOf":{"@id":"https:\/\/adex.com\/blog\/multi-accounting-detection\/"},"author":{"name":"Olya Mikheeva","@id":"https:\/\/adex.com\/blog\/#\/schema\/person\/c5794aef7aa28987e7019a804390ee3a"},"headline":"Multi-Accounting Detection: Finding One User Behind Many Identities","datePublished":"2026-08-17T16:12:40+00:00","dateModified":"2026-08-17T16:44:24+00:00","mainEntityOfPage":{"@id":"https:\/\/adex.com\/blog\/multi-accounting-detection\/"},"wordCount":2583,"publisher":{"@id":"https:\/\/adex.com\/blog\/#organization"},"image":{"@id":"https:\/\/adex.com\/blog\/multi-accounting-detection\/#primaryimage"},"thumbnailUrl":"https:\/\/adex.com\/blog\/wp-content\/uploads\/2026\/08\/adex-multi-accounting-detection.png","keywords":["Fraud","Threat"],"articleSection":["Guides"],"inLanguage":"en-US"},{"@type":"WebPage","@id":"https:\/\/adex.com\/blog\/multi-accounting-detection\/","url":"https:\/\/adex.com\/blog\/multi-accounting-detection\/","name":"Multi-Accounting Detection: One User, Many Identities","isPartOf":{"@id":"https:\/\/adex.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/adex.com\/blog\/multi-accounting-detection\/#primaryimage"},"image":{"@id":"https:\/\/adex.com\/blog\/multi-accounting-detection\/#primaryimage"},"thumbnailUrl":"https:\/\/adex.com\/blog\/wp-content\/uploads\/2026\/08\/adex-multi-accounting-detection.png","datePublished":"2026-08-17T16:12:40+00:00","dateModified":"2026-08-17T16:44:24+00:00","description":"Multi-Accounting Detection uses device, behavioral, payment, and network signals to expose bonus abuse before rewards and ad spend are lost.","breadcrumb":{"@id":"https:\/\/adex.com\/blog\/multi-accounting-detection\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/adex.com\/blog\/multi-accounting-detection\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/adex.com\/blog\/multi-accounting-detection\/#primaryimage","url":"https:\/\/adex.com\/blog\/wp-content\/uploads\/2026\/08\/adex-multi-accounting-detection.png","contentUrl":"https:\/\/adex.com\/blog\/wp-content\/uploads\/2026\/08\/adex-multi-accounting-detection.png","width":1200,"height":628,"caption":"Multi-accounting detection: how device, behaviour, payment and network signals link dozens of accounts to one user and why screening at signup is cheaper."},{"@type":"BreadcrumbList","@id":"https:\/\/adex.com\/blog\/multi-accounting-detection\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/adex.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Multi-Accounting Detection: Finding One User Behind Many Identities"}]},{"@type":"WebSite","@id":"https:\/\/adex.com\/blog\/#website","url":"https:\/\/adex.com\/blog\/","name":"ADEX - Ad Fraud & Invalid Traffic Prevention Platform","description":"","publisher":{"@id":"https:\/\/adex.com\/blog\/#organization"},"alternateName":"ADEX","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/adex.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/adex.com\/blog\/#organization","name":"ADEX - Ad Fraud & Invalid Traffic Prevention Platform","url":"https:\/\/adex.com\/blog\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/adex.com\/blog\/#\/schema\/logo\/image\/","url":"https:\/\/adex.com\/blog\/wp-content\/uploads\/2022\/05\/CDD2258_copy-48-1.svg","contentUrl":"https:\/\/adex.com\/blog\/wp-content\/uploads\/2022\/05\/CDD2258_copy-48-1.svg","width":148,"height":30,"caption":"ADEX - Ad Fraud & Invalid Traffic Prevention Platform"},"image":{"@id":"https:\/\/adex.com\/blog\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/adexsaas\/","https:\/\/x.com\/adexsaas"]},{"@type":"Person","@id":"https:\/\/adex.com\/blog\/#\/schema\/person\/c5794aef7aa28987e7019a804390ee3a","name":"Olya Mikheeva","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/secure.gravatar.com\/avatar\/7e1ca40f4b08b576bd7c51e8946605febbcaa99bf482f69ead517b1cd512de42?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/7e1ca40f4b08b576bd7c51e8946605febbcaa99bf482f69ead517b1cd512de42?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/7e1ca40f4b08b576bd7c51e8946605febbcaa99bf482f69ead517b1cd512de42?s=96&d=mm&r=g","caption":"Olya Mikheeva"}}]}},"_links":{"self":[{"href":"https:\/\/adex.com\/blog\/wp-json\/wp\/v2\/posts\/5960","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/adex.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/adex.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/adex.com\/blog\/wp-json\/wp\/v2\/users\/8"}],"replies":[{"embeddable":true,"href":"https:\/\/adex.com\/blog\/wp-json\/wp\/v2\/comments?post=5960"}],"version-history":[{"count":17,"href":"https:\/\/adex.com\/blog\/wp-json\/wp\/v2\/posts\/5960\/revisions"}],"predecessor-version":[{"id":6069,"href":"https:\/\/adex.com\/blog\/wp-json\/wp\/v2\/posts\/5960\/revisions\/6069"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/adex.com\/blog\/wp-json\/wp\/v2\/media\/6060"}],"wp:attachment":[{"href":"https:\/\/adex.com\/blog\/wp-json\/wp\/v2\/media?parent=5960"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/adex.com\/blog\/wp-json\/wp\/v2\/categories?post=5960"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/adex.com\/blog\/wp-json\/wp\/v2\/tags?post=5960"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}