{
  "docId": "019dd923-622c-750b-8b99-b80c260b0389",
  "docSlug": "dee45f9e8542",
  "documentTitle": "Limbach Holdings, Inc. (LMB)",
  "authorId": "54_Spruce_Point_Capital",
  "authorName": "Spruce Point Capital Management",
  "documentKindSlug": "research-note",
  "documentKindLabel": "Research note",
  "sourceTypeSlug": "short_seller",
  "sourceTypeLabel": "Short seller",
  "presentationDate": "2025-07-22 00:00:00",
  "orientation": "landscape",
  "aspectRatio": 1.3333334,
  "pageNumber": 11,
  "pageCount": 86,
  "prevPage": 10,
  "nextPage": 12,
  "slideType": "executive_summary",
  "function": "summarize",
  "density": "overcrowded",
  "nDataPoints": 4,
  "notes": "The slide uses a red border to highlight the content, typical of activist short-seller research notes.",
  "elementsJson": [
    "headline_text",
    "paragraph"
  ],
  "metadataConfidence": 1,
  "imagePath": null,
  "slideHref": "/slides/019dd923-622c-750b-8b99-b80c260b0389/11",
  "deckHref": "/decks/019dd923-622c-750b-8b99-b80c260b0389",
  "deckJsonHref": "/decks/019dd923-622c-750b-8b99-b80c260b0389.json",
  "deckAnchorHref": "/decks/019dd923-622c-750b-8b99-b80c260b0389#slide-11",
  "components": [
    {
      "bbox": null,
      "kind": "callout",
      "text": "We are concerned with the increase in gross profit write-ups from contract estimate revisions in recent quarters and the outsized impacts these management decisions had on the Company’s reported earnings.",
      "attrs": null,
      "subkind": null,
      "toolName": "Visual emphasis",
      "toolSlug": "visual-emphasis",
      "confidence": null,
      "componentId": "019dd953-5370-75b3-9c60-6aea292df0f9",
      "frameworkName": null,
      "frameworkSlug": null
    },
    {
      "bbox": null,
      "kind": "metric",
      "text": "Adjusted EBITDA: $5.8 million",
      "attrs": null,
      "subkind": "primary",
      "toolName": "Quantification",
      "toolSlug": "quantification",
      "confidence": null,
      "componentId": "019dd953-5370-75b3-9c60-71df6b6b8c3f",
      "frameworkName": null,
      "frameworkSlug": null
    },
    {
      "bbox": {
        "h": 0.45,
        "w": 0.96,
        "x": 0.02,
        "y": 0.51
      },
      "kind": "paragraph",
      "text": "To start, the Company excludes finance lease costs from its Adj. EBITDA calculation. Because finance lease costs are recorded on the income statement as amortization and interest expenses, both of which are added back to EBITDA, the costs of finance leases are effectively excluded, overstating the Company's true economic earnings. Limbach's finance leases are primarily tied to real estate, vehicles, and equipment, and thus are integral to the Company's ongoing operations and must be appropriately considered. Limbach itself noted in its 2024 10-K that \"For the years ended December 31, 2024 and 2023, the Company obtained the use of various assets through operating and finance leases, which reduced the level of capital expenditures that would have otherwise been necessary to operate its business.\" Between 2019 and 2024, these expenses totaled nearly $19 million, making them a significant recurring expense. Limbach also makes the aggressive choice to add one-time gains on property and equipment sales to its Adj. EBITDA calculation; these non-recurring gains added roughly $1 million to Limbach's reported 2024 Adj. EBITDA total. We also believe Limbach's treatment of acquisition and restructuring costs in its Adj. EBITDA calculation is overly permissive. M&A is a core component of the Company's growth strategy, not a one-off event, and as such, related transaction costs should not be excluded from profitability metrics.",
      "attrs": null,
      "subkind": "paragraph",
      "toolName": null,
      "toolSlug": null,
      "confidence": null,
      "componentId": "1ded1e1a-e1bd-4dbb-8afa-f139a2802692",
      "frameworkName": null,
      "frameworkSlug": null
    },
    {
      "bbox": {
        "h": 0.03,
        "w": 0.96,
        "x": 0.02,
        "y": 0.17
      },
      "kind": "paragraph",
      "text": "Gross Profit Write-Ups Drove A Material Portion Of Pre-Tax Earnings Growth In 2024",
      "attrs": null,
      "subkind": "paragraph",
      "toolName": null,
      "toolSlug": null,
      "confidence": null,
      "componentId": "5a42196c-ddee-4312-8122-b92b0941e888",
      "frameworkName": null,
      "frameworkSlug": null
    },
    {
      "bbox": {
        "h": 0.03,
        "w": 0.96,
        "x": 0.02,
        "y": 0.48
      },
      "kind": "paragraph",
      "text": "We Believe Limbach's Adj. EBITDA Reporting Is Overstated",
      "attrs": null,
      "subkind": "paragraph",
      "toolName": null,
      "toolSlug": null,
      "confidence": null,
      "componentId": "93060514-fa0a-47c5-8ade-9a1607c8f210",
      "frameworkName": null,
      "frameworkSlug": null
    },
    {
      "bbox": {
        "h": 0.25,
        "w": 0.96,
        "x": 0.02,
        "y": 0.2
      },
      "kind": "paragraph",
      "text": "Occasionally, under the cost-to-cost method, management will need to update their estimates for projects in-progress, resulting in gross profit write ups/(downs). We are concerned with the increase in gross profit write-ups from contract estimate revisions in recent quarters and the outsized impacts these management decisions had on the Company's reported earnings. For example, in 2024 Limbach saw $5.8 million in net gross profit write-ups, representing nearly 50% of the Company's y/y increase in pre-tax earnings. The trend continued into Q1'25, when over 100% of year-over-year pre-tax earnings growth was driven by gross profit write-ups. Management has reduced disclosure on gross profit write-ups/(downs) over time, which we find concerning considering that gross profit write-ups can have a significant impact to earnings in certain periods.",
      "attrs": null,
      "subkind": "paragraph",
      "toolName": null,
      "toolSlug": null,
      "confidence": null,
      "componentId": "acb87ecc-c274-4d31-947c-bae95bdd0c08",
      "frameworkName": null,
      "frameworkSlug": null
    },
    {
      "bbox": null,
      "kind": "quote",
      "text": "\"For the years ended December 31, 2024 and 2023, the Company obtained the use of various assets through operating and finance leases, which reduced the level of capital expenditures that would have otherwise been necessary to operate its business.\" — Limbach 2024 10-K",
      "attrs": null,
      "subkind": null,
      "toolName": "Authority citation",
      "toolSlug": "authority-citation",
      "confidence": null,
      "componentId": "019dd953-5370-75b3-9c60-6efa586c4baf",
      "frameworkName": null,
      "frameworkSlug": null
    },
    {
      "bbox": {
        "h": 0.04,
        "w": 0.35,
        "x": 0.318,
        "y": 0.055
      },
      "kind": "title",
      "text": "Executive Summary, Cont'd.",
      "attrs": null,
      "subkind": "headline",
      "toolName": null,
      "toolSlug": null,
      "confidence": null,
      "componentId": "f7bfe99b-f3dd-4653-ba51-296dfa6dde92",
      "frameworkName": null,
      "frameworkSlug": null
    }
  ],
  "metrics": [],
  "tools": [
    {
      "name": "Executive summary",
      "slug": "executive-summary",
      "agent": null,
      "layer": "slide",
      "matchId": "a1aa5dea-b957-4824-b6e1-77cb126fe5d2",
      "evidence": "This slide is an executive summary, which is a common section in business presentations.",
      "confidence": 0.9
    }
  ],
  "frameworks": [],
  "arcBeats": [
    {
      "to": 19,
      "from": 5,
      "beatId": "32ad1395-b980-4b6c-83f9-8323d778a736",
      "arcName": "Problem-Agitate-Solution",
      "arcSlug": "problem-agitate-solution",
      "beatName": "Problem & Complication",
      "beatSlug": "consultants-gambit-problem-complication",
      "evidence": "The document highlights several problems and complications with Limbach's financials and operations, including connections to high-profile fraud cases and generous stock-based compensation",
      "position": 0,
      "confidence": 0.8,
      "parentBeatName": "Complication",
      "parentBeatSlug": "complication"
    }
  ],
  "loops": [],
  "imagePathAlt": null,
  "thumbSrc": null,
  "thumbSrcAlt": null,
  "locked": true
}