Skip to content

Mid-Year Financial Update

July 23, 2026

With the first half of the year closed, it’s time for a proper mid-year review.

Through June, we’ve brought in $1.7M in revenue - more than we earned in all of 2025, with six months still left in the year. We also beat our Q2 revenue target and have been profitable every month for six months straight.

The one thing we continue to watch is revenue concentration. A large share of our revenue comes from a small number of customers. We’re managing it well, but it’s important that everyone understands the risk.

Yes - and we’re ahead of our budget

  • We beat our Q2 revenue target: $949.7K actual vs. a $905.2K budget (+4.9%)
  • Our full-year outlook is up too: we’ve reforecast ~$1.87M additional revenue ($5.53M vs. $3.66M), driven mainly by a restructured NYCA contract and stronger performance on transaction fees. Partially offsetting the reforecast revenue is churn from Tower Road (~$10K) and contraction from First Service Energy ($7K anticipated vs. $36K).

A nuance worth knowing: while the full-year outlook is much stronger than planned, our first-half actuals are tracking about 10% behind the pace needed to hit the full-year re-forecast number. This is a timing issue tied to when invoices land - expenses are actually under budget. We expect to realize most of the reforecast upside in Q4.

What’s Driving Performance - and the Concentration Risk

Section titled “What’s Driving Performance - and the Concentration Risk”

As of June, 3 programs made up about 74% of revenue: Willdan - NYCA (~37%), HPD - Technical Assistance (~19%) and Willdan - ConEd (~17%). The two programs with Willdan account for over half of our revenue and losing a relationship with either company would have an outsized impact. Revenue concentration remains our biggest structural risk. The flip side is that this program revenue is large, recurring and predictable - which is a big part of what’s enabling our operational efficiency (i.e. steady expenses relative to revenue, no need to draw on reserves, more room to plan ahead).

Collecting What We’re Owed (Accounts Receivable)

Section titled “Collecting What We’re Owed (Accounts Receivable)”

We’re on target, and expect to stay there. Our goal is to collect 85–90% of invoiced amounts in a given month, in cash. Monthly collection rates fluctuate (82% Jan v. 117% Feb v. 71% Apr v. 121% May v. 212% June) because they include catch-up on older invoices, not just current billing - that’s why some months look like we collected more than 100%. The rolling average of 86%, however, sits in our target range. This improved rate of collection is the result of a consistent follow-up protocol, and we expect to continue this discipline.

We’re not just increasing revenue - we’re managing cash carefully. We:

  • Haven’t had to tap our equity/buffer account - it’s grown every month this year ($208K to $388K) and it has yet to be drawn down.
  • Are better prepared for our historically lean months (July, August and December, based on the last two years) than we’ve been in the past, thanks to the cash build-up and stronger collections.
  • Cash runway buffer (cash on hand / average monthly expenses) improved to 3.67 months, up from 2.4 in May.

A year ago, we were spending cash faster than we brought it in. Today, we generate more cash than we spend, and our cash balance is meaningfully stronger than it was at this point last year.

Metric Mid-2025 Mid-2026 Change
YTD Revenue (accrual) $780K $1.71M +120%
Cash on Hand (June) $735K $931K +27%
YTD Cash Flow (in - out) -$278K
(burning cash)
+$97K
(generating cash)
+$375K
Profitability Not profitable Lightly profitable
6 mo. running
Turned around
Cash Runway Buffer Thin to non-existent 3.67 months Improving
  • Customer concentration — our biggest structural risk. It is still elevated at ~74% of revenue across three programs and two customers.
  • Buffer account (our cash cushion) is below target —$388K saved against a 3-month target of $761K — roughly half. We’re contributing to it but slowly.
  • NYCA’s large restructured invoice (~$2.1M) is doing a lot of work in our full-year numbers. This won’t be collected until October at the earliest and is then recognized over 2+ years - a large portion of our full-year reforecast depends on that invoice being recognized as planned.
  • Smaller accounts (real estate and lender subscriptions) will continue to churn. This is an intentional shift, and a key takeaway from the strategy offsite is to redirect our focus to developing other revenue streams. Watch the offsite recap brownbag and listen to our Productized Services podcast for additional insight.
  • Unique Buildings: 22,263 (Real time, via Admin panel!)
  • Annual Run Rate: $3.5M (+2.1% MoM)

Monthly Metrics

Metric Value Takeaway
Revenue (YTD) $1,714,127 YTD revenue is up 120% YoY and surpassed FY 25 revenue
Transaction fees $58,114 (3.4% of YTD revenue) YTD transaction surpassed FY 25 fees
Annual run rate $3.5M (+2.1% MoM) Slight boost from First Service subscription
Cash $931,244 (+52% MoM) Strong collection in June of current and past invoices
YTD Cash In / Out $2,036,602 in / $1,454,609 out More money in than out = good, cash in +42% YoY
Accounts receivable $27,683 (-92.1% MoM) Strong collection month and catch up on Related invoices
Net burn (monthly, accrual) $62,395 (-63% MoM) Positive - this is profit
Net burn (YTD-to-last-month, cash) $96,999 (+127% MoM) Positive - this is profit

Details:

  • AR Collection is improving with strong collection of outstanding invoices collected in June (212%). Our goal is to collect 85%-90% of outstanding invoices each month and the average of the past three months, is 135%.
  • Net burn Usually, net burn (or profit in our case) is higher on an accrual basis vs. cash basis at this point during the year. However, a strong collection month in June meant we brought in a lot of cash, but only recognized a portion of that on an accrual basis. Also, Net burn accrual was down MoM due to a boost in other income in May.

Current expenses by department

Department Spend Explanation of MoM Change
COGS $21,210 (-14.8% MoM) Decrease MoM represents a return to normal Fly.io expenditure
G&A $58,450 (+5.2% MoM) Increase in accounting fees driven by Graphite’s R&D tax bill
R&D $144,612 (+3.4% MoM) Expected increase in consultanting fees
Sales $22,503 (+3.5% MoM) Small increase in software spend
  • Robin presented a detailed comparison of our Building Data Platform data against existing data sources used at NYSERDA. (FRH)
  • New building lobby/landing page will be released with v2.20.4, ETA 7/28. (FH)

Please note your reaction to this update in the Discord channel. It helps us to know what is resonating, what is unclear, etc. Thanks!

  • What are your highlights / low-lights?
  • Did we miss a highlight? Something else you want to react to?