{
  "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": 42,
  "pageCount": 86,
  "prevPage": 41,
  "nextPage": 43,
  "slideType": "expose_contradiction",
  "function": "expose_contradiction",
  "density": "balanced",
  "nDataPoints": 4,
  "notes": "The slide uses a comparison of two bar charts to show growth in two revenue streams, highlighting the lack of data post-2018.",
  "elementsJson": [
    "headline_text",
    "callout_box",
    "bar_chart_vertical",
    "footnote"
  ],
  "metadataConfidence": 1,
  "imagePath": null,
  "slideHref": "/slides/019dd923-622c-750b-8b99-b80c260b0389/42",
  "deckHref": "/decks/019dd923-622c-750b-8b99-b80c260b0389",
  "deckJsonHref": "/decks/019dd923-622c-750b-8b99-b80c260b0389.json",
  "deckAnchorHref": "/decks/019dd923-622c-750b-8b99-b80c260b0389#slide-42",
  "components": [
    {
      "bbox": null,
      "kind": "callout",
      "text": "We question why management ceased disclosing this figure in 2018, just as the Company was beginning its transformation in earnest to being an ODR-focused business.",
      "attrs": null,
      "subkind": null,
      "toolName": "Visual emphasis",
      "toolSlug": "visual-emphasis",
      "confidence": null,
      "componentId": "019dd953-5370-75b3-9c62-ee9096a53a3f",
      "frameworkName": null,
      "frameworkSlug": null
    },
    {
      "bbox": {
        "h": 0.6,
        "w": 0.96,
        "x": 0.02,
        "y": 0.31
      },
      "kind": "chart",
      "text": "Limbach Maintenance Base vs. Pull-Through Revenue",
      "attrs": null,
      "subkind": "bar-grouped",
      "toolName": null,
      "toolSlug": null,
      "confidence": null,
      "componentId": "a06af156-96f3-4075-9b8d-7d2a84a53f30",
      "frameworkName": null,
      "frameworkSlug": null
    },
    {
      "bbox": null,
      "kind": "metric",
      "text": "CAGR: 24.9%",
      "attrs": null,
      "subkind": "primary",
      "toolName": "Quantification",
      "toolSlug": "quantification",
      "confidence": null,
      "componentId": "019dd953-5370-75b3-9c62-f0d3be43d8ca",
      "frameworkName": null,
      "frameworkSlug": null
    },
    {
      "bbox": {
        "h": 0.12,
        "w": 0.96,
        "x": 0.02,
        "y": 0.17
      },
      "kind": "paragraph",
      "text": "Limbach previously disclosed its contracted maintenance revenue vs. pull-through revenue, or special projects/spot work that arise from the Company's contracted maintenance relationships. We question why management ceased disclosing this figure in 2018, just as the Company was beginning its transformation in earnest to being an ODR-focused business. We also question why management hasn't resumed disclosing this figure considering that the Company is now an ODR dominated business.",
      "attrs": null,
      "subkind": "paragraph",
      "toolName": null,
      "toolSlug": null,
      "confidence": null,
      "componentId": "b97628aa-6d37-4b0b-92fd-53f3a68daf19",
      "frameworkName": null,
      "frameworkSlug": null
    },
    {
      "bbox": {
        "h": 0.02,
        "w": 0.3,
        "x": 0.01,
        "y": 0.97
      },
      "kind": "source-note",
      "text": "Source: Limbach December 2018 investor presentation",
      "attrs": null,
      "subkind": null,
      "toolName": null,
      "toolSlug": null,
      "confidence": null,
      "componentId": "b7ccd72e-60b9-4967-af1f-278aa6eb60c0",
      "frameworkName": null,
      "frameworkSlug": null
    },
    {
      "bbox": {
        "h": 0.08,
        "w": 0.6,
        "x": 0.33,
        "y": 0.03
      },
      "kind": "title",
      "text": "Limbach Ceased Disclosing Its Contracted Maintenance Base Revenue",
      "attrs": null,
      "subkind": "headline",
      "toolName": null,
      "toolSlug": null,
      "confidence": null,
      "componentId": "91da328f-47dd-439d-bd18-26d82585ee6e",
      "frameworkName": null,
      "frameworkSlug": null
    }
  ],
  "metrics": [],
  "tools": [],
  "frameworks": [],
  "arcBeats": [
    {
      "to": 64,
      "from": 35,
      "beatId": "fb9a213b-6405-45e9-85ce-458dc475f57c",
      "arcName": "Problem-Agitate-Solution",
      "arcSlug": "problem-agitate-solution",
      "beatName": "Preempt Rebuttal",
      "beatSlug": null,
      "evidence": "The document preempts potential rebuttals by addressing potential counterarguments and providing additional evidence to support its claims",
      "position": 2,
      "confidence": 0.8,
      "parentBeatName": null,
      "parentBeatSlug": null
    },
    {
      "to": 80,
      "from": 31,
      "beatId": "05b3e7fe-8524-4292-9dca-69fe4e431e99",
      "arcName": "Problem-Agitate-Solution",
      "arcSlug": "problem-agitate-solution",
      "beatName": "Thesis Headline",
      "beatSlug": null,
      "evidence": "The document presents a clear thesis, highlighting several concerns and potential risks with Limbach's financials and operations",
      "position": 3,
      "confidence": 0.8,
      "parentBeatName": null,
      "parentBeatSlug": null
    }
  ],
  "loops": [],
  "imagePathAlt": null,
  "thumbSrc": null,
  "thumbSrcAlt": null,
  "locked": true
}