Skip to content

BuildNot yet confirmed elsewhere1 publisher2 min readPublished

AB 1609 sets a $500M revenue floor on its chatbot disclosure and handoff rules

California's AB 1609 fines chatbot operators $5,000 for a first violation and $10,000 for each after, according to a dev.to guide. It limits the law to businesses with $500M or more in revenue, while EU Article 50 has no floor, so mixed traffic needs disclosure logic that branches.

The Engineer · Build desk

How we use AISend a correction

Illustration accompanying AB 1609 sets a $500M revenue floor on its chatbot disclosure and handoff rules
Generated illustration
How AB 1609 fines add up, beside EU Article 50's cap AB 1609 fines per violation and their total for ten, set beside the EU AI Act Article 50 penalty ceiling, as a dev.to post citing CX Network reports.

Key figures: ten AB 1609 violations total $95,000, one at $5,000 plus nine at $10,000. AB 1609 fines $10,000 for each violation after the first. EU AI Act Article 50 penalties run up to EUR 15M, or 3% of global turnover.

How AB 1609 fines add up, beside EU Article 50's cap
FigureValueNoteClaim
Ten AB 1609 violations: one at $5,000, nine at $10,000$95,000 total6
AB 1609, each later breach$10,0008
EU Article 50 penalty, up to€15,000,000or 3% of global turnover14

What happened

  • AB 1609, signed Sept. 28, 2026, sets three tripwires: in-the-moment AI disclosure, a human handoff within 15 minutes or an appointment within one business day, and a conspicuous service phone number.
  • EU AI Act Article 50 has applied since August 2026, carries penalties up to EUR 15M or 3% of global turnover, and has no revenue threshold.
  • The post attributes its penalty figures to CX Network, Oct. 11-12, 2026.

Why it matters

  • constraint A bot that runs around the clock cannot meet the handoff rule with a business-hours button, so overnight traffic needs staffed coverage or a booking path.
  • exposure A company under $500M in revenue sits outside AB 1609 as the post describes it, but any company with EU users is inside Article 50, so revenue alone does not say which rules apply.
  • decision Disclosure logic has to branch by user location: reminders during the conversation for California and Washington traffic, and a single disclosure for the other ten states.

The post reduces every bot setup to four booleans: in_moment_disclosure, policy_disclosure, human_handoff_sla and conspicuous_phone [2]. The last one is the AB 1609 phone requirement, a conspicuous service number on the site [13]. The first is the flag both regimes touch. AB 1609 wants disclosure to be "clear and conspicuous" wherever a reasonable person could be misled, and a human-name avatar with no AI mention is the violation [10]. Article 50 adds the second flag, because every person must know they are talking to AI, both in the moment and in the operator's policy [15].

The post cites "the guidance" without naming the document, and quotes it on how far a footer notice goes: "Generic declarations of AI use will not suffice." [16]

Handoff is where one boolean hides a branch. The scorer's code comment defines human_handoff_sla as "human in 15 min OR appt in 1 business day" [3]. A team with a live agent and a team with a booking form both set the flag to true, and the flag does not record which path is live. In our view the appointment path is the likelier fix for overnight traffic, because a scheduler and a next-business-day follow-up cost less than a night shift.

The cadence branch is simpler. Twelve states are on the post's list [17], and only California and Washington mandate frequent reminders [18]. Ten accept a one-time disclosure [19]. The widget needs the user's state at session start to choose a path.

The penalty math is easy to run and hard to interpret. At $5,000 for the first violation and $10,000 for each after [8], ten violations come to $95,000 [6]. The post does not say what counts as one violation.

It also sorts the fix-first list by penalty exposure: Article 50, then AB 1609, then state cadence [5]. The two penalties use different units. Article 50 is quoted as a ceiling tied to global turnover [14], and AB 1609 as a flat rate per violation [8].

The 49-point cap in the scorer is the author's design. Missing in-moment disclosure while serving EU users caps the score at 49, and the post justifies that by calling Article 50 non-negotiable [4].

What to watch

  • Whether California publishes enforcement guidance that defines a single AB 1609 violation, per conversation, per day or per page.
  • Whether more states adopt frequent-reminder mandates beyond California and Washington, which would add branches to the cadence logic.
  • Whether the Article 50 guidance quoted by the post is published in a form teams can check the 'generic declarations' line against.

Clarity's read

What the record supports and how the coverage leans. The claims behind it follow.

Reality

Evidence35
Adoption
Insufficient
Hype gap+20
Incentives
Insufficient
Confidence40
Why these scores

Claim ledger

Ranked by verification strength, evidence, and original report placement.

  1. [1]

    The post attributes its penalty figures to CX Network, Oct 11-12, 2026.

    ReportedSupportedSource: dev.to postView cited source
  2. [2]

    The post's roughly 80-line Python scorer reduces every bot setup to four booleans (in_moment_disclosure, policy_disclosure, human_handoff_sla, conspicuous_phone) plus a cadence question.

    ReportedSupportedSource: dev.to postView cited source
  3. [3]

    In the scorer's code, human_handoff_sla is a single boolean with the comment 'human in 15 min OR appt in 1 business day'.

    ReportedSupportedSource: dev.to post codeView cited source

Sources

1 independent publisher whose own reporting we read for this story.

  1. dev.to

    1 article · October 13, 2026

    Your chatbot is now a regulated surface: AB 1609 + EU AI Act Article 50 compliance in code

Share your take

Let Clarity write the post for you.

Signed-in readers get a short post drafted on this story in the register they choose — narrative, analytical, or a direct position — editable to the last word before it goes anywhere. The share buttons at the top of this story work without an account.

Topics and entities

Follow any of these and your For You feed starts watching them — no settings page required.

Topics

Entities

Loading related stories