AI for utilities customer service: sort the queue before you automate it

Riellvriany Indriawan
Written by

Riellvriany Indriawan

Katelin Teen
Reviewed by

Katelin Teen

Last edited October 30, 2026

Expert Verified
Hand-drawn support agent at a laptop and a customer with a phone, with a friendly AI assistant between them and speech bubbles showing a bill, a storm with a lightning bolt, and a house with moving boxes
TL;DR

AI for utilities customer service works when you sort the queue into lanes first and only automate the lanes that are safe. Outage questions ("is my power out?") can be answered by AI from your outage map or status page. Move-in, move-out and "how do I read my bill" questions can be answered from your help center and start/stop form. High-bill and estimated-read questions need the account record, so AI drafts and an agent approves.

Two lanes stay with people. Payment plans and shut-off notices carry regulator rules (Texas, for example, requires at least 10 days' notice before a disconnection and protects medical cases for 63 days). And a gas smell or a downed line never gets an AI answer: the reply is the emergency number, right now, plus an alert to your team.

I work eesel's support queue every day, and that sorting step is exactly how the AI helpdesk teammate I work alongside runs in Zendesk and Freshdesk. smava uses it to categorize and draft replies across 27,000 regulated finance tickets a month. Plans start at $299 a month for 500 credits.

Why do utility support queues break in the same way every time?

Because a utility queue is really three or four different queues sharing one inbox, and one of them can explode overnight. On a calm Tuesday you get move requests and bill questions. Then a storm rolls through and the same inbox fills with hundreds of people asking the same question about the same street.

People who have worked the phones at a power company describe the mix in almost the same words:

Reddit

"I worked for an electric company call center for two years. No one, and I do mean no one, ever calls the electric company because they're happy. Odds are their power got cut for no payment, or there's an outage, or they're angry because their bill is way higher than they think it should be or can afford."

That one comment names three of the lanes. Another utility agent on Reddit described the routine layer as signing people up, transferring service to a new address, bill questions, new construction hookups and outage reports. Add the safety calls and you have the whole map.

The ChatGPT-style answer to "how do I add AI to utility customer service" is a 26-week enterprise plan: connect your customer information system, your outage management system, your meter data, add voice AI, and roll it out in phases. That plan fits a utility with millions of customers. It doesn't fit the 830 distribution co-ops NRECA counts or the roughly 2,000 communities on public power, most of whom run a small team on an email queue or a helpdesk. Per APPA's stats, public power is 59% of US electric utilities but only 15% of customers. Most utilities are small.

So this guide takes the helpdesk view. You don't need a 26-week program to stop drowning in "is my power out?" emails. You need a sorting rule and a short list of things the AI is never allowed to do.

What are the five lanes in a utility support queue?

Every utility ticket I've seen discussed fits one of five lanes, and each lane needs different data and a different owner:

Five lanes of a utility support queue: outage questions read from the outage map, high bill and estimated read questions read from the account and meter reads, move in and move out read from the start-stop form, payment plans and shut-off notices go to a person, and gas smells or downed lines go to the emergency line immediately
Five lanes of a utility support queue: outage questions read from the outage map, high bill and estimated read questions read from the account and meter reads, move in and move out read from the start-stop form, payment plans and shut-off notices go to a person, and gas smells or downed lines go to the emergency line immediately
  1. Outage. "Is my power out?", "When will it be back?", "Did you know about this?" Answerable from the outage map or your status page.
  2. High bill and estimated reads. "Why is my bill double?", "Why does it say estimated?" Needs the account: billing history, meter reads, rate.
  3. Move in, move out, transfer. Start, stop or transfer service, final bills, deposits. Answerable from your start/stop process, with the actual order placed in your billing system.
  4. Payment plans and shut-off notices. "I got a disconnection notice", "Can I pay on the 30th?" Regulator rules apply. A person decides.
  5. Safety. Gas smell, downed lines, sparking equipment. Never an AI conversation. The emergency number, instantly.

The sorting matters more than the AI. A general "answer everything" bot will happily try to help someone who writes "I smell gas, what should I check?", and that is the one ticket where helpfulness is the wrong answer.

Here's how the sorting works on real messages. Pick one to see the lane, what the AI reads, and who owns the outcome:

Pick a message from a utility inbox

Lane: Outage

AI reads: the current outage record for that area (map or status page).

AI does: answers on its own: known outage, cause if posted, when the next update comes, how to get text alerts. If no outage is listed, it tells them how to report one.

Person: only if the message mentions a downed line or medical equipment.

Lane: High bill

AI reads: billing history, last read type (actual or estimated), rate, days in the billing period.

AI does: drafts a reply with the actual numbers for an agent to approve.

Person: approves the draft. A formal dispute goes to billing.

Lane: Billing explainer

AI reads: your help article on estimated reads.

AI does: explains why the bill was estimated and how to send their own meter reading.

Person: only if they think the estimate is wrong and want it reviewed.

Lane: Move in / move out

AI reads: your start/stop help article and form.

AI does: collects the new address, date and account holder details, links the form, explains the final bill.

Person or system: places the actual start or stop order.

Lane: Payment plan / shut-off, with a medical flag

AI reads: nothing it should act on.

AI does: tags it urgent and vulnerable, routes it to a person at once, promises nothing.

Person: owns all of it, including any medical protection rules.

Lane: Safety

AI reads: nothing. No troubleshooting.

AI does: replies instantly with "leave now and call 911 and our emergency line" and alerts the on-call team.

Person: the emergency line handles it by phone.

Notice that only two of the six get a full AI answer on their own. That's normal for a utility. The win isn't automating everything. It's getting the AI to clear the high-volume lanes so your people have time for the hard ones.

Which lane should never get an AI answer?

The safety lane. Gas smells, downed power lines, anything that could hurt someone in the next ten minutes. The AI's only job here is to put the emergency instruction at the top of the reply and alert a person.

Every utility I checked sends these to a phone line, not a form or an inbox:

So the rule for the AI is simple and blunt. If a message mentions gas, a smell like rotten eggs, a line on the ground, sparks, or burning, it does not answer the question. It sends your emergency instructions word for word, tags the ticket, and pings whoever is on call. No "let me check that for you", no follow-up questions, no help article about pilot lights.

A good test before go-live: write ten messages that mention gas in passing ("my gas bill is high", "I'm moving and need the gas switched") and ten that are real emergencies. The AI should send the emergency reply to all ten emergencies and still answer the billing and move questions normally. If it misses even one emergency, it isn't ready. I'd rather it over-trigger on "gas" than under-trigger, and I'd test this the way I'd test any rollout, against past tickets before a single customer sees it.

Voice vendors handle this lane the same way. PolyAI's PG&E story describes potential gas leaks as a sensitive topic its agent has to route accurately.

How do you handle the outage surge?

Answer every "is my power out?" ticket from one outage record that a person keeps current, and never let the AI invent a restoration time.

Outage tickets are the most repetitive tickets a utility gets. They're also the most emotional, because the person writing has no lights, no fridge and no idea how long this will last. A utility call center worker on Reddit put it plainly during Hurricane Florence:

Reddit

"Power company call center employee here. Been taking calls all morning for outages and emergencies across the east side of the Carolinas. Not a single person I've spoken to is taking this seriously and are upset when I tell them we have no eta on restoration."

The answer is the same for everyone in the affected area, which is exactly what AI is good at, as long as it reads from the right place:

Before and after: one outage creates hundreds of 'is my power out?' tickets, while one outage record with area, cause and next update time gives every ticket the same answer
Before and after: one outage creates hundreds of 'is my power out?' tickets, while one outage record with area, cause and next update time gives every ticket the same answer

What goes into that record is what your outage map already shows: affected area, number of customers out, cause if known, estimated restoration if your outage system has given one, and when the next update is due. Large utilities publish their cadence. PG&E's outage alerts go out 5 to 10 minutes after a potential outage and 20 to 30 minutes after a confirmed one, with an estimated restoration time, and its outage map updates every 5 minutes, or up to 30 during widespread outages.

PG&E's outage alerts page, explaining that account holders automatically get text alerts about outages at their service address, as taken from PG&E
PG&E's outage alerts page, explaining that account holders automatically get text alerts about outages at their service address, as taken from PG&E

A small co-op won't have that tooling, and doesn't need it. A status page, a pinned post, or one internal note that your outage lead updates is enough for the AI to answer from. The guides on status page updates and incident communication cover how to keep that single record honest, and the same playbook I wrote for SaaS outages applies almost line for line.

A few rules I'd set for the outage lane:

  • Copy, don't compose. The AI quotes the current restoration estimate from the record. If the record says "no estimate yet", the reply says that. No guessing.
  • Say when the next update comes. That one line is what stops the same person writing again in 15 minutes.
  • Point to the alerts. Duke Energy's outage page states plainly that talking to a representative won't speed up restoration. Say the same, kindly, and link the text alert signup.
  • Link the tickets. In Zendesk, a problem ticket lets you close every linked outage ticket with one final message when power is back. Ticket deduplication handles the person who wrote three times.
  • Watch for safety words. An outage ticket that mentions a downed line or oxygen equipment jumps lanes immediately.

The volume shape matters for pricing too. Norden-Frisia, a German ferry line, isn't a utility, but its queue swings the same way with the weather and the season. Its eesel plan was set to 10,000 interactions a month for high season and scales back down from October to March, answering from 346 Zendesk FAQs, macros and past tickets. A utility with storm seasons should price the same way, which I cover in seasonal support spikes.

Can AI explain a high bill or an estimated read?

Yes, but only if it can read the account. Without the billing history, the AI can explain how bills work in general, which is not what an angry customer with a bill twice last month's wants.

AWS's own energy assistant reference build describes what an agent normally checks for a high-bill call: billing history, meter readings, rate schedules and sometimes weather data. That's the list your AI needs too. The difference between "your usage was higher" and "your bill covered 34 days instead of 29, and your last read was estimated" is the difference between a second ticket and a closed one.

The estimated-read question is its own small lane, and a lot of it is answerable from your help center:

  • Con Edison lets customers send their own meter reading to avoid an estimated bill, by photo with the account number.
  • In Great Britain, Ofgem's back-billing rule means households don't have to pay for energy used more than 12 months ago if they weren't billed correctly for it.
  • In Texas, the PUC's disconnection rule bars cutting off service for non-payment of an estimated bill outside an approved meter-reading plan.

Meter readings are often the single biggest automatable intent. German energy supplier enercity reports in its Zendesk story that meter reading submissions are its top use case, automated at 59.6%, with a 54% AI resolution rate overall across more than 60 request types.

How I'd run this lane:

  1. Start with drafts. The AI pulls the account data and writes the reply with real numbers. An agent checks it and sends. This is how smava runs its regulated loan queue: the drafting agent ran on about 12,200 tickets in a month, and every one of those drafts waited for a person to approve.
  2. Read-only lookups. The AI can read the bill. It can't adjust it, credit it or change a payment date. Swiftreg is a good model: order details go only to the verified account holder, a lookup result always beats the knowledge base, and a step that belongs to staff gets an internal note instead of a reply.
  3. Disputes go to billing. "This bill is wrong and I won't pay it" is a dispute, not a question. My guide to billing disputes covers the handoff.

If your billing system has no API, the AI can still help: it tags the ticket "high bill", asks for the account number and the bill date up front, and leaves an internal note listing what the agent should check. That alone cuts a round trip. More on this in billing questions and billing support automation.

What about move-in, move-out and transfers?

This lane is mostly answerable today, because the questions are the same every time: when can I start, what do you need from me, what happens to my final bill.

PG&E's start, stop or transfer page shows the standard shape. Most requests can start or stop the same day, can be scheduled up to 60 days ahead, and need identity verification. Business accounts pay a deposit. PG&E also advises scheduling the stop and start for the same day to avoid a gap.

PG&E's start, stop or transfer service page with separate paths for new customers, existing customers and FAQs, as taken from PG&E
PG&E's start, stop or transfer service page with separate paths for new customers, existing customers and FAQs, as taken from PG&E

The AI's job in this lane is to collect, explain and link:

  • Collect the service address, move date and account holder name.
  • Explain what ID is needed and whether a deposit applies, straight from your policy article.
  • Link your start/stop form, or create the ticket with all the details filled in so an agent doesn't have to ask again.
  • Explain the final bill. Without a smart meter, Con Edison's final bill is estimated from past use unless the customer sends a reading. That's a question the AI can answer before it becomes a complaint a month later.

What the AI shouldn't do is confirm the order is placed when it isn't. Placing the order is your billing system's job, or a person's. A reply that says "you're all set for the 15th" when nobody has keyed it in is worse than no reply.

Why do payment plans and shut-off notices stay with people?

Because the rules are specific, they vary by state or country, and getting them wrong hurts someone. A disconnection is the most serious thing a utility does to a customer, and regulators treat it that way.

Texas is a good example of how detailed this gets. Under the PUC's §25.29 rule:

Texas ruleWhat it says
NoticeDisconnection no sooner than 10 days after notice, in English and Spanish
MedicalNo disconnection if it would make a resident seriously ill, with a physician's statement and a payment plan. Protection lasts 63 days
Cold weatherNo disconnection if the previous day's high stayed at or below 32°F and the forecast holds for 24 hours
HeatNo disconnection on heat advisory days or the two days after
Estimated billsNo disconnection for an unpaid estimated bill outside an approved read plan

In Great Britain, Ofgem's prepayment meter rules require suppliers to make at least 10 contact attempts and a welfare visit before installing one involuntarily, and ban it for some households, such as everyone over 75 with no other support or homes with children under 2. Ofgem's Priority Services Register adds extra help for people with medical equipment, disabilities and other needs.

Front-line agents know this lane is the heaviest part of the job:

Reddit

"Half of my calls were dealing with power outages, and the anger and fury that comes with that. The other half were dealing with people getting shut off or having already lost power and getting them to make payments and setup plans so they could have electricity again."

None of that means the AI does nothing here. What it does well in this lane is spotting:

Three columns: AI answers outage status, how to read your bill and start or stop dates; AI drafts and a person sends high bill reviews, final bill questions and payment plan requests; only a person handles medical or vulnerable cases, disconnection disputes and gas smells
Three columns: AI answers outage status, how to read your bill and start or stop dates; AI drafts and a person sends high bill reviews, final bill questions and payment plan requests; only a person handles medical or vulnerable cases, disconnection disputes and gas smells
  • Tag it fast. Any mention of a disconnection notice, shut-off, payment plan, or "can't pay" gets tagged and moved to the right team. Speed matters because notice periods are counting down.
  • Flag vulnerability. Words like oxygen, dialysis, medical, elderly, baby, or disabled get a vulnerable flag and jump the queue.
  • Draft, don't decide. For a simple payment plan request, the AI can draft a reply asking for the details your team needs. A person decides the plan.
  • Never threaten, never promise. The AI doesn't restate disconnection dates as warnings, and doesn't promise service will stay on.

This is the same "spot, tag, route" pattern from my guides on regulated industries and GDPR requests. The AI is fast at sorting. The judgment stays with people. A good escalation setup makes sure the handoff lands with someone who can act.

What data does the AI need for each lane?

Most of what you need for the first two lanes already exists, and the data question is what decides how fast you can go live:

LaneWhat the AI readsWhat it does on its ownWhat a person owns
OutageOutage map, status page or one internal outage noteAnswers with area status, next update time, alert signupUpdating the record, downed lines, medical equipment
How-to and estimated readsHelp center articles, rate pagesExplains bills, estimated reads, how to send a readingReviewing a disputed estimate
High billBilling history, read type, rate (read-only)Drafts a reply with real numbersApproving and sending, adjustments, credits
Move in / outStart/stop article and form, deposit policyCollects details, explains final bill, links the formPlacing the order in the billing system
Payment plan / shut-offTicket text onlyTags, flags vulnerability, routesEvery decision and every reply
SafetyTicket text onlySends emergency instructions, alerts on-callThe emergency response

Notice how far you can get with no system integration at all. The outage lane, the how-to lane and most of the move lane run on content you've already published. The account lookups come later, and they're read-only when they do. The security review guide is worth reading before you connect anything that holds customer account data.

What results have utilities published so far?

The published numbers so far come mostly from phone lines and big utilities. They're vendor-reported, but they show the routine lanes are real:

UtilityVendorChannelPublished result
SECO Energy, Florida co-op, 220,000+ homes and businessesCapacityPhone66% lower cost per call, 32% of calls handled by AI, 4.5/5 satisfaction (same as live agents)
PG&E, 5.2M householdsPolyAIPhone35,000 labor hours saved, 67% of calls contained, satisfaction up 22%
TNB, Malaysia, 10.5M+ accountsAWSDigital channels15,000 queries a month resolved by AI, 91% positive sentiment, within 10 months
enercity, Germany, about 1M customersZendeskCustomer portal54% AI resolution rate, meter readings 59.6% automated

Look at what these assistants do: outage reporting and status, account changes, start and stop service, FAQs, meter readings. That's lanes 1, 3 and the how-to part of lane 2. TNB's case study notes that billing system integration is still a planned step, which matches the order I'd go in. Even a national utility started with the lanes that don't need the bill.

What none of them cover is the written queue at a small utility: the co-op or city utility with a handful of agents answering email and web forms in Zendesk or Freshdesk. That's where a helpdesk AI teammate fits, because it works inside the tool you already use. Danish electricity supplier Altid Energi is one I've written about, running eesel's drafted replies in Zendesk.

If your utility also takes a lot of calls, the voice agent guide and AI phone support cover that side.

How much does it cost on a helpdesk?

On a helpdesk, AI is priced per resolution, per session or per ticket, so price it on your outage month, not your quiet month:

OptionBase priceAI pricing
ZendeskSuite Team $55, Suite Professional $115 per agent a month (annual)AI agents included; 5 or 10 automated resolutions per agent a month, then $1.50 each committed or $2.00 pay-as-you-go
FreshdeskGrowth $19, Pro $55, Enterprise $89 per agent a month (annual)AI agent: 500 sessions free once, then $49 per 100 sessions. Copilot $29 per agent a month
eeselNo per-seat fee, works inside your helpdesk$299 a month for 500 credits, up to $1,749 for 5,000. One ticket is one credit

Two things to watch. Zendesk only charges for a resolution when the AI resolves without a person, which suits the outage lane well. Freshdesk counts an email AI session as a 72-hour window from the customer's first email. And for eesel, a ticket the AI only tags and routes still uses a credit, so count the shut-off and safety lanes in your volume too. My full breakdowns are in Zendesk pricing and Freshdesk pricing, and AI vs human agent cost has the comparison against hiring.

How do you set it up in your helpdesk?

Here's the order I'd follow. It puts the safety rule first and the account lookups last:

  1. Pull 3 months of tickets and sort them. Count how many fall into each of the five lanes. Include a storm month if you can. This tells you where the volume is and gives you a test set.
  2. Write the safety rule first. Your emergency wording, your list of trigger words, and who gets alerted. Test it on 20 messages before anything else goes live.
  3. Write the shut-off rule second. Tag, flag vulnerability, route, never promise. Write down your local notice and medical rules so agents (and the AI's instructions) state them correctly.
  4. Set up the outage record. One place your outage lead updates, which the AI reads. Decide your update cadence and stick to it.
  5. Clean up the help center. Estimated reads, how to send a reading, start/stop steps, deposits, final bills, payment options. The AI is only as good as these articles. Help center search is worth a look here.
  6. Run it on past tickets. Before customers see anything, run the AI over your sorted tickets and read what it would have said. eesel does this as a simulation against your own history.
  7. Go live lane by lane. Outage and how-to first, answering on their own. High bill and move as drafts for agents to approve. Use approval workflows for the drafts.
  8. Add account lookups last. Read-only, verified account holder only.
  9. Review weekly. Check what the AI tagged as safety and shut-off, and what it missed. Support reporting by lane shows you which lane to widen next.

Then use the after-hours coverage. Outages don't keep office hours, and an AI answering the outage lane at 2am is the easiest win on this list. The guides on after-hours support and weekend coverage cover the staffing side, and support staffing covers what happens to your team when the AI takes the repeat questions.

Try eesel for your utility queue

If your utility runs on Zendesk or Freshdesk, eesel's AI helpdesk teammate joins the queue you already have. It sorts every ticket into your lanes, answers outage and how-to questions from your outage record and help center, drafts high-bill and move replies for your agents, and sends shut-off notices and anything mentioning gas or a downed line straight to a person. You can run it over your past tickets first and see exactly what it would have said before it touches a customer.

smava runs the same pattern on a regulated queue of 27,000 tickets a month: categorize everything, draft from approved wording, and let people send. Norden-Frisia scales its plan up and down with the season. Connect your Zendesk or Freshdesk and try eesel free, with 100 credits and no card.

eesel's AI working inside Zendesk, drafting and handling tickets in the existing helpdesk

Frequently Asked Questions

Can AI handle customer service for a utility company?
Yes, for the routine lanes: outage status questions, how-to-read-your-bill questions, and move-in or move-out requests. Utilities like SECO Energy and PG&E already run AI on their phone lines. Keep shut-off notices, payment plans, medical cases and anything about a gas smell or downed line with people, using a clear handoff.
What should AI never do in utility customer service?
It should never troubleshoot a gas smell or a downed power line, never decide or promise anything about a disconnection, and never agree a payment arrangement on its own. Safety messages get the emergency number at the top and an alert to a person. My guide on regulated industries covers the wider rules.
How does AI help during a power outage?
It answers the flood of 'is my power out?' tickets from one outage record: the affected area, the cause if known, and when the next update comes. It never invents a restoration time the outage system has not given. My posts on incident communication and status page updates show how to keep that record current.
Can AI explain a high utility bill?
Only if it can read the account: billing history, whether the last read was actual or estimated, and the rate. Without that it can only explain how bills work in general. I'd start with AI drafting the high-bill reply for an agent to approve, the same pattern as my guide to billing questions.
Is AI for utilities customer service only for big utilities?
No. Most US utilities are small: public power makes up 59% of US electric utilities but serves 15% of customers, per APPA. A co-op or municipal utility with a few agents on Zendesk or Freshdesk can add an AI teammate to its existing helpdesk without a new contact center platform.
How much does AI for utility customer service cost?
On a helpdesk it is priced per resolution, per session or per ticket. Zendesk charges $1.50 per extra automated resolution on a commitment, Freshdesk charges $49 per 100 AI agent sessions after 500 free, and eesel starts at $299 a month for 500 credits, with one ticket as one credit. Compare them on your outage-month volume, not your quiet month.
How long does it take to set up AI for a utility support queue?
The outage and how-to lanes can run within a couple of weeks if your help center and outage page are current. Account lookups take longer because they depend on what your billing system lets you read. My implementation timeline guide breaks the stages down.

Share this article