Ohio Rate Watch is an independent, non-commercial tool for Ohio natural gas customers. We don't sell anything, accept commissions, or have relationships with any supplier. Rates are sorted by price — nothing else. Our only job is to make PUCO's public data easier to read.
Ohio Rate Watch is not affiliated with the Public Utilities Commission of Ohio, any utility company, any energy supplier, or any third-party marketplace. We do not accept commissions or referral payments from utilities or suppliers.
— Ohio Rate WatchOur Commitments
We receive zero compensation from any supplier, utility, or energy broker. Ever.
Rates are sorted lowest to highest. No "featured" or "promoted" slots exist in this codebase.
Everything here comes from PUCO's own publicly available portal. We just make it readable.
No ad networks. No analytics pixels. No selling of subscriber data.
Data Source
All rate data is scraped daily from energychoice.ohio.gov — the official Ohio PUCO supplier comparison portal operated by the Public Utilities Commission of Ohio. We do not create, modify, or editorialize the rate data.
Average monthly bill benchmarks by city are sourced from the PUCO Ohio Utility Rate Survey, updated monthly.
Update Schedule
- Supplier rates are scraped once per day at approximately 2:00 AM ET via automated script
- If a scrape returns significantly fewer results than expected, the previous day's data is preserved and an internal alert fires — we don't publish partial or stale data silently
- The "Last updated" timestamp shown on the rate table reflects the actual scrape time, not a cached display time
What We Collect & Store
For each supplier offer, we store:
- Supplier name, rate ($/ccf), rate type (fixed/variable)
- Contract term length (months)
- Early termination fee (ETF)
- Monthly fees
- Whether the rate is introductory/promotional
- Bundle requirements (e.g., requires electric enrollment)
- Renewable / carbon offset indicators (from offer description text)
We retain historical daily snapshots so rate trends can be tracked over time.
How Alerts Work
When a daily scrape completes successfully, it is compared against the prior successful scrape. An alert is triggered when:
- Any supplier rate changes by more than 5% and at least $0.01/ccf
- The utility's default Standard Choice Offer (SCO) rate changes
- A supplier offer appears or disappears entirely
Email alerts are sent via Resend. We do not sell or share subscriber email addresses.
Ranking Logic
Supplier offers are displayed sorted by price ascending — cheapest first — within two categories: fixed-rate plans and variable-rate plans. That's it.
- Never paid or "featured" placement
- Never affiliate or referral links
- Never supplier sponsorships
- Always introductory/promotional rates clearly labeled
- Always bundle requirements disclosed upfront
- Always ETF and monthly fees shown in the table
Technology Stack
Ohio Rate Watch is a small, independent project built to be simple and maintainable:
- Backend: Node.js / Express, hosted on Railway
- Database: PostgreSQL (managed, Railway)
- Frontend: Vanilla HTML/CSS/JS — no frameworks, no trackers
- Source code: github.com/ej-systems/ohio-rate-watch
Who Built This
Ohio Rate Watch was built by a software developer in the Cleveland area. It started as a personal project after noticing how difficult it was to make sense of PUCO's rate comparison tools as a normal consumer.
This is a side project, not a business. If it helps Ohio residents save money on their gas bill, that's the whole point.
Questions, corrections, or feedback: [email protected]
Last updated: February 26, 2026