getreadystack's picture
Upload index.html with huggingface_hub
1bebac1 verified
Raw History Blame Contribute Delete
52.7 kB
<!doctype html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width,initial-scale=1"><title>US State Privacy Scope &amp; Cure Clock 2026</title><meta name="description" content="Enter your consumer count for one state and get the 2026 answer: covered or not, which prong caught you, and how many days that state's right to cure has left."><style>*{box-sizing:border-box}
:root{color-scheme:light dark}
body{font:14px/1.5 system-ui,-apple-system,"Segoe UI",sans-serif;margin:0;padding:14px;min-width:320px}
h1{font-size:1.05rem;margin:0 0 .2rem}
.sub{opacity:.75;margin:0 0 .9rem;font-size:.86rem}
label{display:block;margin:.55rem 0 .2rem;font-weight:600;font-size:.86rem}
.u{font-weight:400;opacity:.65}
input,select{width:100%;padding:.4rem .5rem;border:1px solid #8886;border-radius:7px;
background:transparent;color:inherit;font:inherit}
input[type=checkbox]{width:auto}
table{border-collapse:collapse;width:100%;margin-top:.9rem;font-size:.9rem}
th,td{border:1px solid #8884;padding:.36rem .5rem;text-align:left}
td.v{font-variant-numeric:tabular-nums;font-weight:600}
.f{border:1px solid #8884;border-radius:9px;padding:9px 11px;margin:.5rem 0;font-size:.87rem}
.buy{margin-top:18px;border:1px solid #8884;border-radius:10px;padding:13px}
.buy a{display:inline-block;margin-top:.5rem;padding:.45rem .9rem;border:1px solid currentColor;
border-radius:8px;text-decoration:none;color:inherit;font-weight:600}
body{max-width:720px;margin-inline:auto;padding:22px}</style><script data-grow-initializer="">!(function(){window.growMe||((window.growMe=function(e){window.growMe._.push(e);}),(window.growMe._=[]));var e=document.createElement("script");(e.type="text/javascript"),(e.src="https://faves.grow.me/main.js"),(e.defer=!0),e.setAttribute("data-grow-faves-site-id","U2l0ZTphZjljMzgyMC0yMmU5LTRhYjgtYTIxNS03OTRhMGY1N2ExYzM=");var t=document.getElementsByTagName("script")[0];t.parentNode.insertBefore(e,t);})();</script>
<!--yj-canon-s101--><link rel="canonical" href="https://getreadystack.com/tools/us-state-privacy-scope-2026"><style data-yj-mfit="1">#out{max-width:100%}#out td,#out th{overflow-wrap:break-word}#out th{white-space:nowrap}#out pre{white-space:pre-wrap;overflow-wrap:anywhere}#out code{white-space:pre-wrap;overflow-wrap:break-word}@media (max-width:640px){#out td,#out th{overflow-wrap:anywhere}#out th{white-space:normal}table{display:block;max-width:100%;overflow-x:auto}pre{max-width:100%;overflow-x:auto}code,a{overflow-wrap:anywhere}img,svg,video,canvas,iframe{max-width:100%}textarea,input,select{max-width:100%;box-sizing:border-box}.yj-lgbar{position:static!important;justify-content:flex-end;margin:0 0 10px}h1,h2,h3,h4,p,li,dd,dt,blockquote,figcaption,summary,label,.res,.lead{overflow-wrap:anywhere}label{max-width:100%;box-sizing:border-box}#out table:not(:has(tr>:nth-child(4))){display:table;table-layout:fixed;width:100%}#out table:has(tr>:nth-child(4)),#out table:has(tr>:nth-child(4)) tbody,#out table:has(tr>:nth-child(4)) tr,#out table:has(tr>:nth-child(4)) td{display:block;width:auto;overflow:visible}#out table:has(tr>:nth-child(4)) thead{display:none}#out table:has(tr>:nth-child(4)) tr{padding:10px 0;border-bottom:1px solid rgba(128,128,128,.28)}#out table:has(tr>:nth-child(4)) td{border:0;padding:1px 0}#out table:has(tr>:nth-child(4)) td:nth-child(-n+3){display:inline-block;margin-right:10px;font-size:12px;opacity:.78}}</style>
<!--yj-trust-org-s191--><script type="application/ld+json" data-yj="yj-trust-org">{"@context": "https://schema.org", "@type": "Organization", "name": "ReadyStack", "url": "https://getreadystack.com/", "logo": "https://getreadystack.com/branding/readystack_profile.png", "email": "support@getreadystack.com", "contactPoint": {"@type": "ContactPoint", "contactType": "customer support", "email": "support@getreadystack.com", "availableLanguage": ["English", "German", "Japanese", "Spanish", "Portuguese"]}}</script><!--/yj-trust-org-s191--></head><body>
<h1>Does this state's privacy law cover you in 2026?</h1>
<p class="sub">Enter your consumer count for one state and get the 2026 answer: covered or not, which prong caught you, and how many days that state's right to cure has left.</p>
<label for="state">State law</label><select id="state" data-k="state"><option value="CA - California (CCPA/CPRA)">CA - California (CCPA/CPRA)</option><option value="CO - Colorado (CPA)">CO - Colorado (CPA)</option><option value="CT - Connecticut (CTDPA)" selected>CT - Connecticut (CTDPA)</option><option value="DE - Delaware (DPDPA)">DE - Delaware (DPDPA)</option><option value="IA - Iowa (ICDPA)">IA - Iowa (ICDPA)</option><option value="IN - Indiana (INCDPA)">IN - Indiana (INCDPA)</option><option value="KY - Kentucky (KCDPA)">KY - Kentucky (KCDPA)</option><option value="MD - Maryland (MODPA)">MD - Maryland (MODPA)</option><option value="MN - Minnesota (MCDPA)">MN - Minnesota (MCDPA)</option><option value="MT - Montana (MTCDPA)">MT - Montana (MTCDPA)</option><option value="NE - Nebraska (NDPA)">NE - Nebraska (NDPA)</option><option value="NH - New Hampshire (NHPA)">NH - New Hampshire (NHPA)</option><option value="NJ - New Jersey (NJDPA)">NJ - New Jersey (NJDPA)</option><option value="OR - Oregon (OCPA)">OR - Oregon (OCPA)</option><option value="RI - Rhode Island (RIDTPPA)">RI - Rhode Island (RIDTPPA)</option><option value="TN - Tennessee (TIPA)">TN - Tennessee (TIPA)</option><option value="TX - Texas (TDPSA)">TX - Texas (TDPSA)</option><option value="UT - Utah (UCPA)">UT - Utah (UCPA)</option><option value="VA - Virginia (VCDPA)">VA - Virginia (VCDPA)</option></select>
<label for="consumers_in_state">Residents of that state whose personal data you control or process <span class="u">consumers</span></label><input type="number" id="consumers_in_state" data-k="consumers_in_state" value="40000" step="any">
<label for="sale_revenue_pct">Share of gross revenue from selling personal data <span class="u">%</span></label><input type="number" id="sale_revenue_pct" data-k="sale_revenue_pct" value="0" step="any">
<label for="sells_any_data">Do you sell or share personal data at all?</label><select id="sells_any_data" data-k="sells_any_data"><option value="yes" selected>yes</option><option value="no">no</option></select>
<label for="annual_revenue_usd">Annual gross revenue (Utah and Tennessee have a $25M prong) <span class="u">USD</span></label><input type="number" id="annual_revenue_usd" data-k="annual_revenue_usd" value="30000000" step="any">
<label for="affected_consumers">Records a single failure would touch <span class="u">records</span></label><input type="number" id="affected_consumers" data-k="affected_consumers" value="5000" step="any">
<label for="as_of">As of date (amendments and cure sunsets are applied on this date)</label><input type="date" id="as_of" data-k="as_of" value="2026-09-17">
<table><tr><th>Scope verdict</th><td class="v" data-o="scope_status">&mdash;</td></tr><tr><th>Which prong caught you</th><td class="v" data-o="trigger_reason">&mdash;</td></tr><tr><th>Law and effective date</th><td class="v" data-o="law_effective">&mdash;</td></tr><tr><th>Right to cure</th><td class="v" data-o="cure_status">&mdash;</td></tr><tr><th>Days left on the cure period (-1 = no sunset in the statute)</th><td class="v" data-o="cure_days_left">&mdash;</td><td>days</td></tr><tr><th>Statutory maximum civil penalty</th><td class="v" data-o="penalty_max">&mdash;</td><td>USD per violation</td></tr><tr><th>Statutory maximum exposure (one violation per affected record)</th><td class="v" data-o="exposure_max">&mdash;</td><td>USD</td></tr></table>
<p class="sub">Every verdict above is free and unlimited — all 19 state laws, every prong, no key, no cap, no watermark.</p>
<div class="buy">
<b>Full version: Export the whole 19-state verdict for your numbers as a .csv you keep, and set alarms ahead of each cure-period sunset.</b><br>
$60 once · one licence key per person or team seat · US privacy counsel bills $350-$650/hour; a 19-state applicability and cure-period memo is billed in hours, not minutes.<br>
<a href="https://getreadystack.com/api/buy/cl/polar_cl_p2ZPWeOnPIHssHwlu1bKZyp4Y0NbPhiccaC3L2i8JeL">Get the full version — $60</a>
</div>
<div class="f"><b>Two-prong scope check for 19 state laws</b><br>Runs the consumer-count prong and the data-sale-revenue prong of each state's statute against your own numbers and names the prong that caught you.</div><div class="f"><b>Right-to-cure countdown</b><br>Shows whether that state still gives you a cure period, how many days are left, or the date it disappeared - Montana 2026-04-01, Oregon 2026-01-01, New Jersey 2026-07-15.</div><div class="f"><b>2026 amendments built in</b><br>Connecticut's SB 1295 drop from 100,000 to 35,000 consumers on 2026-07-01 and Montana's 25,000/15,000 rewrite are applied by the as-of date you type.</div><div class="f"><b>Statutory maximum exposure</b><br>Multiplies that state's maximum civil penalty per violation by the record count you enter, so the number in your risk register is a number you can source.</div><div class="f"><b>19-state table export (licensed)</b><br>Writes every state's verdict for your numbers to a .csv you keep and paste into a board deck or a vendor questionnaire.</div><div class="f"><b>Cure-sunset alarms (licensed)</b><br>Sets a browser alarm ahead of the as-of date you are watching so a cure deadline does not pass while the ticket sits in a backlog.</div>
<script>
function compute(v){
function dnum(s){var p=String(s||'2026-09-17').split('-');return Date.UTC(+p[0],(+p[1])-1,+p[2]);}
function fmt(n){n=Math.round(+n||0);var s=String(n),o='',c=0,i;for(i=s.length-1;i>=0;i--){o=s.charAt(i)+o;c++;if(c%3===0&&i>0){o=','+o;}}return o;}
var T={
CA:{n:'California (CCPA/CPRA)',eff:'2020-01-01',cnt:100000,sc:0,sp:50,pen:7500,cure:'none',cd:0,extra:' California also covers any business over its inflation-adjusted annual revenue threshold - check that prong separately.'},
CO:{n:'Colorado (CPA)',eff:'2023-07-01',cnt:100000,sc:25000,sp:0,sa:1,pen:20000,cure:'2025-01-01',cd:0},
CT:{n:'Connecticut (CTDPA)',eff:'2023-07-01',cnt:100000,sc:25000,sp:25,pen:7500,cure:'2025-01-01',cd:0},
DE:{n:'Delaware (DPDPA)',eff:'2025-01-01',cnt:35000,sc:10000,sp:20,pen:10000,cure:'2025-12-31',cd:0},
IA:{n:'Iowa (ICDPA)',eff:'2025-01-01',cnt:100000,sc:25000,sp:50,pen:7500,cure:'perm',cd:90},
IN:{n:'Indiana (INCDPA)',eff:'2026-01-01',cnt:100000,sc:25000,sp:50,pen:7500,cure:'perm',cd:30},
KY:{n:'Kentucky (KCDPA)',eff:'2026-01-01',cnt:100000,sc:25000,sp:50,pen:7500,cure:'perm',cd:30},
MD:{n:'Maryland (MODPA)',eff:'2025-10-01',cnt:35000,sc:10000,sp:20,pen:10000,cure:'2027-04-01',cd:0},
MN:{n:'Minnesota (MCDPA)',eff:'2025-07-31',cnt:100000,sc:25000,sp:25,pen:7500,cure:'2026-01-31',cd:0},
MT:{n:'Montana (MTCDPA)',eff:'2024-10-01',cnt:25000,sc:15000,sp:25,pen:7500,cure:'2026-04-01',cd:0},
NE:{n:'Nebraska (NDPA)',eff:'2025-01-01',cnt:0,sc:0,sp:0,nothr:1,pen:7500,cure:'perm',cd:30},
NH:{n:'New Hampshire (NHPA)',eff:'2025-01-01',cnt:35000,sc:10000,sp:25,pen:10000,cure:'2025-12-31',cd:0},
NJ:{n:'New Jersey (NJDPA)',eff:'2025-01-15',cnt:100000,sc:25000,sp:0,sa:1,pen:10000,cure:'2026-07-15',cd:0},
OR:{n:'Oregon (OCPA)',eff:'2024-07-01',cnt:100000,sc:25000,sp:25,pen:7500,cure:'2026-01-01',cd:0},
RI:{n:'Rhode Island (RIDTPPA)',eff:'2026-01-01',cnt:35000,sc:10000,sp:20,pen:10000,cure:'none',cd:0},
TN:{n:'Tennessee (TIPA)',eff:'2025-07-01',cnt:175000,sc:0,sp:0,rev:25000000,pen:7500,cure:'perm',cd:60},
TX:{n:'Texas (TDPSA)',eff:'2024-07-01',cnt:0,sc:0,sp:0,nothr:1,pen:7500,cure:'perm',cd:30},
UT:{n:'Utah (UCPA)',eff:'2023-12-31',cnt:100000,sc:25000,sp:50,rev:25000000,pen:7500,cure:'perm',cd:30},
VA:{n:'Virginia (VCDPA)',eff:'2023-01-01',cnt:100000,sc:25000,sp:50,pen:7500,cure:'perm',cd:30}
};
var code=String(v.state||'CT').slice(0,2).toUpperCase();
var s=T[code]||T.CT;
var asOf=dnum(v.as_of);
var cnt=s.cnt,sc=s.sc,sp=s.sp,sa=s.sa?1:0,amend='';
if(code==='CT'&&asOf>=dnum('2026-07-01')){cnt=35000;sc=0;sp=0;sa=1;amend=' (SB 1295 lowered Connecticut to 35,000 on 2026-07-01)';}
var consumers=Math.round(+v.consumers_in_state||0);
var pct=+v.sale_revenue_pct||0;
var rev=+v.annual_revenue_usd||0;
var records=Math.round(+v.affected_consumers||0);
var sells=(String(v.sells_any_data||'no').toLowerCase()==='yes')?1:0;
var revOK=(!s.rev||rev>=s.rev);
var covered=0,why='';
if(s.nothr){
covered=1;
why=s.n+' sets no consumer-count threshold - every controller doing business there is in scope unless it is an SBA-defined small business.';
}else if(cnt&&consumers>=cnt&&revOK){
covered=1;
why=fmt(consumers)+' consumers is at or above the '+fmt(cnt)+'-consumer threshold'+(s.rev?' and revenue is at or above $'+fmt(s.rev):'')+'.'+amend;
}else if(sa&&sells&&(!sc||consumers>=sc)&&revOK){
covered=1;
why=sc?('you sell personal data and hold data on '+fmt(consumers)+' consumers, at or above the '+fmt(sc)+'-consumer sale prong.'):('you sell personal data, and after the amendment that prong has no consumer count at all.'+amend);
}else if(sp&&pct>=sp&&(!sc||consumers>=sc)&&revOK){
covered=1;
why=pct+'% of gross revenue comes from selling personal data, at or above the '+sp+'% prong'+(sc?(' with '+fmt(consumers)+' consumers at or above '+fmt(sc)):'')+'.';
}else{
why='Below every prong: '+s.n+' needs '+(cnt?fmt(cnt)+' consumers':'an SBA non-small business')+(sc||sp?(', or '+(sc?fmt(sc)+' consumers ':'')+'with '+(sp?sp+'%':'any')+' of revenue from selling personal data'):'')+(s.rev?(', and at least $'+fmt(s.rev)+' in annual revenue'):'')+'.'+amend+(s.extra||'');
}
var inForce=asOf>=dnum(s.eff);
var status;
if(!covered){status='NOT COVERED - '+s.n+' does not reach you on these numbers';}
else if(!inForce){status='COVERED from '+s.eff+' - '+Math.ceil((dnum(s.eff)-asOf)/86400000)+' days until it bites';}
else{status='COVERED - '+s.n+' has applied to you since '+s.eff;}
var cureTxt,cureLeft;
if(s.cure==='none'){cureTxt='No right to cure at all - the attorney general can act without notice';cureLeft=0;}
else if(s.cure==='perm'){cureTxt=s.cd+'-day right to cure, with no sunset date in the statute';cureLeft=-1;}
else{
var d=Math.ceil((dnum(s.cure)-asOf)/86400000);
if(d>0){cureLeft=d;cureTxt='Right to cure ends '+s.cure+' - '+fmt(d)+' days left to fix things quietly';}
else{cureLeft=0;cureTxt='Right to cure gone since '+s.cure+' - '+fmt(-d)+' days ago';}
}
var exposure=(covered&&inForce)?s.pen*records:0;
return {
scope_status:status,
trigger_reason:why,
law_effective:s.n+' - in force '+s.eff,
cure_status:cureTxt,
cure_days_left:cureLeft,
penalty_max:s.pen,
exposure_max:exposure
};
}
</script><script>(function(){
function read(){var v={};document.querySelectorAll('[data-k]').forEach(function(el){
var k=el.dataset.k;v[k]=el.type==='checkbox'?el.checked:(el.type==='number'?parseFloat(el.value):el.value);});
return v;}
function paint(){var r={};try{r=compute(read())||{};}catch(e){r={};}
document.querySelectorAll('[data-o]').forEach(function(el){
var x=r[el.dataset.o];el.textContent=(x===undefined||x===null)?'\u2014':String(x);});}
document.addEventListener('input',paint);document.addEventListener('change',paint);paint();
})();</script>
<section data-yj-install="free" style="margin:2rem auto 1rem;max-width:46rem;padding:1.25rem 1.25rem;border:1px solid #cfe3d6;border-radius:12px;background:#f6fbf8;font:16px/1.6 system-ui,-apple-system,Segoe UI,sans-serif"><h2 style="margin:0 0 .4rem;font-size:1.2rem">Install free</h2><p style="margin:0 0 .8rem;color:#41505f">Free for the file open in your editor - no key, no limit. The workspace sweep and the report ask for a key.</p><a href="https://microsoftedge.microsoft.com/addons/detail/mccndbikcijibkkoglobeegfmlakjaib" rel="noopener" data-yj-install-door="edge" onclick="try{navigator.sendBeacon('/api/ev',new Blob([JSON.stringify({t:'install',slug:'us-state-privacy-scope-2026',src:'edge',path:location.pathname})],{type:'application/json'}))}catch(e){}" style="display:inline-block;margin:0 .5rem .5rem 0;padding:.6rem 1rem;border-radius:8px;background:#0f7b3f;color:#fff;text-decoration:none;font-weight:600">Microsoft Edge Add-ons</a></section>
<section data-yj-alert="rule" style="margin:1rem auto 1.5rem;max-width:46rem;padding:1.1rem 1.25rem;border:1px solid #d9dee6;border-radius:12px;background:#fbfcfd;font:15px/1.55 system-ui,-apple-system,Segoe UI,sans-serif"><b style="font-size:1.05rem">Get one email when this rule changes</b><div style="opacity:.78;margin:.35rem 0 .8rem">We watch the regulation and vendor sources behind US State Privacy Scope &amp; Cure Clock 2026 every day. When a rule changes, you get a single email with what changed and the updated check. No newsletter.</div><div style="display:flex;gap:8px;flex-wrap:wrap"><input id="yjae" type="email" placeholder="you@example.com" style="flex:1;min-width:210px;padding:11px 13px;border:1px solid rgba(140,150,165,.34);border-radius:8px;background:#fff;color:inherit"><button id="yjab" style="padding:11px 18px;border-radius:8px;border:0;cursor:pointer;background:#0f7b3f;color:#fff;font:600 15px system-ui,sans-serif">Notify me</button></div><div id="yjao" hidden style="margin-top:.6rem;color:#0f7b3f">You're on the list. One email when it changes.</div><script>(function(){var b=document.getElementById("yjab"),e=document.getElementById("yjae");if(!b||!e)return;b.addEventListener("click",function(){var v=e.value.trim();if(!/.+@.+\..+/.test(v))return;try{localStorage.setItem("yj_em","1");}catch(_){}fetch(location.origin+"/api/subscribe",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({email:v,slug:"us-state-privacy-scope-2026",lang:"en",source:"rule_alert"+((b.closest&&b.closest("section")&&b.closest("section").getAttribute("data-yj-moved"))?"_at_result":"")})}).then(function(r){var o=document.getElementById("yjao");o.hidden=false;if(!r.ok){o.textContent="Could not save - please try again.";}}).catch(function(){var o=document.getElementById("yjao");o.hidden=false;o.textContent="Could not save - please try again.";});});})();</script><script>(function(){var e=document.getElementById("yjae"),s=e&&e.closest?e.closest("section"):null,o=document.getElementById("out");if(!s||!o)return;var d=false;function mv(ev){if(d)return;if(ev&&ev.target&&s.contains(ev.target))return;d=true;var b=o;while(b.parentNode&&b.parentNode!==document.body&&b.parentNode.tagName!=="MAIN"&&b.parentNode.tagName!=="ARTICLE")b=b.parentNode;if(!b.parentNode||b===s||b.contains(s))return;try{b.parentNode.insertBefore(s,b.nextSibling);s.setAttribute("data-yj-moved","1");}catch(_){}}document.addEventListener("input",mv,true);document.addEventListener("change",mv,true);document.addEventListener("click",function(ev){var b=ev.target&&ev.target.closest?ev.target.closest("button,input[type=submit]"):null;if(b&&!b.closest("[data-yj],[data-yj-cta],[data-yj-install],[data-yj-alert],.yj-find,.yj-related,#yj-ask,.yjp"))mv(ev);},true);})();</script></section>
<section data-yj-cta="paid" style="margin:3rem auto;max-width:46rem;padding:1.5rem 1.25rem;border:1px solid #d8dee9;border-radius:12px;background:#fbfcfe;font:16px/1.6 system-ui,-apple-system,Segoe UI,sans-serif"><h2 style="margin:0 0 .5rem;font-size:1.25rem">Get the full version <span class="yj-price">$60</span></h2><p class="yj-cta-paid" style="margin:.25rem 0 .6rem;color:#1f2a37">Export the whole 19-state verdict for your numbers as a .csv you keep, and set alarms ahead of each cure-period sunset.</p><p class="yj-cta-pay" style="margin:.25rem 0 1rem;color:#5b6b7c;font-size:.94rem">One payment, one licence key for this tool. The key is shown right after payment.</p><p class="yj-cta-anchor" style="margin:0 0 1rem;color:#5b6b7c;font-size:.94rem">US privacy counsel bills $350-$650/hour; a 19-state applicability and cure-period memo is billed in hours, not minutes.</p><a href="https://getreadystack.com/api/buy/cl/polar_cl_p2ZPWeOnPIHssHwlu1bKZyp4Y0NbPhiccaC3L2i8JeL" rel="nofollow" style="display:inline-block;padding:.7rem 1.3rem;border-radius:8px;background:#1b64f2;color:#fff;text-decoration:none;font-weight:600">Buy the full version — $60</a><a href="#" data-yj-key hidden style="margin-left:1rem;font-size:.92rem;color:#41505f;text-decoration:underline">I have a key</a></section><!--yj-trust-strip-s191--><aside data-yj="yj-trust-strip" style="max-width:46rem;margin:-1.8rem auto 2.4rem;padding:.9rem 1.2rem;border:1px solid #d8dee9;border-radius:12px;background:#f6f8fb;font:14.5px/1.55 system-ui,-apple-system,Segoe UI,sans-serif;color:#2b3640"><p style="margin:0 0 .3rem;font-weight:600">Buying here, plainly</p><ul style="margin:0;padding-left:1.2rem"><li style="margin:.25rem 0">Payment runs on Whop’s checkout: your card details go to Whop, not to us, and Whop emails you the receipt.</li><li style="margin:.25rem 0">Your licence key shows on the next page right after payment and stays in your Whop account (Your purchases).</li><li style="margin:.25rem 0">Chose a subscription? Cancel any time in your Whop account (Orders → Cancel membership); access lasts until the end of the period you paid.</li><li style="margin:.25rem 0">Your inputs are calculated in your browser and are not sent to us (unless you ask for the result by email).</li><li style="margin:.25rem 0">Questions before buying? support@getreadystack.com — we answer within 2 business days.</li></ul></aside><!--/yj-trust-strip-s191-->
<!--yj-pass-line-s196--><p data-yj="yj-pass-line" style="max-width:46rem;margin:0 auto 2rem;padding:.7rem 1.1rem;border:1px dashed #9aa4b2;border-radius:10px;font:14.5px/1.55 system-ui,-apple-system,Segoe UI,sans-serif;color:#2b3640">Need more than this one? <b>ReadyStack Pass</b> opens all 462 files and 471 full versions — $29/month or $199/year. <a href="/pass/">See the Pass &rarr;</a></p><!--/yj-pass-line-s196-->
<!--yj-share-s101--><div style="margin:28px 0 8px;text-align:center"><button id="yjcp" type="button" style="font:inherit;padding:10px 18px;border:1px solid #8884;border-radius:10px;background:transparent;cursor:pointer">Copy link</button></div><script>(function(){var b=document.getElementById("yjcp");if(!b)return;var t=b.textContent;b.addEventListener("click",function(){var u=location.href.split("#")[0];function d(){b.textContent="Link copied";setTimeout(function(){b.textContent=t;},1800);}if(navigator.clipboard&&navigator.clipboard.writeText){navigator.clipboard.writeText(u).then(d,function(){prompt("",u);});}else{prompt("",u);}});})();</script><div class="yj-home-find"><div class="yj-lgbar"><a href="/" class="yj-lg on">EN</a><a href="/de/" class="yj-lg">DE</a><a href="/ja/" class="yj-lg">JA</a><a href="/es/" class="yj-lg">ES</a><a href="/pt/" class="yj-lg">PT</a></div><section class="yj-find"><h2>Find a tool</h2><input id="yjq" type="search" autocomplete="off" placeholder="Type a product name, format or task"><div id="yjr"></div></section><style>.yj-lgbar{position:absolute;top:14px;right:18px;display:flex;gap:6px;z-index:60}.yj-lg{font:600 12px/1 system-ui,sans-serif;padding:6px 9px;border-radius:4px;text-decoration:none;color:#8b96a3;border:1px solid rgba(140,150,165,.28)}.yj-lg:hover{color:#e8eaed;border-color:rgba(160,175,195,.6)}.yj-lg.on{color:#0e1116;background:#cfd6de;border-color:#cfd6de}.yj-find{max-width:760px;margin:34px auto 8px;padding:0 20px}.yj-find h2{font:600 20px/1.3 system-ui,sans-serif;margin:0 0 10px}#yjq{width:100%;box-sizing:border-box;padding:13px 15px;font:400 15.5px system-ui,sans-serif;border:1px solid rgba(140,150,165,.34);border-radius:8px;background:rgba(255,255,255,.04);color:inherit}#yjq:focus{outline:none;border-color:#7FD1C4}#yjr{margin-top:10px;display:flex;flex-direction:column;gap:6px}#yjr a{display:flex;justify-content:space-between;gap:12px;padding:11px 14px;border:1px solid rgba(140,150,165,.22);border-radius:6px;text-decoration:none;font:400 14.5px/1.4 system-ui,sans-serif;color:inherit}#yjr a:hover{border-color:#7FD1C4}#yjr .pr{font:600 13px system-ui,sans-serif;color:#5fbf9a;white-space:nowrap}</style><script>(function(){var q=document.getElementById("yjq"),r=document.getElementById("yjr"),D=null;function load(){if(D)return Promise.resolve(D);return fetch("/search-index.json").then(function(x){return x.json();}).then(function(j){D=j;return j;}).catch(function(){D=[];return D;});}function esc(t){return String(t).replace(/[&<>"]/g,function(c){return {"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;"}[c];});}function run(){var v=q.value.trim().toLowerCase();if(v.length<2){r.innerHTML="";return;}load().then(function(j){var w=v.split(/\s+/),o=[];for(var i=0;i<j.length&&o.length<12;i++){var t=j[i].t.toLowerCase();var ok=true;for(var k=0;k<w.length;k++){if(t.indexOf(w[k])<0){ok=false;break;}}if(ok)o.push(j[i]);}r.innerHTML=o.length?o.map(function(x){return "<a href=\""+esc(x.u)+"\">"+"<span>"+esc(x.t)+"</span>"+(x.p?"<span class=\"pr\">$"+x.p+"</span>":"")+"</a>";}).join(""):"";});}q.addEventListener("input",run);q.addEventListener("focus",load);})();</script></div>
<script data-yj="yj-view-beacon">(function(){try{var p=location.pathname;var k='yjv:'+p;if(sessionStorage.getItem(k))return;sessionStorage.setItem(k,'1');fetch('/api/ev',{method:'POST',keepalive:true,headers:{'Content-Type':'application/json'},body:JSON.stringify({path:p,lang:"en",ref:(document.referrer||''),src:(function(){try{return (new URLSearchParams(location.search).get('ref')||'').replace(/[^a-z_]/g,'').slice(0,12)}catch(e){return ''}})()})}).catch(function(){});}catch(e){}})();</script>
<script data-yj="yj-use-beacon v2">(function(){try{var r=document.querySelector('main')||document.body;var p=location.pathname,k='yju:'+p,sent=false,armed=false;function ours(el){return !!(el&&el.closest&&el.closest('[data-yj],[data-yj-cta],.yj-email-gate,.yj-find,.yj-related,#yj-ask,#yjgo,#yjr'));}function fire(){if(sent||!armed||sessionStorage.getItem(k))return;sent=true;sessionStorage.setItem(k,'1');fetch('/api/ev',{method:'POST',keepalive:true,headers:{'Content-Type':'application/json'},body:JSON.stringify({path:p,lang:"en",t:'use',src:(function(){try{return (new URLSearchParams(location.search).get('ref')||'').replace(/[^a-z_]/g,'').slice(0,12)}catch(e){return ''}})()})}).catch(function(){});}r.addEventListener('click',function(e){var b=e.target&&e.target.closest?e.target.closest('button,input[type=submit],[role=button]'):null;if(!b||ours(b))return;armed=true;setTimeout(fire,400);},true);r.addEventListener('input',function(e){if(!ours(e.target))armed=true;},true);var mo=new MutationObserver(function(){if(armed){fire();if(sent)mo.disconnect();}});mo.observe(r,{childList:true,characterData:true,subtree:true});}catch(e){}})();</script>
<section data-yj="yj-facts-v1" style="max-width:920px;margin:48px auto 0;padding:0 20px;font-family:system-ui,sans-serif"><style>.yj-article p{font:400 15.5px/1.7 system-ui,sans-serif;color:#26313b;margin:0 0 12px;max-width:72ch}.yj-article h2,.yj-article h3,.yj-article h4{font:600 17px/1.35 system-ui,sans-serif;color:#1b1f24;margin:22px 0 8px}.yj-article table{border-collapse:collapse;margin:10px 0 16px;font:14px/1.45 system-ui,sans-serif}.yj-article th,.yj-article td{border:1px solid #e2e6ea;padding:6px 10px;text-align:left}.yj-article th{background:#f4f6f8}.yj-article pre{background:#0f1720;color:#e6edf3;padding:12px 14px;border-radius:8px;overflow:auto;font:13px/1.5 ui-monospace,Menlo,monospace}.yj-article code{font:13px ui-monospace,Menlo,monospace;background:#f1f3f5;padding:1px 4px;border-radius:3px}.yj-article pre code{background:none;padding:0}.yj-article ul,.yj-article ol{font:15px/1.6 system-ui,sans-serif;color:#26313b}</style><p style="font:400 13px/1.5 system-ui,sans-serif;color:#6b7680;margin:0 0 14px"><time datetime="2026-09-17">Updated 2026-09-17</time> · ReadyStack</p><script type="application/ld+json">{"@context":"https://schema.org","@type":"WebPage","dateModified":"2026-09-17","author":{"@type":"Organization","name":"ReadyStack"}}</script><h2 style="font:600 21px/1.3 system-ui,sans-serif;margin:0 0 6px;color:#1b1f24">Worked example</h2><p style="font:400 14.5px/1.5 system-ui,sans-serif;margin:0 0 16px;color:#5b6570">Real numbers from this tool, line by line.</p><div class="yj-article"><p><img src="https://getreadystack.com/img/promo/sku96949_result_card.jpg" alt="US State Privacy Scope &amp; Cure Clock 2026" loading="lazy" style="max-width:100%;border-radius:6px"></p>
<p>A US SaaS company that holds personal data on 40,000 Connecticut residents is covered by the Connecticut Data Privacy Act as of today, has zero days of cure period left, and carries a $37,500,000 statutory maximum if one failure touches 5,000 records. Six months ago, on the same numbers, the tool returns NOT COVERED. Nothing about the company changed. Connecticut changed.</p>
<p>SB 1295 took effect on 2026-07-01 and lowered the Connecticut threshold from 100,000 consumers to 35,000, and removed the consumer count entirely from the sale prong: if you sell personal data, the count no longer protects you. Run the same numbers with an as-of date of 2026-06-30 and the verdict flips to NOT COVERED, because on that morning the statute still asked for 100,000. That is the whole problem with the US state privacy patchwork in 2026. The answer is not wrong or right in general. It is wrong or right on a date.</p>
<p>Connecticut is not the only one that moved this year. Montana now starts at 25,000 consumers, or 15,000 consumers if a quarter of gross revenue comes from selling personal data, and its right to cure ended on 2026-04-01. Oregon&#x27;s cure period ended 2026-01-01, Minnesota&#x27;s on 2026-01-31, New Jersey&#x27;s on 2026-07-15. Indiana, Kentucky and Rhode Island switched on together on 2026-01-01, and Rhode Island surprises people: 35,000 residents, or 10,000 with 20% of revenue from data sales, and no cure period written into the law at all.</p>
<p>This is exactly the shape of question a chatbot answers confidently and wrongly. The training data is full of 2023 and 2024 summaries saying 100,000 consumers, 60-day cure, $7,500 everywhere. Today Colorado&#x27;s maximum is $20,000 per violation, Rhode Island, New Hampshire, Maryland and New Jersey sit at $10,000, and the rest are at $7,500. A free comparison chart cannot do the arithmetic either, because the arithmetic needs your numbers: your resident count in that state, your share of revenue from data sales, whether you clear Utah&#x27;s and Tennessee&#x27;s $25M prong, and the date you are asking about.</p>
<p>So the extension asks for exactly those seven inputs and returns seven outputs: the scope verdict, the prong that caught you, the law and its effective date, the state of the right to cure, the days left on it, the statutory maximum civil penalty, and the maximum exposure for the record count you typed. Three worked examples from the same build: Connecticut with 40,000 consumers and 0% sale revenue returns COVERED, cure gone since 2025-01-01, $7,500 per violation, $37,500,000 against 5,000 records. Montana with 18,000 consumers and 30% sale revenue returns COVERED through the sale prong alone, cure gone since 2026-04-01, $9,000,000 against 1,200 records. Kentucky with 60,000 consumers and 10% sale revenue returns NOT COVERED, with the prong named and the exposure line at $0 - which is the answer a privacy owner needs in writing just as often.</p>
<p>All nineteen state laws, every prong, the cure countdown, the penalty and the exposure figure are free, in the popup and in the browser page, with no key, no cap and no watermark. The $60 licence sits on a different axis: it exports the whole 19-state verdict for your numbers to a .csv you keep, and sets alarms ahead of cure-period sunsets. Nothing you type leaves the browser; the only outbound call is the licence-key check.</p>
<p>One limit: these are statutory maximums, and whether each affected record counts as a separate violation is contested. The number is the ceiling you put in a risk register with a source next to it, not a prediction of an enforcement action. Dates checked 2026-09-17.</p></div><h2 style="font:600 21px/1.3 system-ui,sans-serif;margin:34px 0 6px;color:#1b1f24">Questions people ask</h2><details style="border-bottom:1px solid #e6e9ed;padding:10px 0"><summary style="cursor:pointer;font:600 15px/1.4 system-ui,sans-serif;color:#1b1f24">What does this extension actually do?</summary><p style="margin:8px 0 2px;font:400 14.5px/1.6 system-ui,sans-serif;color:#33404b">It runs the applicability test of 19 US state consumer privacy laws against numbers you type: residents whose data you hold, the share of revenue you get from selling personal data, your annual revenue and an as-of date. It returns a covered or not-covered verdict, the prong that caught you, the law&#x27;s effective date, and the days left on that state&#x27;s right to cure.</p></details><details style="border-bottom:1px solid #e6e9ed;padding:10px 0"><summary style="cursor:pointer;font:600 15px/1.4 system-ui,sans-serif;color:#1b1f24">Who is this for?</summary><p style="margin:8px 0 2px;font:400 14.5px/1.6 system-ui,sans-serif;color:#33404b">US SaaS founders, marketing-ops and RevOps leads, and the one person at a 20-to-200 employee company who owns privacy alongside another job. It is for the moment a sales questionnaire, a board deck or a new state launch forces the question of whether a given state law reaches you, before there is budget for outside counsel.</p></details><details style="border-bottom:1px solid #e6e9ed;padding:10px 0"><summary style="cursor:pointer;font:600 15px/1.4 system-ui,sans-serif;color:#1b1f24">Why not just ask a chatbot or read a free comparison chart?</summary><p style="margin:8px 0 2px;font:400 14.5px/1.6 system-ui,sans-serif;color:#33404b">Thresholds moved in 2026 and most free sources still carry the old ones. Connecticut dropped from 100,000 to 35,000 consumers on 2026-07-01, Montana now starts at 25,000, and Montana&#x27;s right to cure ended 2026-04-01. A chart also cannot do the arithmetic against your consumer count, revenue share and as-of date.</p></details><details style="border-bottom:1px solid #e6e9ed;padding:10px 0"><summary style="cursor:pointer;font:600 15px/1.4 system-ui,sans-serif;color:#1b1f24">What is free and what needs the $60 key?</summary><p style="margin:8px 0 2px;font:400 14.5px/1.6 system-ui,sans-serif;color:#33404b">Every scope check is free and unlimited: all 19 state laws, every prong, the cure countdown, the maximum penalty and the exposure figure, with no key, no watermark and no usage cap. The $60 licence adds two things on a different axis: a .csv export of the whole 19-state table for your numbers, and alarms ahead of cure-period sunsets.</p></details><details style="border-bottom:1px solid #e6e9ed;padding:10px 0"><summary style="cursor:pointer;font:600 15px/1.4 system-ui,sans-serif;color:#1b1f24">What would this cost if a person did it?</summary><p style="margin:8px 0 2px;font:400 14.5px/1.6 system-ui,sans-serif;color:#33404b">US privacy counsel bills roughly $350 to $650 an hour, and a written applicability and cure-period analysis across nineteen states is billed in hours rather than minutes. Firms also re-bill it every time a state amends its thresholds, which happened three times in 2026 alone. The extension re-runs the same test in seconds.</p></details><script type="application/ld+json" data-yj="yj-faq-ld">{"@context": "https://schema.org", "@type": "FAQPage", "mainEntity": [{"@type": "Question", "name": "What does this extension actually do?", "acceptedAnswer": {"@type": "Answer", "text": "It runs the applicability test of 19 US state consumer privacy laws against numbers you type: residents whose data you hold, the share of revenue you get from selling personal data, your annual revenue and an as-of date. It returns a covered or not-covered verdict, the prong that caught you, the law's effective date, and the days left on that state's right to cure."}}, {"@type": "Question", "name": "Who is this for?", "acceptedAnswer": {"@type": "Answer", "text": "US SaaS founders, marketing-ops and RevOps leads, and the one person at a 20-to-200 employee company who owns privacy alongside another job. It is for the moment a sales questionnaire, a board deck or a new state launch forces the question of whether a given state law reaches you, before there is budget for outside counsel."}}, {"@type": "Question", "name": "Why not just ask a chatbot or read a free comparison chart?", "acceptedAnswer": {"@type": "Answer", "text": "Thresholds moved in 2026 and most free sources still carry the old ones. Connecticut dropped from 100,000 to 35,000 consumers on 2026-07-01, Montana now starts at 25,000, and Montana's right to cure ended 2026-04-01. A chart also cannot do the arithmetic against your consumer count, revenue share and as-of date."}}, {"@type": "Question", "name": "What is free and what needs the $60 key?", "acceptedAnswer": {"@type": "Answer", "text": "Every scope check is free and unlimited: all 19 state laws, every prong, the cure countdown, the maximum penalty and the exposure figure, with no key, no watermark and no usage cap. The $60 licence adds two things on a different axis: a .csv export of the whole 19-state table for your numbers, and alarms ahead of cure-period sunsets."}}, {"@type": "Question", "name": "What would this cost if a person did it?", "acceptedAnswer": {"@type": "Answer", "text": "US privacy counsel bills roughly $350 to $650 an hour, and a written applicability and cure-period analysis across nineteen states is billed in hours rather than minutes. Firms also re-bill it every time a state amends its thresholds, which happened three times in 2026 alone. The extension re-runs the same test in seconds."}}]}</script><div id="yj-ask" style="margin:36px 0 0;padding:18px 18px 16px;border:1px solid #e2e6ea;border-radius:10px;background:#fbfbfc"><h2 style="font:600 19px/1.3 system-ui,sans-serif;margin:0 0 4px;color:#1b1f24">Ask about this tool</h2><p style="font:400 13.5px/1.5 system-ui,sans-serif;margin:0 0 12px;color:#5b6570">One question, answered by the person who built it. Your email only if you want the answer sent.</p><form onsubmit="return yjAsk(event)" style="display:grid;gap:8px"><textarea name="question" required minlength="10" maxlength="2000" rows="3" placeholder="Your question" style="font:14px/1.5 system-ui,sans-serif;padding:10px;border:1px solid #cfd6dd;border-radius:6px"></textarea><div style="display:flex;gap:8px;flex-wrap:wrap"><input type="email" name="email" placeholder="Email (optional)" style="flex:1;min-width:200px;font:14px system-ui,sans-serif;padding:9px 10px;border:1px solid #cfd6dd;border-radius:6px"><button type="submit" style="font:600 14px system-ui,sans-serif;padding:9px 18px;border:0;border-radius:6px;background:#1b1f24;color:#fff;cursor:pointer">Send</button></div><p id="yj-ask-msg" style="font:13px system-ui,sans-serif;margin:2px 0 0;color:#0a6238;min-height:1em"></p></form><script>function yjAsk(e){e.preventDefault();var f=e.target,m=document.getElementById("yj-ask-msg");m.style.color="#0a6238";fetch(location.origin+"/api/ask",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({sku:96949,slug:"us-state-privacy-scope-2026",lang:"en",question:f.question.value,email:f.email.value,page:location.pathname})}).then(function(r){if(!r.ok)throw 0;m.textContent="Thanks \u2014 noted. Answers land on this page and, if you left an email, in your inbox.";f.question.value="";}).catch(function(){m.style.color="#a8551f";m.textContent="Could not send. Please try again in a minute.";});return false;}</script></div></section><!--yj-embed-s178--><details id="embed" data-yj="yj-embed" style="max-width:46rem;margin:1.6rem auto;padding:.85rem 1.1rem;border:1px solid #8884;border-radius:10px"><summary style="cursor:pointer;font-weight:600">Embed this calculator on your site (free)</summary><p style="margin:.6rem 0;opacity:.85">Paste this code into your page. It runs in your visitor’s browser and stays up to date. Nothing your visitors type is stored.</p><textarea readonly rows="6" style="width:100%;font:12px/1.4 ui-monospace,Menlo,Consolas,monospace;border:1px solid #8886;border-radius:7px;padding:.5rem">&lt;iframe src=&quot;https://getreadystack.com/embed/us-state-privacy-scope-2026/&quot; title=&quot;US State Privacy Scope &amp;amp; Cure Clock 2026&quot; loading=&quot;lazy&quot; data-rs-embed=&quot;en-us-state-privacy-scope-2026&quot; style=&quot;width:100%;max-width:760px;height:640px;border:1px solid #e3e3e3;border-radius:10px&quot;&gt;&lt;/iframe&gt;
&lt;p style=&quot;font-size:13px;margin:6px 0 0&quot;&gt;&lt;a href=&quot;https://getreadystack.com/tools/us-state-privacy-scope-2026&quot;&gt;US State Privacy Scope &amp;amp; Cure Clock 2026&lt;/a&gt; by &lt;a href=&quot;https://getreadystack.com/&quot;&gt;ReadyStack&lt;/a&gt;&lt;/p&gt;
&lt;script&gt;window.addEventListener(&quot;message&quot;,function(e){if(e.origin!==&quot;https://getreadystack.com&quot;||!e.data||e.data.type!==&quot;readystack-embed&quot;)return;var f=document.querySelectorAll(&quot;iframe[data-rs-embed]&quot;);for(var i=0;i&lt;f.length;i++){if(f[i].contentWindow===e.source)f[i].style.height=Math.min(e.data.h+6,8000)+&quot;px&quot;;}});&lt;/script&gt;</textarea><p style="margin:.5rem 0 0"><button type="button" data-yj="yj-embed-copy" style="font:inherit;padding:8px 14px;border:1px solid #8884;border-radius:9px;background:transparent;cursor:pointer">Copy code</button> &nbsp;<a href="/embed/">All embeddable tools</a></p><p style="margin:.7rem 0 0;font-size:.92em;opacity:.9">For businesses: your name and logo instead of ours, and each visitor’s result + e-mail in your inbox (only when they tick consent) — Pro from $19/month. <a href="/embed/pro/?ref=embed_box">See Pro &rarr;</a></p></details><script data-yj="yj-embed">(function(){var b=document.querySelector("[data-yj=yj-embed-copy]");if(!b)return;var t=b.textContent;b.addEventListener("click",function(){var a=b.closest("details").querySelector("textarea");var v=a.value;function d(){b.textContent="Copied";setTimeout(function(){b.textContent=t;},1800);}if(navigator.clipboard&&navigator.clipboard.writeText){navigator.clipboard.writeText(v).then(d,function(){a.select();});}else{a.select();}});})();</script><section class="yj-related" style="max-width:920px;margin:56px auto 40px;padding:0 20px"><h2 style="font:600 21px/1.3 system-ui,sans-serif;margin:0 0 6px;color:#1b1f24">Same job, next tool</h2><p style="font:400 14.5px/1.5 system-ui,sans-serif;margin:0 0 20px;color:#5b6570">Free in the browser. The full version is a one-time licence.</p><div style="display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:14px"><a class="yj-rel-c" href="https://getreadystack.com/tools/dsar-deadline-clock-2026?ref=related"><span class="yj-rel-t">DSAR Deadline Clock - 9 US State Privacy Laws (2026)</span><span class="yj-rel-p">$60</span></a><a class="yj-rel-c" href="https://getreadystack.com/tools/ca-climate-disclosure-clock-2026?ref=related"><span class="yj-rel-t">CA Climate Disclosure Clock 2026 — which SB 253 / SB 261 report your group owe</span><span class="yj-rel-p">$60</span></a><a class="yj-rel-c" href="https://getreadystack.com/tools/german-e-invoice-clock-2027?ref=related"><span class="yj-rel-t">German E-Invoice Clock 2027 - which Sec. 14 UStG date binds your German entity</span><span class="yj-rel-p">$60</span></a><a class="yj-rel-c" href="https://getreadystack.com/tools/right-to-work-exposure-oct-2026?ref=related"><span class="yj-rel-t">UK Right to Work Exposure - 1 October 2026 Scope Change</span><span class="yj-rel-p">$60</span></a><a class="yj-rel-c" href="https://getreadystack.com/tools/email-footer-law-lint?ref=related"><span class="yj-rel-t">Email Footer Law Lint</span><span class="yj-rel-p">$29</span></a><a class="yj-rel-c" href="https://getreadystack.com/tools/optout-signal-lint?ref=related"><span class="yj-rel-t">Opt-Out Signal Lint for US State Privacy Laws</span><span class="yj-rel-p">$29</span></a></div><style>.yj-rel-c{display:flex;flex-direction:column;gap:8px;padding:15px 16px;border:1px solid #e2e6ea;border-radius:6px;text-decoration:none;background:#fff}.yj-rel-c:hover{border-color:#b9c2cb;background:#fafbfc}.yj-rel-t{font:500 14.5px/1.42 system-ui,sans-serif;color:#1b1f24}.yj-rel-p{font:600 13px system-ui,sans-serif;color:#0a6238}</style></section>
<script src="/assets/pro.js?v=3a0f7794" defer></script>
<script data-yj="yj-prefill-s181 v1">(function(){try{var q=new URLSearchParams(location.search);if(!q.toString())return;var P={"R": {"employee": ["employee|w-?2\\b|arbeitnehmer|angestellt|会社員|従業員|給与所得|trabajador|asalariad|empregad|clt\\b|salari", "Employee"], "self": ["self-?employ|freelanc|sole (trader|prop)|selbst(ä|ae)ndig|freiberuf|個人事業|フリーランス|aut(ó|o)nom|\\bmei\\b", "Freelancer / self-employed"], "landlord": ["landlord|rental|vermiet|大家|不動産|arrendador|alquiler|locador|aluguel", "Landlord"], "investor": ["invest|trader|anleger|投資|inversor|investidor", "Investor / trader"], "employer": ["employer|arbeitgeber|雇用主|事業主|empleador|empregador", "Employer"], "seller": ["seller|online shop|h(ä|ae)ndler|販売|vendedor|e-?commerce", "Online seller"]}, "C": {"US": "^(us|usa)$|united states|estados unidos|vereinigte staaten|アメリカ|米国", "UK": "^(uk|gb)$|united kingdom|great britain|reino unido|vereinigtes k|イギリス|英国", "DE": "^de$|germany|deutschland|alemania|alemanha|ドイツ", "JP": "^jp$|japan|jap(ó|ã|o)n?|日本", "ES": "^es$|spain|españa|espana|espanha|spanien|スペイン", "BR": "^br$|brazil|brasil|ブラジル"}, "B": "your 2027 dates", "L": "en"};function ours(el){return !!(el&&el.closest&&el.closest("[data-yj],[data-yj-cta],[data-yj-cal],.yj-email-gate,.yj-find,.yj-related,#yj-ask,#yjgo,#yjr,header,footer,nav"));}function fields(){var r=document.querySelector("main")||document.body;return [].filter.call(r.querySelectorAll("input,select,textarea"),function(el){var t=(el.type||"").toLowerCase();return !ours(el)&&!el.disabled&&["email","hidden","search","password","file","submit","button","reset","image"].indexOf(t)<0;});}function key(el){return el.getAttribute("data-k")||el.id||el.name||"";}function fire(el){["input","change"].forEach(function(n){try{el.dispatchEvent(new Event(n,{bubbles:true}))}catch(e){}});}function setv(el,v){v=String(v).slice(0,80);var t=(el.type||"").toLowerCase(),tg=el.tagName;if(tg=="SELECT"){var o=[].filter.call(el.options,function(o){return o.value==v||o.text.trim()==v})[0];if(!o)return false;el.value=o.value;}else if(t=="checkbox"||t=="radio"){if(!/^(1|0|true|false|on|off|yes|no)$/i.test(v))return false;el.checked=/^(1|true|on|yes)$/i.test(v);}else if(t=="number"||t=="range"){var n=parseFloat(v.replace(/\s/g,"").replace(",","."));if(!isFinite(n))return false;el.value=String(n);}else if(t=="date"){if(!/^\d{4}-\d{2}-\d{2}$/.test(v))return false;el.value=v;}else{if(/[<>]/.test(v))return false;el.value=v;}fire(el);return true;}function pick(el,rx){if(el.tagName!="SELECT")return false;var re=new RegExp(rx,"i");var o=[].filter.call(el.options,function(o){return re.test(o.value)||re.test(o.text)})[0];if(!o||el.value==o.value)return false;el.value=o.value;fire(el);return true;}function run(){var F=fields(),done={},n=0;q.forEach(function(v,k){if(n>=20||/^(ref|role|cc|utm_.*|fbclid|gclid)$/.test(k)||!/^[A-Za-z0-9_-]{1,40}$/.test(k))return;F.forEach(function(el){if(key(el)===k&&!done[k]&&setv(el,v)){done[k]=1;n++;}});});var cc=(q.get("cc")||"").toUpperCase().replace(/[^A-Z]/g,"");if(P.C[cc])F.forEach(function(el){var k=key(el);if(!done[k]&&/country|land|pa(i|í)s|pays|国/i.test(k+" "+(el.id||""))&&pick(el,P.C[cc])){done[k]=1;n++;}});var ro=(q.get("role")||"").replace(/[^a-z]/g,""),R=P.R[ro];if(R)F.forEach(function(el){var k=key(el);if(!done[k]&&el.tagName=="SELECT"&&[].some.call(el.options,function(o){return [].some.call(Object.keys(P.R),function(x){return new RegExp(P.R[x][0],"i").test(o.text)})})&&pick(el,R[0])){done[k]=1;n++;}});if(q.get("ref")=="calendar"){var h=document.querySelector("main h1")||document.querySelector("h1");var d=document.createElement("div");d.setAttribute("data-yj","yj-prefill-back");d.style.cssText="margin:.4rem 0 .8rem;font:15px/1.5 system-ui,sans-serif;opacity:.9";var a=document.createElement("a");a.href="/"+P.L+"/calendar/?ref=tool"+(R?"&role="+ro:"")+(P.C[cc]?"&cc="+cc:"");a.textContent=(R?R[1]+" \u00b7 ":"")+P.B+" \u2192";d.appendChild(a);if(h&&h.parentNode)h.parentNode.insertBefore(d,h.nextSibling);}document.documentElement.setAttribute("data-yj-prefilled",String(n));}if(document.readyState=="loading")document.addEventListener("DOMContentLoaded",run);else run();}catch(e){}})();</script>
<script data-yj="yj-leave-beacon">(function(){try{if(navigator.doNotTrack=='1'||window.doNotTrack=='1'||navigator.globalPrivacyControl)return;var S=sessionStorage,p=location.pathname,ent=S.getItem('yje');if(ent===null){var h='';try{h=document.referrer?new URL(document.referrer).hostname:'';}catch(e){}if(/(^|\.)getreadystack\.com$/i.test(h))h='';var rq='';try{rq=(new URLSearchParams(location.search).get('ref')||'').replace(/[^a-z_]/g,'').slice(0,12);}catch(e){}ent=h?h.toLowerCase().slice(0,60):(rq?'ref_'+rq:'');S.setItem('yje',ent);}if(!ent||S.getItem('yjl:'+p))return;var vis=0,last=Date.now(),on=document.visibilityState!='hidden',maxy=0,act={},sent=false;function tick(){var n=Date.now();if(on)vis+=n-last;last=n;}function sc(){var y=(window.scrollY||0)+innerHeight;if(y>maxy)maxy=y;}sc();addEventListener('scroll',sc,{passive:true});document.addEventListener('copy',function(){act.copy=1;},true);document.addEventListener('input',function(e){if(e.isTrusted&&!(e.target&&e.target.closest&&e.target.closest('.yj-email-gate,.yj-find,#yj-ask')))act.type=1;},true);document.addEventListener('click',function(e){var a=e.target&&e.target.closest?e.target.closest('a,button'):null;if(!a)return;var hr=a.getAttribute('href')||'';if(/\/api\/buy\//.test(hr))act.buy=1;else if(a.hasAttribute('download')||/\.(mid|zip|xlsx|docx|pdf|tex|dxf|csv)(\?|$)/i.test(hr))act.file=1;else if(/^https?:/i.test(hr)&&!/getreadystack\.com/i.test(hr))act.out=1;else if(a.closest('[data-yj-first]'))act.first=1;},true);var M=[['result','#out,[data-o],.yjp'],['offer','.yjp-buy,[data-yj-cta],a[href*="/api/buy/"]'],['email','.yj-email-gate'],['faq','[data-yj="yj-facts-v1"],details'],['related','.yj-related'],['end','.yj-home-find,footer']];function lastSeen(){var b='top',by=-1;for(var i=0;i<M.length;i++){var e=document.querySelector(M[i][1]);if(!e)continue;var t=e.getBoundingClientRect().top+(window.scrollY||0);if(t<maxy&&t>by){by=t;b=M[i][0];}}return b;}function send(){if(sent)return;tick();sent=true;S.setItem('yjl:'+p,'1');var H=document.documentElement.scrollHeight||1;var b=JSON.stringify({path:p,lang:"en",t:'leave',ref:(ent.indexOf('ref_')===0?'':'https://'+ent),ent:ent,secs:Math.min(1800,Math.round(vis/1000)),depth:Math.min(100,Math.round(maxy/H*10)*10),last:lastSeen(),act:Object.keys(act).sort().join('_'),src:(function(){try{return (new URLSearchParams(location.search).get('ref')||'').replace(/[^a-z_]/g,'').slice(0,12)}catch(e){return ''}})()});try{if(navigator.sendBeacon&&navigator.sendBeacon('/api/ev',new Blob([b],{type:'application/json'})))return;}catch(e){}try{fetch('/api/ev',{method:'POST',keepalive:true,headers:{'Content-Type':'application/json'},body:b});}catch(e){}}document.addEventListener('visibilitychange',function(){if(document.visibilityState=='hidden'){tick();on=false;send();}else{last=Date.now();on=true;}});addEventListener('pagehide',send);}catch(e){}})();</script>
<!--yj-trust-foot-s191--><footer data-yj="yj-trust-foot" style="margin:3rem auto 0;padding:1.2rem 1rem 2rem;border-top:1px solid rgba(128,128,128,.28);max-width:60rem;font:14px/1.6 system-ui,-apple-system,Segoe UI,sans-serif;color:#5b6570;text-align:center"><nav aria-label="ReadyStack" style="display:flex;gap:.4rem 1.1rem;justify-content:center;flex-wrap:wrap"><a href="/about" style="color:inherit">About</a><a href="/verify/" style="color:inherit">How we verify</a><a href="/privacy" style="color:inherit">Privacy</a><a href="/terms" style="color:inherit">Terms</a><a href="/contact.html" style="color:inherit">Contact</a><a href="mailto:support@getreadystack.com" style="color:inherit">support@getreadystack.com</a></nav><p style="margin:.6rem 0 0">&#128274; Secure checkout by Whop &middot; &copy; 2026 ReadyStack</p></footer><!--/yj-trust-foot-s191--></body></html>