To that end, on a year-to-date basis, total Zeta net revenue retention is within our 110% to 115% target range as we remain on track to generate half of our growth from new customers and half from existing customers. Now let me transition to the expansion opportunities we’re seeing with agencies and how their contribution this quarter is flowing through our metrics and results. Our early experience with agencies has affirmed the effectiveness of our one to many strategy to accelerate market penetration. I’ll outline in steps what we’re learning from those engagements. How those learnings manifest themselves in our results, and what it means to our P&L in the near, mid and longer term. Starting with less than [ph] one, by filling in intelligence and omni-channel engagement gap, we believe we’re providing the agency with a more comprehensive platform for them to win more business.
Less than two, the agency’s success in our platform with a single brand can quickly lead to expansion into more brands. By way of example, the 15 scaled customers we added this quarter resulted in an incremental 45 unique brand. In 3Q most unique brands came from agencies and this should continue. Less than three. Because Zeta has close partnerships with social and search engagement channels, agencies can quickly pivot, already budgeted spend to Zeta as a starting point. The agency can leverage our data cloud and intelligence to build higher ROI campaigns inside the walled garden. This shows up as integrated platform revenue, which due to third party of media has a lower margin profile. This is where we stand today in the very early days of those engagements.
So as we’ve ramped with agency customers, integrated platform revenue has been the first to grow up 63% year-to-date, and 44% in the third quarter. In less than 4, agencies need omni challenge agent strategies beyond just social and search. This is typically the next phase of data’s engagement. And it translates to the use of data’s owned and operated channels such as CTV, display, video messaging and email. These are proven to drive a better ROI and this shows up as direct revenue and as a margin profile in the low to mid-70s. In the third quarter, our direct revenue mix was 70% with our direct revenue growing 17% year-to-year, improving from 15% last quarter. By the way, direct revenue growth is also adversely impacted by the insurance and automotive verticals this quarter.
Growth otherwise would’ve been in the mid-20s. And lastly, agencies are great long-term customers. Their platform evolution from integrated to direct channels can take place over many quarters, resulting in both positive mix shift and increased spend. As an example, Zeta’s first large agency customer in 2020 started at a 7% direct mix and $3 million in revenue growing to 76% direct mix and over $20 million in revenue over a three-year period. And the pipeline of agency customers we’ve signed and expect to sign have the potential to do the same and more. Bringing this back to third quarter’s results, our success in adding new agency business is the driver of integrated platform mix being up and for GAAP cost of revenue of 38.9% being up 110 basis points year-to-year and 280 basis points quarter-to-quarter.
I want to reiterate the margin profile of our direct revenue continues to hold firmly in the low-to-mid-70s. So the change in margin is principally driven by how early we are in the lifecycle with new agency customers. Because we have visibility into the mix and margin dynamics of our agency growth strategy we had plenty of runway to optimize operating expenses without having to compromise new product investment, growing Zeta Live or increase in quota carriers. To this end, total OpEx growth slowed to 11% year-to-year excluding stock-based compensation on a dollars basis, and is down 490 basis points as a percentage of revenue. We’re seeing expense to revenue leverage from two primary drivers, first, savings in G&A, and second, from wrapping on prior years sales and marketing infrastructure investments.
On a combined-basis these two drivers accounted for 420 basis points of the overall 490 basis point reduction year-to-year in operating expense to revenue efficiency. As we sit here today, our quota carrier headcount is at 132, and we anticipate ending the year in the high 130s to low 140s roughly in line with our updated Zeta 2025 model. Our disciplined expense management and better productivity resulted in an acceleration of our adjusted EBITDA growth to 51% year-to-year or $34 million, compared to 45% growth last quarter. In fact, adjusted EBITDA margin of 17.9% increased 310 basis points year-to-year; this is the 11th straight quarter in which we’ve expanded adjusted EBITDA margins year-over-year. On a GAAP basis, third quarter net loss was $43 million, which includes $58 million of stock-based compensation.
Excluding the accelerating expensing related to our IPO, stock-based compensation would have been $25 million. We continue to drive strong cash generation. Cash flow from operating activities was $23 million, up 17% year-to-year with free cash flow of $13 million, up 43% year-to-year. Now, let me transition from the results to our outlook. The big picture first. We’re fully flowing through our third quarter revenue and adjusted EBITDA beats and raising the fourth quarter as seen on Slide 13 in our earnings supplemental presentation. Speaking first to revenue, we’re increasing the midpoint of full-year revenue guidance by $10 million to $725 million representing 23% growth. And we’re taking fourth quarter guidance up $500,000 at the midpoint to $207 million or 18% year-to-year growth.
As a reminder, our fourth quarter revenue growth rate includes a 3 point headwind from last year’s political revenue and faces continued pressure from automotive and insurance verticals. As we look around the corner to 2024, we expect these industries to become tailwinds, with the insurance and automotive headwinds likely persisting into the first quarter and then turning positive in 2Q with political being most prevalent in the second half of 2004. Also relevant to revenue, we expect 4Q direct mix to look a lot like the third quarter, with a similar cost of revenue profile as well. In terms of adjusted EBITDA, we’re increasing the midpoint of full year guidance by $2.1 million to $126.6 million, an increase of 37% year-to-year or 17.5% margin, up 190 basis points year-to-year.
The fourth quarter adjusted EBITDA midpoint of guidance is $42 million, an increase of 29% year-to-year or 20.3% margin, up 180 basis points year-to-year. Before turning to Q&A, let me quickly close with a couple of final thoughts. We’re growing revenue rapidly even in the face of industry specific headwinds with over 90% of the portfolio growing in the mid-30-plus year-to-year. We’re growing customers rapidly. The 15 scaled customers added this quarter resulted in 3 times as many unique brands added evidence of the very early days of scaling of our new agency customers. And we’re rapidly expanding adjusted EBITDA and free cash flow. We’re striking a balance of expanding adjusted EBITDA margins, while managing for agency customer mix and gross margin dynamics with disciplined expense management and investment prioritization.
Now let me hand the call back to the operator for David and me to take your questions. Operator?
Q – Jason Kreyer: Perfect. Thank you, guys. Chris, I just wanted to clarify a little bit more detail on gross margins. You indicated ZMP mix for Q4 would be pretty similar to Q3. Look, I know it’s too early to give a guide for 2024, but I’m just curious what that progression looks like. Do you think next year looks more like the second half of the year? Do you think it looks more like the first half of the year? Or do we just start to kind of see a progression in between those two figures?
Chris Greiner: Hey, Jason, thanks for the question. I appreciate it. I don’t want to get too far into 2024 yet, but I think you can draw a trend-line for we’re in the early days with a lot of these agencies. I do believe that as we work across 2024 that mix will then begin to become, there’ll still be an integrated component, but there’ll be more and more direct mix over time. So I think you said it well that the first half of 2024 could look more similar to the second half of 2023. And then improving in the second half of 2024 as that direct mix and those agency relationships get bigger and a positive mix shift happens.
Jason Kreyer: Appreciate the detail. And then, David, we’ve talked for a few quarters on bigger deal sizes. Obviously, we’re seeing that happen in the ARPU growth figures. Can you just dissect that in terms of what you’re seeing from customers today? Just new channels that are being added, new use cases or any changes that you’re noticing that are driving that bigger ARPU growth and bigger deal size?