Repository navigation
Expand file tree
/
Copy pathdata.json
More file actions
1085 lines (1085 loc) · 40.9 KB
/
Copy pathdata.json
File metadata and controls
1085 lines (1085 loc) · 40.9 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
{
"meta": {
"title": "Deal Docket",
"subtitle": "AI-enabled service roll-ups · five-box thesis screen · illustrative pipeline",
"asOf": "July 2026",
"disclaimer": "Every company, financial figure, and deal note below is fictional — built to demonstrate a sourcing/screening framework, not to represent real targets, real data, or any employer's actual pipeline or thesis.",
"sourcesUrl": "https://github.com/bakulbadwal/dealdocket/blob/main/SOURCES.md"
},
"thesis": {
"headline": "Where PE actually fits in the AI stack isn't the labs — it's the fragmented, already-profitable service businesses that can use AI to expand margin on a cash-flow base that already exists.",
"body": "Frontier labs, compute, and most AI-native applications are still venture and strategic-capital territory: pre-cash-flow, capital-intensive, or racing for share at the expense of margin. The roll-up opportunity sits one layer down — in ordinary SMB service businesses (bookkeeping, IT support, medical billing, home services) where AI isn't the product, it's a lever on an existing P&L. This screen sources and ranks targets against that specific thesis."
},
"framework": {
"criteria": [
{
"key": "fragmentation",
"label": "Market Fragmentation",
"short": "Fragmentation",
"description": "How many similar operators exist in the target's geography and niche, and how much of the market is still unconsolidated — the raw runway for a roll-up."
},
{
"key": "unitEconomics",
"label": "Unit Economics",
"short": "Unit Economics",
"description": "EBITDA margin quality, cash conversion, and revenue durability — the underwriting case independent of any AI story."
},
{
"key": "aiLeverage",
"label": "AI-Adoption Leverage",
"short": "AI Leverage",
"description": "How much margin AI can realistically unlock in this specific workflow — the thesis-specific multiplier, not a generic \"add AI\" hand-wave."
},
{
"key": "moat",
"label": "Moat & Stickiness",
"short": "Moat",
"description": "Contract structure, switching costs, and data lock-in that protect the business — and the roll-up — once AI raises the bar for competitors too."
},
{
"key": "exitPath",
"label": "Exit Path",
"short": "Exit Path",
"description": "Whether this is a platform asset that re-rates the whole roll-up, or an accretive bolt-on — and how comparable multiples are trending."
}
]
},
"stages": [
"Sourced",
"Screening",
"IOI",
"LOI",
"Diligence",
"Closed",
"Passed"
],
"channels": [
"Broker",
"Direct Outreach",
"Marketplace",
"Referral",
"Inbound"
],
"verticals": [
"IT Managed Services",
"Bookkeeping & Accounting",
"Marketing & Creative Agencies",
"Home Services",
"Staffing & Recruiting",
"Legal Back-Office",
"Medical Billing / RCM",
"Logistics & Dispatch",
"Customer Support / BPO",
"Property Management"
],
"deals": [
{
"id": "d01",
"name": "Cascade IT Partners",
"vertical": "IT Managed Services",
"location": "Denver, CO",
"stage": "Diligence",
"channel": "Broker",
"sourcedDate": "2026-02-03",
"scores": {
"fragmentation": 4,
"unitEconomics": 4,
"aiLeverage": 5,
"moat": 3,
"exitPath": 4
},
"rationale": {
"fragmentation": "Regional MSP market with 40+ sub-scale competitors under $10M revenue — wide consolidation runway.",
"unitEconomics": "21% EBITDA margin with 92% recurring-contract revenue.",
"aiLeverage": "Tier-1 ticket triage and patch-management scripting are largely automatable — material headcount leverage.",
"moat": "Multi-year MSAs but low switching costs once a contract lapses.",
"exitPath": "Strong platform candidate — anchor asset for a regional MSP roll-up."
},
"thesisNote": "Lead candidate for the platform slot; diligence focused on customer concentration (top 5 = 38% of revenue).",
"revenueUsd": 6100000,
"ebitdaUsd": 1300000,
"entryMultiple": 4.27,
"askPriceUsd": 5550000,
"employees": 34,
"recurringPct": 87
},
{
"id": "d02",
"name": "Northgate Networks",
"vertical": "IT Managed Services",
"location": "Columbus, OH",
"stage": "Screening",
"channel": "Marketplace",
"sourcedDate": "2026-04-11",
"scores": {
"fragmentation": 4,
"unitEconomics": 2,
"aiLeverage": 4,
"moat": 2,
"exitPath": 3
},
"rationale": {
"fragmentation": "Same fragmented metro market as most sub-$5M MSPs.",
"unitEconomics": "Margin thin for the vertical — largely project (non-recurring) revenue mix.",
"aiLeverage": "Would benefit from automation, but the owner has resisted tooling changes historically.",
"moat": "Month-to-month contracts, no lock-in.",
"exitPath": "Bolt-on at best; not platform-grade on its own."
},
"thesisNote": "Only proceed as a bolt-on under an existing platform, not standalone.",
"revenueUsd": 2800000,
"ebitdaUsd": 410000,
"entryMultiple": 3.45,
"askPriceUsd": 1400000,
"employees": 16,
"recurringPct": 81
},
{
"id": "d03",
"name": "Anchor Point IT",
"vertical": "IT Managed Services",
"location": "Tampa, FL",
"stage": "Passed",
"channel": "Direct Outreach",
"sourcedDate": "2026-01-22",
"scores": {
"fragmentation": 3,
"unitEconomics": 1,
"aiLeverage": 3,
"moat": 1,
"exitPath": 2
},
"rationale": {
"fragmentation": "Fragmented market, but too small to move the needle alone.",
"unitEconomics": "Sub-8% margin and one customer at 61% of revenue.",
"aiLeverage": "Some ticket-automation upside, but not enough to fix the underlying margin problem.",
"moat": "No contracts — pure handshake relationships.",
"exitPath": "No credible path to platform or attractive bolt-on economics."
},
"thesisNote": "Passed — customer concentration and margin both fail the screen independent of AI story.",
"revenueUsd": 1900000,
"ebitdaUsd": 150000,
"entryMultiple": 3.1,
"askPriceUsd": 450000,
"employees": 11,
"recurringPct": 78
},
{
"id": "d04",
"name": "Ridgeline Bookkeeping Partners",
"vertical": "Bookkeeping & Accounting",
"location": "Boise, ID",
"stage": "LOI",
"channel": "Broker",
"sourcedDate": "2025-11-14",
"scores": {
"fragmentation": 5,
"unitEconomics": 5,
"aiLeverage": 5,
"moat": 3,
"exitPath": 5
},
"rationale": {
"fragmentation": "Bookkeeping is one of the most fragmented SMB service categories in the country.",
"unitEconomics": "27% margin, 96% recurring monthly retainers, near-zero bad debt.",
"aiLeverage": "Reconciliation and month-end close are highly automatable — the clearest AI-leverage case in the pipeline.",
"moat": "Retainer relationships are sticky in practice, though contractually thin.",
"exitPath": "Best platform candidate sourced to date — category leader multiple on exit."
},
"thesisNote": "Top-ranked deal in the pipeline. LOI signed; targeting close in Q4.",
"revenueUsd": 3400000,
"ebitdaUsd": 910000,
"entryMultiple": 4.32,
"askPriceUsd": 3950000,
"employees": 31,
"recurringPct": 94
},
{
"id": "d05",
"name": "Harborview Accounting Group",
"vertical": "Bookkeeping & Accounting",
"location": "Providence, RI",
"stage": "Sourced",
"channel": "Referral",
"sourcedDate": "2026-05-02",
"scores": {
"fragmentation": 4,
"unitEconomics": 4,
"aiLeverage": 4,
"moat": 3,
"exitPath": 3
},
"rationale": {
"fragmentation": "Dense regional market, similar dynamics to Ridgeline.",
"unitEconomics": "Healthy margin, slightly smaller scale.",
"aiLeverage": "Same close/reconciliation automation upside as the vertical broadly.",
"moat": "Long-tenured client base, informal but sticky.",
"exitPath": "Solid bolt-on under a bookkeeping platform."
},
"thesisNote": "Natural bolt-on once Ridgeline closes — same vertical, adjacent geography.",
"revenueUsd": 2100000,
"ebitdaUsd": 480000,
"entryMultiple": 3.7,
"askPriceUsd": 1800000,
"employees": 19,
"recurringPct": 91
},
{
"id": "d06",
"name": "Fieldstone CPA Services",
"vertical": "Bookkeeping & Accounting",
"location": "Wichita, KS",
"stage": "IOI",
"channel": "Broker",
"sourcedDate": "2026-03-19",
"scores": {
"fragmentation": 4,
"unitEconomics": 4,
"aiLeverage": 3,
"moat": 4,
"exitPath": 4
},
"rationale": {
"fragmentation": "Large fragmented Midwest market.",
"unitEconomics": "Strong margin at meaningful scale.",
"aiLeverage": "Heavier tax-compliance mix than pure bookkeeping — less automatable than reconciliation work.",
"moat": "Engagement letters renew annually with high retention.",
"exitPath": "Credible second platform if Ridgeline's geography doesn't extend this far."
},
"thesisNote": "IOI sent; evaluating as a second regional platform vs. bolt-on.",
"revenueUsd": 5000000,
"ebitdaUsd": 1050000,
"entryMultiple": 4.38,
"askPriceUsd": 4600000,
"employees": 45,
"recurringPct": 91
},
{
"id": "d07",
"name": "Lumen Creative Group",
"vertical": "Marketing & Creative Agencies",
"location": "Austin, TX",
"stage": "Screening",
"channel": "Inbound",
"sourcedDate": "2026-04-28",
"scores": {
"fragmentation": 3,
"unitEconomics": 3,
"aiLeverage": 3,
"moat": 2,
"exitPath": 2
},
"rationale": {
"fragmentation": "Agencies are fragmented, but differentiation is mostly reputational, not structural.",
"unitEconomics": "Mid-teens margin, typical for the category.",
"aiLeverage": "Generative tooling cuts production time, but also compresses the billable-hour model that funds the margin.",
"moat": "Relationship-driven, minimal contractual lock-in.",
"exitPath": "Key-person risk caps multiple; agency roll-ups have a mixed track record."
},
"thesisNote": "Watching, not pursuing — AI is double-edged here, not a clean lever.",
"revenueUsd": 4600000,
"ebitdaUsd": 690000,
"entryMultiple": 3.35,
"askPriceUsd": 2300000,
"employees": 33,
"recurringPct": 38
},
{
"id": "d08",
"name": "Brightline Digital",
"vertical": "Marketing & Creative Agencies",
"location": "Raleigh, NC",
"stage": "Passed",
"channel": "Marketplace",
"sourcedDate": "2026-02-17",
"scores": {
"fragmentation": 3,
"unitEconomics": 1,
"aiLeverage": 2,
"moat": 1,
"exitPath": 1
},
"rationale": {
"fragmentation": "Same fragmented agency landscape.",
"unitEconomics": "Sub-7% margin, founder-dependent pricing.",
"aiLeverage": "AI is more threat than lever — clients increasingly do this in-house with the same tools.",
"moat": "No contracts, monthly churn.",
"exitPath": "No platform or bolt-on case at this size and margin."
},
"thesisNote": "Passed — textbook example of AI eroding the exact service being sold.",
"revenueUsd": 1200000,
"ebitdaUsd": 80000,
"entryMultiple": 3.1,
"askPriceUsd": 250000,
"employees": 9,
"recurringPct": 32
},
{
"id": "d09",
"name": "Foundry Brand Partners",
"vertical": "Marketing & Creative Agencies",
"location": "Minneapolis, MN",
"stage": "Sourced",
"channel": "Direct Outreach",
"sourcedDate": "2026-05-20",
"scores": {
"fragmentation": 3,
"unitEconomics": 3,
"aiLeverage": 3,
"moat": 2,
"exitPath": 3
},
"rationale": {
"fragmentation": "Fragmented, mid-size regional player.",
"unitEconomics": "Above-average margin for an agency.",
"aiLeverage": "Some production-cost savings, unproven at scale.",
"moat": "A few multi-year retainer clients provide partial stability.",
"exitPath": "Only a bolt-on candidate, and a marginal one."
},
"thesisNote": "Low priority — sourced opportunistically, not pursuing actively.",
"revenueUsd": 3000000,
"ebitdaUsd": 510000,
"entryMultiple": 3.49,
"askPriceUsd": 1800000,
"employees": 21,
"recurringPct": 38
},
{
"id": "d10",
"name": "Summit Home Services",
"vertical": "Home Services",
"location": "Salt Lake City, UT",
"stage": "Diligence",
"channel": "Broker",
"sourcedDate": "2026-01-09",
"scores": {
"fragmentation": 5,
"unitEconomics": 4,
"aiLeverage": 3,
"moat": 4,
"exitPath": 5
},
"rationale": {
"fragmentation": "HVAC/plumbing is the archetypal fragmented roll-up category — thousands of owner-operators nationally.",
"unitEconomics": "20% margin with strong recurring maintenance-contract revenue.",
"aiLeverage": "Dispatch routing and scheduling automation help, but the core service is still a truck and a technician.",
"moat": "Long-tenured maintenance contracts and strong local brand density.",
"exitPath": "Textbook home-services platform — well-precedented roll-up category with reliable multiple expansion."
},
"thesisNote": "Second platform slot; diligence nearly complete, financing being finalized.",
"revenueUsd": 8200000,
"ebitdaUsd": 1640000,
"entryMultiple": 4.85,
"askPriceUsd": 7950000,
"employees": 63,
"recurringPct": 33
},
{
"id": "d11",
"name": "GreenAcre Landscaping",
"vertical": "Home Services",
"location": "Charlotte, NC",
"stage": "Screening",
"channel": "Referral",
"sourcedDate": "2026-04-06",
"scores": {
"fragmentation": 4,
"unitEconomics": 3,
"aiLeverage": 3,
"moat": 3,
"exitPath": 3
},
"rationale": {
"fragmentation": "Highly fragmented, seasonal category.",
"unitEconomics": "Margin depressed by seasonality and equipment capex.",
"aiLeverage": "Route optimization is the main lever — moderate, not transformative.",
"moat": "Recurring seasonal contracts provide some stickiness.",
"exitPath": "Reasonable bolt-on under Summit's platform if geographies align."
},
"thesisNote": "Evaluating as a bolt-on to Summit rather than standalone.",
"revenueUsd": 3100000,
"ebitdaUsd": 520000,
"entryMultiple": 3.72,
"askPriceUsd": 1950000,
"employees": 24,
"recurringPct": 30
},
{
"id": "d12",
"name": "BluePeak Plumbing & Air",
"vertical": "Home Services",
"location": "Sacramento, CA",
"stage": "Closed",
"channel": "Broker",
"sourcedDate": "2025-08-30",
"scores": {
"fragmentation": 4,
"unitEconomics": 4,
"aiLeverage": 4,
"moat": 4,
"exitPath": 4
},
"rationale": {
"fragmentation": "Fragmented West Coast metro market.",
"unitEconomics": "Consistent 20% margin over three years of financials.",
"aiLeverage": "AI-assisted dispatch and inventory forecasting rolled out post-close.",
"moat": "Membership-style maintenance plans drive repeat revenue.",
"exitPath": "First platform closed in the vertical — now the integration template for future bolt-ons."
},
"thesisNote": "Closed. Now the reference case for underwriting future home-services deals.",
"revenueUsd": 5500000,
"ebitdaUsd": 1100000,
"entryMultiple": 4.4,
"askPriceUsd": 4850000,
"employees": 42,
"recurringPct": 33
},
{
"id": "d13",
"name": "Vantage Staffing Solutions",
"vertical": "Staffing & Recruiting",
"location": "Indianapolis, IN",
"stage": "Sourced",
"channel": "Marketplace",
"sourcedDate": "2026-05-11",
"scores": {
"fragmentation": 3,
"unitEconomics": 2,
"aiLeverage": 4,
"moat": 2,
"exitPath": 2
},
"rationale": {
"fragmentation": "Fragmented, but large national players compete aggressively on price.",
"unitEconomics": "Thin staffing-industry margin, revenue-quality concerns from a few large accounts.",
"aiLeverage": "AI-driven candidate matching and screening is a real efficiency lever here.",
"moat": "Client contracts renew annually but are frequently rebid.",
"exitPath": "Margin has to improve materially before this is more than a watch-list name."
},
"thesisNote": "Interesting AI-leverage story, but underwriting doesn't clear on margin yet.",
"revenueUsd": 9500000,
"ebitdaUsd": 950000,
"entryMultiple": 3.46,
"askPriceUsd": 3300000,
"employees": 48,
"recurringPct": 39
},
{
"id": "d14",
"name": "Crosswinds Recruiting",
"vertical": "Staffing & Recruiting",
"location": "Kansas City, MO",
"stage": "IOI",
"channel": "Broker",
"sourcedDate": "2026-03-25",
"scores": {
"fragmentation": 3,
"unitEconomics": 3,
"aiLeverage": 4,
"moat": 2,
"exitPath": 3
},
"rationale": {
"fragmentation": "Fragmented specialty-recruiting niche.",
"unitEconomics": "Above-average margin for staffing given a specialty focus.",
"aiLeverage": "Resume screening and pipeline scoring automation already partly implemented.",
"moat": "Specialty expertise provides some differentiation, but relationships still walk out the door with recruiters.",
"exitPath": "Reasonable bolt-on candidate; not platform-scale alone."
},
"thesisNote": "IOI sent; likely bolt-on rather than a standalone platform.",
"revenueUsd": 4400000,
"ebitdaUsd": 660000,
"entryMultiple": 3.56,
"askPriceUsd": 2350000,
"employees": 22,
"recurringPct": 42
},
{
"id": "d15",
"name": "Pinnacle Workforce Group",
"vertical": "Staffing & Recruiting",
"location": "Memphis, TN",
"stage": "Passed",
"channel": "Direct Outreach",
"sourcedDate": "2026-02-08",
"scores": {
"fragmentation": 2,
"unitEconomics": 1,
"aiLeverage": 3,
"moat": 1,
"exitPath": 1
},
"rationale": {
"fragmentation": "Commoditized light-industrial staffing, dominated by a few large regional players.",
"unitEconomics": "Sub-industry-average margin with high customer turnover.",
"aiLeverage": "Some scheduling automation upside, insufficient to offset structural margin pressure.",
"moat": "No differentiation versus larger competitors.",
"exitPath": "No credible platform or bolt-on economics."
},
"thesisNote": "Passed — commoditized segment, scale favors incumbents.",
"revenueUsd": 2000000,
"ebitdaUsd": 120000,
"entryMultiple": 3.1,
"askPriceUsd": 350000,
"employees": 10,
"recurringPct": 36
},
{
"id": "d16",
"name": "Meridian Legal Support",
"vertical": "Legal Back-Office",
"location": "Cleveland, OH",
"stage": "LOI",
"channel": "Referral",
"sourcedDate": "2025-12-01",
"scores": {
"fragmentation": 4,
"unitEconomics": 5,
"aiLeverage": 5,
"moat": 4,
"exitPath": 4
},
"rationale": {
"fragmentation": "Regional legal-support services remain highly fragmented outside the national e-discovery giants.",
"unitEconomics": "25% margin with multi-year law-firm contracts.",
"aiLeverage": "Document review and first-pass drafting are directly automatable — among the strongest AI-leverage cases sourced.",
"moat": "Law-firm switching costs are high once workflows are integrated.",
"exitPath": "Strong platform candidate for a legal-support roll-up."
},
"thesisNote": "LOI signed; the clearest AI-leverage-meets-moat combination in the pipeline.",
"revenueUsd": 3800000,
"ebitdaUsd": 950000,
"entryMultiple": 4.34,
"askPriceUsd": 4100000,
"employees": 40,
"recurringPct": 78
},
{
"id": "d17",
"name": "Sterling Paralegal Partners",
"vertical": "Legal Back-Office",
"location": "Richmond, VA",
"stage": "Sourced",
"channel": "Broker",
"sourcedDate": "2026-04-30",
"scores": {
"fragmentation": 4,
"unitEconomics": 4,
"aiLeverage": 4,
"moat": 3,
"exitPath": 3
},
"rationale": {
"fragmentation": "Similar fragmentation profile to Meridian, smaller scale.",
"unitEconomics": "Strong margin, slightly less diversified client base.",
"aiLeverage": "Same document-automation upside as the vertical broadly.",
"moat": "Decent retention, less entrenched than Meridian's workflows.",
"exitPath": "Natural bolt-on under Meridian if the LOI closes."
},
"thesisNote": "Queued as the first bolt-on candidate once Meridian closes.",
"revenueUsd": 2400000,
"ebitdaUsd": 530000,
"entryMultiple": 3.72,
"askPriceUsd": 1950000,
"employees": 25,
"recurringPct": 75
},
{
"id": "d18",
"name": "Barrister Support Services",
"vertical": "Legal Back-Office",
"location": "Albany, NY",
"stage": "Screening",
"channel": "Marketplace",
"sourcedDate": "2026-05-15",
"scores": {
"fragmentation": 3,
"unitEconomics": 3,
"aiLeverage": 3,
"moat": 2,
"exitPath": 2
},
"rationale": {
"fragmentation": "Small, fragmented local market.",
"unitEconomics": "Below-average margin for the vertical.",
"aiLeverage": "Automation upside exists but is unproven at this scale.",
"moat": "Short-term engagements, limited lock-in.",
"exitPath": "Too small to be more than an opportunistic tuck-in."
},
"thesisNote": "Low priority; screening only if valuation is unusually favorable.",
"revenueUsd": 1600000,
"ebitdaUsd": 260000,
"entryMultiple": 3.17,
"askPriceUsd": 800000,
"employees": 17,
"recurringPct": 72
},
{
"id": "d19",
"name": "Claritas Medical Billing",
"vertical": "Medical Billing / RCM",
"location": "Nashville, TN",
"stage": "Diligence",
"channel": "Broker",
"sourcedDate": "2026-01-27",
"scores": {
"fragmentation": 4,
"unitEconomics": 5,
"aiLeverage": 5,
"moat": 4,
"exitPath": 5
},
"rationale": {
"fragmentation": "RCM remains fragmented below the large national platforms.",
"unitEconomics": "23.5% margin with highly recurring, contracted revenue tied to claims volume.",
"aiLeverage": "Claims-scrubbing and denial-management automation directly reduce headcount cost per claim.",
"moat": "EHR integrations create real switching costs once embedded.",
"exitPath": "Strongest platform candidate in the entire pipeline on a blended basis."
},
"thesisNote": "Highest composite score sourced to date; diligence prioritized accordingly.",
"revenueUsd": 6800000,
"ebitdaUsd": 1600000,
"entryMultiple": 4.83,
"askPriceUsd": 7750000,
"employees": 65,
"recurringPct": 92
},
{
"id": "d20",
"name": "Riverbend RCM Partners",
"vertical": "Medical Billing / RCM",
"location": "Louisville, KY",
"stage": "IOI",
"channel": "Referral",
"sourcedDate": "2026-03-02",
"scores": {
"fragmentation": 4,
"unitEconomics": 4,
"aiLeverage": 4,
"moat": 3,
"exitPath": 4
},
"rationale": {
"fragmentation": "Same fragmented regional RCM dynamic.",
"unitEconomics": "Strong, slightly smaller-scale margin profile.",
"aiLeverage": "Comparable automation upside to Claritas.",
"moat": "Fewer EHR integrations than Claritas — somewhat less locked in.",
"exitPath": "Credible bolt-on, or a second platform in a non-overlapping region."
},
"thesisNote": "IOI sent; evaluating alongside Claritas for geographic overlap.",
"revenueUsd": 4100000,
"ebitdaUsd": 860000,
"entryMultiple": 4.08,
"askPriceUsd": 3500000,
"employees": 39,
"recurringPct": 89
},
{
"id": "d21",
"name": "Coastal Health Billing",
"vertical": "Medical Billing / RCM",
"location": "Jacksonville, FL",
"stage": "Sourced",
"channel": "Direct Outreach",
"sourcedDate": "2026-05-28",
"scores": {
"fragmentation": 3,
"unitEconomics": 3,
"aiLeverage": 4,
"moat": 2,
"exitPath": 3
},
"rationale": {
"fragmentation": "Smaller regional player in a fragmented category.",
"unitEconomics": "Below Claritas/Riverbend on margin.",
"aiLeverage": "Same automation levers apply, less mature back office to build on.",
"moat": "Limited EHR integration depth so far.",
"exitPath": "Plausible bolt-on once a platform closes in-region."
},
"thesisNote": "Early-stage; revisit once Claritas or Riverbend closes.",
"revenueUsd": 2500000,
"ebitdaUsd": 400000,
"entryMultiple": 3.45,
"askPriceUsd": 1400000,
"employees": 24,
"recurringPct": 86
},
{
"id": "d22",
"name": "Ironhide Freight Dispatch",
"vertical": "Logistics & Dispatch",
"location": "Fort Worth, TX",
"stage": "Screening",
"channel": "Marketplace",
"sourcedDate": "2026-04-14",
"scores": {
"fragmentation": 3,
"unitEconomics": 2,
"aiLeverage": 4,
"moat": 2,
"exitPath": 2
},
"rationale": {
"fragmentation": "Regional dispatch/brokerage market, moderately fragmented.",
"unitEconomics": "Thin freight-brokerage margin, rate-cycle sensitive.",
"aiLeverage": "Load-matching and routing automation is a genuine lever.",
"moat": "Carrier and shipper relationships have limited lock-in.",
"exitPath": "Cyclicality makes this a difficult standalone underwrite."
},
"thesisNote": "AI story is real but margin cyclicality is the bigger risk factor.",
"revenueUsd": 7000000,
"ebitdaUsd": 840000,
"entryMultiple": 3.41,
"askPriceUsd": 2850000,
"employees": 44,
"recurringPct": 55
},
{
"id": "d23",
"name": "Lakeshore Last-Mile",
"vertical": "Logistics & Dispatch",
"location": "Milwaukee, WI",
"stage": "Sourced",
"channel": "Broker",
"sourcedDate": "2026-05-06",
"scores": {
"fragmentation": 3,
"unitEconomics": 2,
"aiLeverage": 4,
"moat": 2,
"exitPath": 3
},
"rationale": {
"fragmentation": "Fragmented last-mile subcontractor market.",
"unitEconomics": "Similar thin-margin profile to Ironhide.",
"aiLeverage": "Route optimization directly cuts fuel and labor cost per stop.",
"moat": "Contracts renew annually with a handful of retail clients.",
"exitPath": "Only interesting as a bolt-on if a logistics platform materializes."
},
"thesisNote": "Parked — not pursuing without a platform anchor first.",
"revenueUsd": 5200000,
"ebitdaUsd": 620000,
"entryMultiple": 3.54,
"askPriceUsd": 2200000,
"employees": 32,
"recurringPct": 55
},
{
"id": "d24",
"name": "Redline Logistics Co.",
"vertical": "Logistics & Dispatch",
"location": "Oklahoma City, OK",
"stage": "Passed",
"channel": "Inbound",
"sourcedDate": "2026-02-25",
"scores": {
"fragmentation": 2,
"unitEconomics": 1,
"aiLeverage": 3,
"moat": 1,
"exitPath": 1
},
"rationale": {
"fragmentation": "Small local player, limited consolidation impact alone.",
"unitEconomics": "One customer is 74% of revenue at a 5% margin.",
"aiLeverage": "Automation can't fix a single-customer concentration problem.",
"moat": "No contract with the anchor customer — pure key-relationship risk.",
"exitPath": "No viable path given concentration risk."
},
"thesisNote": "Passed — concentration risk disqualifies regardless of AI story.",
"revenueUsd": 1800000,
"ebitdaUsd": 90000,
"entryMultiple": 3.1,
"askPriceUsd": 300000,
"employees": 11,
"recurringPct": 52
},
{
"id": "d25",
"name": "Northstar Support Partners",
"vertical": "Customer Support / BPO",
"location": "Spokane, WA",
"stage": "LOI",
"channel": "Broker",
"sourcedDate": "2025-10-19",
"scores": {
"fragmentation": 3,
"unitEconomics": 3,
"aiLeverage": 5,
"moat": 3,
"exitPath": 4
},
"rationale": {
"fragmentation": "Mid-market BPO space has room below the handful of national giants.",
"unitEconomics": "Solid margin for the category, though seat-based pricing caps upside.",
"aiLeverage": "AI-agent deflection of tier-1 contact volume is the entire investment thesis for this deal.",
"moat": "Multi-year contracts with enterprise clients provide real stickiness.",
"exitPath": "Platform-caliber if the AI-deflection roadmap executes as modeled."
},
"thesisNote": "LOI signed; value creation plan is built entirely around the AI-deflection roadmap.",
"revenueUsd": 10200000,
"ebitdaUsd": 1530000,
"entryMultiple": 4.36,
"askPriceUsd": 6650000,
"employees": 146,
"recurringPct": 80
},
{
"id": "d26",
"name": "Beacon BPO Group",
"vertical": "Customer Support / BPO",
"location": "Tucson, AZ",
"stage": "Sourced",
"channel": "Marketplace",
"sourcedDate": "2026-05-09",
"scores": {
"fragmentation": 3,
"unitEconomics": 2,
"aiLeverage": 5,
"moat": 2,
"exitPath": 3
},
"rationale": {
"fragmentation": "Similar fragmented mid-market BPO dynamic to Northstar.",
"unitEconomics": "Lower margin than Northstar, more seasonal client mix.",
"aiLeverage": "Same deflection thesis applies, less mature contact-center tooling to build on.",
"moat": "Shorter contract terms than Northstar.",
"exitPath": "Reasonable bolt-on once Northstar's playbook is proven."
},
"thesisNote": "Hold until Northstar's AI-deflection roadmap shows results.",
"revenueUsd": 6500000,
"ebitdaUsd": 780000,
"entryMultiple": 3.61,
"askPriceUsd": 2800000,
"employees": 93,
"recurringPct": 77
},
{
"id": "d27",
"name": "Clearline Contact Solutions",
"vertical": "Customer Support / BPO",
"location": "El Paso, TX",
"stage": "Screening",
"channel": "Direct Outreach",
"sourcedDate": "2026-04-22",
"scores": {
"fragmentation": 3,
"unitEconomics": 2,
"aiLeverage": 4,
"moat": 2,
"exitPath": 2
},
"rationale": {
"fragmentation": "Smaller regional BPO, fragmented category.",
"unitEconomics": "Below-average margin even for the category.",
"aiLeverage": "Deflection upside exists but client contracts restrict tooling changes.",
"moat": "Weak lock-in, frequent client rebids.",
"exitPath": "Not platform-grade; marginal bolt-on at best."
},
"thesisNote": "Low priority; contractual restrictions blunt the AI-leverage case.",
"revenueUsd": 3900000,
"ebitdaUsd": 430000,
"entryMultiple": 3.24,
"askPriceUsd": 1400000,
"employees": 56,
"recurringPct": 77
},
{
"id": "d28",
"name": "Willowbrook Property Group",
"vertical": "Property Management",
"location": "Des Moines, IA",
"stage": "Sourced",
"channel": "Referral",
"sourcedDate": "2026-05-24",
"scores": {
"fragmentation": 4,
"unitEconomics": 4,
"aiLeverage": 3,
"moat": 4,
"exitPath": 3
},
"rationale": {
"fragmentation": "Fragmented regional property-management market.",
"unitEconomics": "Strong margin with recurring management-fee revenue.",
"aiLeverage": "Tenant-communication and maintenance-dispatch automation help, but leasing still requires local presence.",
"moat": "Multi-year management agreements with owners are hard to dislodge.",
"exitPath": "Reasonable platform candidate, though less AI-differentiated than the top names in the pipeline."
},
"thesisNote": "Solid fundamentals; AI story is more incremental than transformative here.",
"revenueUsd": 4800000,
"ebitdaUsd": 960000,
"entryMultiple": 4.12,
"askPriceUsd": 3950000,
"employees": 40,
"recurringPct": 93
},
{
"id": "d29",
"name": "Cornerstone Property Partners",
"vertical": "Property Management",
"location": "Omaha, NE",
"stage": "Screening",
"channel": "Broker",
"sourcedDate": "2026-04-17",
"scores": {
"fragmentation": 4,
"unitEconomics": 3,
"aiLeverage": 3,
"moat": 3,
"exitPath": 3
},
"rationale": {
"fragmentation": "Same fragmented category as Willowbrook, adjacent geography.",
"unitEconomics": "Slightly thinner margin, smaller portfolio.",
"aiLeverage": "Comparable automation profile to Willowbrook.",
"moat": "Decent owner-contract retention.",
"exitPath": "Natural bolt-on if Willowbrook or Highland closes first."
},
"thesisNote": "Queued as a bolt-on candidate pending a platform close in the vertical.",
"revenueUsd": 3200000,
"ebitdaUsd": 580000,
"entryMultiple": 3.74,
"askPriceUsd": 2150000,
"employees": 27,
"recurringPct": 90
},
{
"id": "d30",
"name": "Highland Residential Management",
"vertical": "Property Management",
"location": "Boise, ID",
"stage": "Closed",
"channel": "Broker",
"sourcedDate": "2025-09-12",
"scores": {
"fragmentation": 4,
"unitEconomics": 4,
"aiLeverage": 4,
"moat": 4,
"exitPath": 4
},
"rationale": {
"fragmentation": "Fragmented mountain-west property-management market.",
"unitEconomics": "Strongest margin sourced in the vertical.",
"aiLeverage": "AI-assisted leasing inquiries and maintenance triage implemented post-close.",
"moat": "High owner-retention rate pre-close, improved further with integrated tooling.",
"exitPath": "Second platform closed — anchor for future property-management bolt-ons."
},
"thesisNote": "Closed. Reference case alongside BluePeak for underwriting future deals.",
"revenueUsd": 6000000,
"ebitdaUsd": 1320000,
"entryMultiple": 4.49,
"askPriceUsd": 5950000,
"employees": 50,
"recurringPct": 93
}
],
"verticalContext": {
"IT Managed Services": {
"automatableCostShare": 20,
"automatableNote": "Tier-1 ticket triage, patch management, monitoring escalation.",
"basis": "sourced",
"source": "Census Service Annual Survey 2022 (payroll ÷ revenue, NAICS 5415) × share of that payroll in LLM-exposed tasks (Eloundou et al., Science 2024, weighted by BLS OEWS May 2025 staffing for NAICS 5415). See SOURCES.md.",
"asOf": "2022 payroll and revenue; May 2025 staffing",
"derivation": {
"naicsProxy": "5415 Computer Systems Design and Related Services",
"payrollShareOfRevenuePct": 40.2,
"exposedShareOfPayrollPct": 50.5,
"result": "40.2% × 50.5% = 20.3% → 20",
"priorEstimate": 18
}
},
"Bookkeeping & Accounting": {
"automatableCostShare": 22,
"automatableNote": "Transaction categorisation, reconciliation, month-end close prep.",
"basis": "sourced",
"source": "Census Service Annual Survey 2022 (payroll ÷ revenue, NAICS 5412) × share of that payroll in LLM-exposed tasks (Eloundou et al., Science 2024, weighted by BLS OEWS May 2025 staffing for NAICS 5412). See SOURCES.md.",
"asOf": "2022 payroll and revenue; May 2025 staffing",
"derivation": {
"naicsProxy": "5412 Accounting, Tax Preparation, Bookkeeping, and Payroll Services",
"payrollShareOfRevenuePct": 43.9,