PRIM · XBRL financial data
Primoris Services financial statements, every fiscal year
The same tables from 6 filings, lined up. Matched by XBRL tag: renamed lines keep their history.
How these numbers work
- Every number comes from the company's XBRL financial data filed with the SEC, and each one links to its filing.
- Lines are matched by XBRL tag, so a line renamed between filings keeps its history.
- * marks a quarter worked out from the filing totals: the 10-K year minus the first three quarters, or a year-to-date total minus the earlier one. Fourth-quarter earnings per share is fourth-quarter net income over the fourth-quarter weighted shares.
- 0 means a filing states zero; a dash (—) means no filing states that number.
- “year only” means the 10-K gives the full year but not the quarters needed to work out the fourth. A worked-out quarter of revenue, cost of revenue or operating cash flow more than twice the company's largest quarter of the two years before is shown this way too.
- Gross profit is shown as the company reports it; a worked-out quarter must equal revenue less cost of revenue for that quarter, or it is a dash.
- Operating income can be above gross profit when the company books other operating income between the two, shown on its own line.
- Shares outstanding come from each filing's cover page, as of the date printed there.
- Quarters are fiscal: Q2 FY27 is the second quarter of the company's fiscal 2027.
Income statement
CSVFiscal years (PRIM's year ends in late December)
| In millions of dollars | Dec 31, 2020 | Dec 31, 2021 | Dec 31, 2022 | Dec 31, 2023 | Dec 31, 2024 | Dec 31, 2025 |
|---|---|---|---|---|---|---|
| Revenue from contracts with customers | 3,491 | 3,498 | 4,421 | 5,715 | 6,367 | 7,575 |
| Cost of goods and services sold | 3,121 | 3,081 | 3,964 | 5,128 | 5,664 | 6,762 |
| Gross profit | 370 | 417 | 457 | 587 | 703 | 813 |
| Selling, general and administrative | 203 | 230 | 282 | 329 | 383 | 399 |
| Operating income (loss) | 164 | 170 | 195 | 253 | 317 | 412 |
| Interest expense | 20 | — | — | — | — | — |
| Other income (expense) | 1 | 0 | 2 | 2 | 0 | 1 |
| Income tax expense (benefit) | 41 | 36 | 26 | 52 | 74 | 109 |
| Net income (loss) | 105 | 116 | 133 | 126 | 181 | 275 |
| Earnings per share, basic USD per share | 2.17 | 2.19 | 2.50 | 2.37 | 3.37 | 5.09 |
| Earnings per share, diluted USD per share | 2.16 | 2.17 | 2.47 | 2.33 | 3.31 | 5.02 |
| Weighted average shares, basic millions of shares | 48 | 53 | 53 | 53 | 54 | 54 |
| Weighted average shares, diluted millions of shares | 49 | 53 | 54 | 54 | 55 | 55 |
Balance sheet
CSVFiscal years (PRIM's year ends in late December)
| In millions of dollars | Dec 31, 2020 | Dec 31, 2021 | Dec 31, 2022 | Dec 31, 2023 | Dec 31, 2024 | Dec 31, 2025 |
|---|---|---|---|---|---|---|
| Cash and cash equivalents | 327 | 201 | 249 | 218 | 456 | 536 |
| Accounts receivable | — | — | — | 112 | — | — |
| Prepaid and other current assets | 30 | 86 | 176 | 136 | 96 | 138 |
| Total current assets | 1,115 | 1,182 | 1,704 | 1,885 | 2,159 | 2,334 |
| Property and equipment, net | 356 | 433 | 494 | 476 | 488 | 531 |
| Right-of-use asset | 207 | 159 | 203 | 361 | 461 | 489 |
| Goodwill | 215 | 582 | 872 | 858 | 857 | 857 |
| Total assets | 1,970 | 2,543 | 3,544 | 3,827 | 4,196 | 4,408 |
| Accounts payable | 246 | 273 | 535 | 629 | 624 | 744 |
| Accrued liabilities | 201 | 175 | 246 | 263 | 350 | 405 |
| Current portion of long-term debt | 48 | 67 | 78 | 73 | 75 | 61 |
| Total current liabilities | 764 | 759 | 1,138 | 1,335 | 1,671 | 1,849 |
| Long-term debt | 269 | 594 | 1,065 | 885 | 660 | 409 |
| Lease liability, non-current | 138 | 98 | 131 | 263 | 333 | 326 |
| Total liabilities | 1,255 | 1,553 | 2,435 | 2,591 | 2,786 | 2,727 |
| Retained earnings | 625 | 727 | 848 | 961 | 1,128 | 1,386 |
| Total stockholders' equity | 715 | 990 | 1,109 | 1,236 | 1,410 | 1,681 |
| Total liabilities and equity | 1,970 | 2,543 | 3,544 | 3,827 | 4,196 | 4,408 |
| Common shares outstanding (cover page) millions of shares | 49 | 53 | 53 | 53 | 54 | 54 |
Cash flows
CSVFiscal years (PRIM's year ends in late December)
| In millions of dollars | Dec 31, 2020 | Dec 31, 2021 | Dec 31, 2022 | Dec 31, 2023 | Dec 31, 2024 | Dec 31, 2025 |
|---|---|---|---|---|---|---|
| Net income (loss) | 105 | 116 | 133 | 126 | 181 | 275 |
| Stock-based compensation | 2 | 10 | 7 | 12 | 15 | 21 |
| Depreciation and amortization | 82 | 106 | 99 | 107 | 96 | 92 |
| Net cash from operating activities | 312 | 80 | 83 | 199 | 508 | 470 |
| Purchases of property and equipment | 64 | 134 | 95 | 103 | 127 | 130 |
| Net cash from investing activities | (43) | (691) | (482) | (30) | (27) | (94) |
| Proceeds from issuing common stock | 1 | 179 | 1 | 1 | — | — |
| Share repurchases | 11 | 15 | 6 | — | — | — |
| Dividends paid | 12 | 13 | 13 | 13 | 13 | 17 |
| Proceeds from long-term debt | 34 | 462 | 470 | 10 | — | — |
| Repayments of long-term debt | 69 | 114 | 87 | 97 | 224 | 329 |
| Net cash from financing activities | (63) | 486 | 452 | (205) | (244) | (296) |
| Net change in cash | 206 | (125) | 53 | (35) | 238 | 80 |
Compare with peers
SIC 1623 and related industry codes, similar size. Each row is the latest quarter reported.
How peers are chosen
- SIC 1623 and related industry codes with public float (or, where float is missing, quarterly revenue) between 0.2x and 5x the company's.
- Each row is the latest quarter the company has reported, named in the Quarter column; when that filing is a 10-K, it is the fourth quarter, never the full year.
- * marks a quarter worked out from the filing totals: for a 10-Q, the year-to-date total less the earlier one.
- A cell reading “not reported” means the filings give no figure for that quarter alone.
| Company | Cash ($M) | Revenue, quarter ($M) | Operating cash flow, quarter ($M) | Shares outstanding | Quarter |
|---|---|---|---|---|---|
| Primoris Services | 204 | 1,952 | 140* | 52.5M | 10-QSep 30, 2026 |
| Myr Group | 26 | 1,259 | 46* | 15.6M | 10-QSep 30, 2026 |
| Dycom Industries | 340 | 2,006 | 104* | 30.2M | 10-QAug 1, 2026 |
| Mastec | 482 | 5,152 | 267* | 80.3M | 10-QSep 30, 2026 |
| ITG | 2.5 | 405 | not reported | not reported | 10-QJun 30, 2026 |
Not investment advice. Not affiliated with the U.S. SEC.
