New England Renewable Standards Depend on The Worst Software
"What is a REC? A miserable little pile of jank"
Every state in New England—even New Hampshire—has laws requiring electric utilities in their respective states to source some percentage of their electricity from renewable energy. Each state has their own metrics for what does and doesn’t count as renewable energy, but there’s a bigger problem.
Once the electrons are in the wires, you can’t track where they came from.
So if you want to figure out how much renewable electricity is generated and who paid for it, you need to track renewable generation at the generators and electric load at the utility substations, and connect A with B. And to make sure the right people get credit (and maybe money) for the renewable energy, you need a way to track who “earned” that credit too.
Enter the Generation Information System (GIS), stewarded by the New England Power Pool (NEPOOL), and built and maintained by software company APX.
The NEPOOL GIS is a central clearing house for all Renewable Energy Certificates (RECs) that are generated, transferred, and submitted for state renewable energy portfolio standards. It hoovers up generation, load, and emissions data, tags each megawatt-hour with its own serial number and compliance tags, and chops them into a digital thingymajig that’s worth cash money. Because if you don’t have enough RECs, you’re required to pay Alternative Compliance Payments (ACPs) to your state as punishment.
I once explained this structure to an attractive woman at a run club. She had asked what I did for work and then asked follow-up questions, which I mistook as honest interest.1 She found the reality of REC-trading vile and morally bankrupt. But the underlying software is so much worse.
DISCLAIMER: The below screenshots are heavily redacted to remove all identifying and confidential information.
Where Are My RECs?
RECs are only real insofar as they exist in the GIS. It follows that one should know how to find them. To that end, let’s open up the main dashboard for the GIS.
On the 15th of January, April, July, and October, a new set of RECs are “minted” for the quarter before last. For example, the Q1 RECs for the current year are “minted” on 15 July. For the next sixty days those RECs can be settled, transferred, or banked for settlement or transfer in the next quarter. If you don’t address a REC for this quarter, it vanishes. If you don’t address all your RECs for the year by the final deadline of 15 June of the next year, they vanish. If they vanish, they cannot be recovered.
So where are those RECs, you ask? Well, if you looked in one of those dropdown menus, you’re wrong.
You have to scroll to this “Account Status” panel near the bottom of the webpage. The below screenshot needed to be shrunk to 90% magnification to fit on a 1440p monitor.
That green thing that looks like a button is not. You can’t look at the data for other quarters. The blue numbers that look like hyperlinks are hyperlinks. The blue headings that are nearly the same color are not. The generation RECs you have are split between “Transferable,” “Reserved,” “Banked,” and “In Subaccounts.” Each one of those respective hyperlinks will send you a table that looks like this:
Those tabs up top do work. There is no hyperlink for “View All Certificates.” You have to click a different hyperlink, go to that tab on this very page, and then click the “View All Certificates” tab. There are several pages of this table. You can keep scrolling to the right. It’ll tell you each REC’s applicability to:
Six Connecticut REC categories
Eleven Massachusetts REC categories
Seven Maine REC categories
Two Rhode Island REC categories
Six New Hampshire REC categories
Two Vermont REC categories
Green-E certification
Low-Impact Hydro Institute certification
Yes, the text wraps annoyingly. Yes, the best way to view this is a CSV export. No, you can’t get a normal Excel export. But you can print it! It comes out to 5-point font on an 8.5”x11” page. It’ll give you a print date and time, but the timestamp is off by four hours.
But there are your RECs! Look at them!
Transferring RECs
The core impetus of RECs is that they can be bought and sold, with a price that typically tracks the Alternative Compliance Payment for a given REC category. My attractive run club interlocutor found the imposition of capitalism repulsive, but the $35-39/MWh that MA I and CT I RECs receive on the open market go a long way toward making solar and wind projects pencil in New England. The cash values of RECs are the incentive to build renewable. They are among the subsidies that
rails so fervently against.The GIS doesn’t track the money. The sales are solicited, negotiated, and invoiced through emails and phone calls. If you want a sense of going prices, you need to pay a broker and play blackjack off their intel. But the transfers do happen in the GIS. Let’s say they’re incoming. Can you find them?
If they’re a simple transfer, they’re in that “Inbox” panel. Instead of a zero under “Certificate,” you’ll get a number, in the same blue hyperlink color as everything else. The GIS does not email you. Your email alert will instead be an invoice from your REC seller saying that it’s been two days, and where’s my money, Ichiro?
If it’s an automatic forward transfer, because you purchased the RECs as part of a larger power purchase agreement that includes electricity, then you won’t see those incoming RECs in your inbox. It’s in the “Forward Certificate Transfer Inbox” panel at the very bottom of the webpage!
Either way, you click on the hyperlink, you get sent to a REC acceptance page, and you accept the incoming RECs. Fine, whatever.
Let’s say, instead, you want to transfer RECs to someone else, because you’re the REC seller now. In that case, click the “Transfer” drop-down at the top of the webpage, select “Certificates,” and land on this page:
Depending on your selection for “Transfer Type” at the top left, you’ll get different “batch criteria.”2 If you’re transferring to another account holder, you get a dropdown that includes every account registered in the NEPOOL GIS: solar developers, electric utilities, power trading companies (one entry for each subsidiary), random commercial properties, everyone, listed alphabetically, including regional subsidiaries and d/b/a names with no filter options. Once you filter your REC criteria, you need to click “View Certificates,” or else the main view panel doesn’t refresh. You’ll notice that the main panel has a vertical scroll and multiple pages. You can change the page size. You cannot make the page size infinite, despite the presence of a vertical scroll. You can select RECs one at a time per line item. Each row can hold anywhere from 1 REC to tens of thousands of RECs. The “Select All” and “Clear All” buttons affect the current page, not the other pages. You cannot make the page size infinite.
But eventually you collect a bundle of RECs to transfer to another account, for money that will be invoiced and tracked outside the GIS. You’ll see a big green number at the bottom showing the number of RECs you have selected. That’s your only check before clicking the transfer button. There’s no “Are you sure?” prompt before transferring RECs worth tens of thousands if not millions of dollars. Much lower-stakes actions in the GIS do get such a prompt, but not the highest-stakes action. If you fat-finger the “Transfer” button, your only recourse is that your counterparty does not blindly accept the new RECs in their inbox…except they will absolutely blindly accept the new RECs in their inbox, because it’s free money!
The Reports
You want to see a report? Let’s look at one. Here’s “My Certificates Disposition.”
This is not, as you might think, a report of what RECs you have. It’s an output log of what all your RECs were doing at the end of each quarter you select. Was a REC banked in Q2 for Q3? That’s logged here. Was that same REC banked for a second time in Q3 for Q4? That’s logged here as well. Did you settle that REC in Q4? That’s the third row in this report for that same REC. By the way, this report only looks at end-of-quarter inventories. Clear out your settlements in Q4? None of that shows up until the Q4 trading period ends on 15 June. Sell a bunch of RECs? That doesn’t get recorded here at all!
At least these reports are all SQL queries into APX’s server, so you can export them as an Excel!
There Are More Problems
Because I’m not Tantacrul, this isn’t even an exhaustive list!
If you’re making multiple REC transfers in a row, the best practice is to return to the homepage to “reset” the system before your next transfer. Otherwise, the next transfer might glitch out.
As a market participant, you can have multiple logins to the same account. You can’t individualize permissions on those logins. If you have a power plant operator entering emissions in the GIS, they can accidentally transfer millions of dollars in RECs if they snoop too recklessly.
The web documentation is a Zendesk wiki that hasn’t been meaningfully updated in 4-6 years.
That web documentation is written by one person. From what I hear, they’re the only software engineer of competence working on the GIS. There was no replacement during their parental leave.
The PDF documentation is undated but was written before a visual redesign of the GIS.
GIS doesn’t properly track retiring RECs for compliance purposes. To retire a REC, you allocate some number of RECs into a subaccount that’s named whatever you like. Then, you allocate your “obligation” credits into the same subaccount. Then you export a CSV of that subaccount and hand that to the regulatory authorities checking your renewable compliance.
Actually, you can’t generate a CSV export of which subaccounts your obligation credits went to. No one checks, anyway. The obligation credits are totally vestigial.
The GIS lags, hard, everywhere.
Did I mention that it doesn’t track price data?
As I have mentioned before, if an error invalidates any RECs, APX will throw up their hands and claim they don’t make the rules. If you take it up with your regulatory authority, they might also throw up their hands and claim they don’t make the rules!
The “banking” function in the GIS is only between quarters. You can’t bank this year’s RECs for next year. If your state allows you to use this year’s RECs to cover future years’ requirements (I think they all do), the GIS never got that update. You need to retire your current-year RECs wholesale, export that report to Excel, and track what was and wasn’t used for this year’s compliance on an Excel in your own SharePoint, which you reference for next year’s REC compliance filings. If you lose that Excel, that’s millions of dollars wasted.
I suspect (ABOUT EVEN 45%-55%) that New England utility regulators don’t have accounts in the GIS, which means they may have no way of checking REC fraud.
This is the state of renewables tracking in New England. It will not get fixed. APX’s hourly development rate is $180/hour (low for software development), and as of April 2025, they had already burned the 500 development hours budgeted for the year. Vermont wants tweaks to their Tier II REC eligibility. States are ruminating on hourly RECs instead of monthly RECs. All of this will require me to spend more time interfacing with this janky piece-of-shit software suite that doesn’t do even half of what it needs to do as a compliance tool.
This is the State of Regulatory Software
A few months ago, I went on a tirade about the absolute state of New England PUC docket viewers:
And at the end, I made an open call to any cracked software engineers about a startup idea. I ended up talking with a friend of mine and writing a whiteboard model of a software architecture. My buddy agreed that building a better PUC docket viewer would amount to a hobby project’s worth of work.
But when I looked at who would pay for such a tool, even my initial ARR projection of $100k proved too ambitious. The revenue is too tight to support full-time engineers, much less cracked engineers, much less a sales team robust enough to field an RFP response. And the people who would pay for such a tool—regulators, NEPOOL participants, utility general counsels—might not know what good software looks like.
I’m trying to talk myself out of a business model for some “New England Regulatory Software Solutions” that drops into digital travesties like the NEPOOL GIS, clears out the old with thermite and prejudice, and builds something better from first principles. I’m failing.
I might need to talk to Alex Karp.
This post and the information presented are intended for informational purposes only. The views expressed herein are the author’s alone and do not reflect those of their current or previous employers or any elected officials. The author makes no recommendations toward any electric utility, regulatory body, or other organization. While certain information contained herein has been obtained from sources believed to be reliable, the author has not independently verified this information, and its accuracy and completeness cannot be guaranteed. Accordingly, no representation or warranty, express or implied, is made as to, and no reliance should be placed on, the fairness, accuracy, timeliness or completeness of this information. The author assumes no liability for this information and no obligation to update the information or analysis contained herein in the future.
My first mistake was failing to understand that approaching women at a run club only works for men who run at least an eight-minute mile.
One of those selections is how you submit RECs for compliance. Yes, it’s the same panel. No, you can’t take RECs out of the compliance pool if you decide to sell them later.
Surprised you haven’t gone full office space yet!