Step 1: estimate your usage
-
Uploaded bill reading Real data, when available
If you upload a recent electricity bill, we read the usage number directly off it. If the reading is unclear or falls outside a plausible household range (50–10,000 kWh/month), we discard it and fall back to the estimate below rather than risk a bad number — and we say so on your results.
-
Home-profile estimate Heuristic
If you use the quick profile instead, we estimate your average monthly kWh from a formula: a base figure for apartment vs. house, adjusted for square footage above a baseline, work-from-home status, electric HVAC, top-floor unit, and your stated comfort preference (energy saver, normal, or max comfort). This is a reasonable approximation, not a measurement — an uploaded bill will always be more accurate.
-
Seasonal usage curve Hard calculation
We spread your single average-monthly figure across a 12-month curve modeled on Texas's real seasonal load pattern — usage roughly 50% above average in June–August (air conditioning) and well below average in spring and fall. This curve is the same shape for every household; it isn't personalized to your specific month-by-month pattern, only to the statewide seasonal shape applied to your estimate.
Step 2: calculate real projected cost
-
Per-plan annual cost Hard calculation
Every plan discloses its price per kWh at three usage tiers (500 / 1,000 / 2,000 kWh) on its Electricity Facts Label. We interpolate between those tiers for each month in your 12-month usage profile and sum the result into a single projected annual cost — the same number, run against the same code, for every plan.
Step 3: flag pricing gimmicks and risks
Every plan is checked against the same fixed set of rules — all deterministic, none of them AI judgment calls:
-
Usage cliff Hard rule
Flagged when the price at 500 kWh differs from the price at 1,000 kWh by more than 25% — a classic sign of a bill-credit structure.
-
Bill-credit gimmick Heuristic
Flagged when the plan is marked as having a bill credit in our source data — this field is a text-matching heuristic on the plan name/terms, not a fully structured field, so it's possible for an unusually-named plan to be missed.
-
Time-of-use plan Hard rule
Flagged whenever the plan's rate depends on time of day, with a note to verify the peak/off-peak split on the EFL.
-
Variable rate Hard rule
Flagged whenever the plan's price can change month to month with no cap.
-
Deposit required / not disclosed Hard rule
Flagged if a deposit is required. Separately and importantly: our current source data does not disclose deposit terms for any plan, so every plan shows a "deposit terms not disclosed" flag rather than an assumed "no deposit" — verify this directly with the provider.
-
High early termination fee Hard rule
Flagged when the worst-case cancellation cost (a flat fee, or a per-month-remaining fee multiplied by months left) reaches $200 or more.
-
Long contract Hard rule
Flagged at 24 months or longer.
-
Limited provider track record Hard rule, using a data input
Flagged when the provider's track-record signal in our source data (a 1–5 scale, described more under "provider track record" below) is 2 or lower.
-
Prepaid plan Informational only
Noted as a different billing rhythm, not treated as a negative on its own.
Step 4: apply your guardrails
If you check any of the optional guardrail boxes (avoid long contracts, avoid deposits, avoid bill- credit plans, avoid unfamiliar providers, prefer predictable flat-rate bills), plans that violate them are excluded from your three recommendations entirely — this is a hard filter, not a scoring penalty. You can still see everything, including plans your own guardrails screened out, in the "view all plans" list on your results page.
Step 5: choose the three recommendations
-
Best Value Hard rule
The lowest projected annual cost among plans that pass your guardrails.
-
Safest Choice Hard rule
The lowest total risk-flag score (ties broken by cost), excluding whichever plan was already chosen as Best Value.
-
Best Long-Term Hard rule
The cheapest plan with an 18-month contract or longer that isn't already one of the other two picks — a fallback to the next-cheapest eligible plan if no 18-month+ option exists.
Step 6: score confidence (1–10)
The confidence score is a blended read of everything above, not a separate opaque number. It starts at a baseline and moves up or down based on defined, visible factors — the exact list shown on your results page for each recommendation:
- Real bill data vs. estimate ±
Up if your usage came from an uploaded bill; down if it came from the home-profile estimate.
- Number of flags −
Down for each risk flag detected on the plan (see Step 3); no penalty if none were found.
- Contract length ±
Up for 12 months or less, roughly neutral through 24 months, down beyond that.
- Savings vs. a typical plan ±
Up the more this plan beats the median projected cost across all eligible plans in your area; down if it costs more (which can still happen if it was picked for safety or contract length, not price).
- Provider track record ±
Up or down based on the same 1–5 provider signal described below.
- Deposit not disclosed −
A small penalty applied on every plan currently, since deposit terms aren't disclosed anywhere in our source data.
- Time-of-use dependency −
A small penalty, since real savings depend on your usage actually shifting to specific hours.
About the provider track-record signal
Several factors above reference a provider "track record" signal — a 1–5 figure (or "no rating yet") included in our source data for each provider. We treat it as one input among several, not as an independent rating we calculate or verify ourselves, and we don't know the full original methodology behind that figure beyond that it ships with the same official plan-export data described on our Data Sources page. If you have direct experience with a provider that contradicts it, we'd genuinely rather you weigh your own experience over this number.
Does compensation affect rankings?
No. Every plan in a comparison set is scored by the exact same code path described above, regardless of which provider sells it, and we don't accept payment from any provider in exchange for placement or a more favorable recommendation. When you click "Enroll," the link sent you to is the provider's own sign-up page exactly as it appears in our source data — we do not currently add any referral or affiliate tracking of our own to that link. If that ever changes, we'll disclose it on our Editorial Policy page, and it still won't change which plan is selected as your Best Value, Safest Choice, or Best Long-Term option, since that selection is produced by the same deterministic rules for every plan either way.
Limitations — where you should verify things yourself
- Deposit requirements are not disclosed anywhere in our current source data — confirm directly with the provider before enrolling.
- The bill-credit flag relies on text matching against plan names/terms, not a fully structured field, so an unusually worded plan could be missed.
- Our dataset directly covers 11 ZIP codes across 6 delivery-utility territories. An address outside those ZIPs falls back to the nearest covered ZIP as a labeled reference sample — a useful approximation, not a guarantee that pricing at your exact address matches it precisely.
- The seasonal usage curve applied to every estimate is a general Texas pattern, not personalized to your specific home's month-by-month behavior.
- Plan pricing, availability, and terms can change after our data was last refreshed — see Data Sources for exactly how current our data is, and always confirm final numbers on the plan's actual Electricity Facts Label before signing up.
See this logic run against your own address
Every recommendation on your results page shows the exact factors that applied to it.
This page is generated from the actual behavior of our recommendation engine as of the date below, and we update it whenever that logic changes. Last reviewed July 19, 2026. See something that doesn't match what you observed on your results? Tell us via the Contact page.