XML 45 R30.htm IDEA: XBRL DOCUMENT
v3.25.4

Segment and Geographic Information | 12 Months Ended
--- | ---
Dec. 31, 2025
Segment Reporting [Abstract] |
Segment and Geographic Information | Segment and Geographic Information The Company operates in one segment, machine vision technology. The Company has a single, company-wide management team that administers operations as a whole rather than as discrete operating segments. The Company’s chief operating decision maker is the chief executive officer, who assesses performance and allocates resources at the corporate level, as compared to the geography, product line, or end market levels. The Company offers a variety of machine vision products that have similar economic characteristics and are distributed by the same sales channels to the same types of customers. The following table summarizes information about geographic areas (in thousands):
| United States |  | Europe |  | Greater China |  | Other |  | Total
Year Ended December 31, 2025 |  |  |  |  |  |  |  |  |
Revenue | $ | 329,125 |  |  | $ | 251,638 |  |  | $ | 158,456 |  |  | $ | 255,140 |  |  | $ | 994,359 |
Long-lived assets | 48,838 |  |  | 14,112 |  |  | 13,631 |  |  | 14,428 |  |  | $ | 91,009 |
Year Ended December 31, 2024 |  |  |  |  |  |  |  |  |
Revenue | $ | 306,766 |  |  | $ | 217,880 |  |  | $ | 164,147 |  |  | $ | 225,722 |  |  | $ | 914,515 |
Long-lived assets | 56,948 |  |  | 15,655 |  |  | 14,844 |  |  | 16,025 |  |  | $ | 103,472 |
Year Ended December 31, 2023 |  |  |  |  |  |  |  |  |
Revenue | $ | 288,324 |  |  | $ | 220,665 |  |  | $ | 164,115 |  |  | $ | 164,443 |  |  | $ | 837,547 |
Long-lived assets | 62,946 |  |  | 17,005 |  |  | 17,028 |  |  | 15,958 |  |  | $ | 112,937 |
Revenue is presented geographically based on the customer’s country of domicile. Revenue from a single customer accounted for 15% and 10% of total revenue in 2025 and 2024, respectively. Revenue from this customer was not greater than 10% of total revenue in 2023. Accounts receivable from this customer were not greater than 10% of total accounts receivable as of December 31, 2025 and was 10% of total accounts receivable as of December 31, 2024. The measure of segment profit or loss for the Company's single segment is net income. Segment expenses were disaggregated based on the information the chief operating decision maker uses to assess performance and allocate resources considering both quantitative and qualitative factors. The following table summarizes significant segment expenses, which represents the difference between segment revenue and segment net income, (in thousands):
| Year Ended December 31,
| 2025 |  | 2024 |  | 2023
Revenue | $ | 994,359 |  |  | $ | 914,515 |  |  | $ | 837,547 |
Less: |  |  |  |  |
Cost of revenue (1) | 328,966 |  |  | 288,721 |  |  | 236,306 |
Gross profit | 665,393 |  |  | 625,794 |  |  | 601,241 |
Less: |  |  |  |  |
Research, development, and engineering expenses |  |  |  |  |
Salaries and fringe benefits | 75,690 |  |  | 79,544 |  |  | 78,762 |
Incentive compensation (2) | 9,537 |  |  | 4,711 |  |  | 1,446 |
Stock-based compensation | 15,336 |  |  | 14,628 |  |  | 16,480 |
Depreciation and amortization | 2,628 |  |  | 3,229 |  |  | 3,056 |
Other segment expenses (3) | 35,779 |  |  | 37,703 |  |  | 39,656 |
Total research, development, and engineering expenses | 138,970 |  |  | 139,815 |  |  | 139,400 |
Selling, general, and administrative expenses |  |  |  |  |
Salaries and fringe benefits | 174,526 |  |  | 179,898 |  |  | 166,612 |
Incentive compensation (2) | 55,932 |  |  | 45,565 |  |  | 35,513 |
Stock-based compensation | 30,965 |  |  | 35,849 |  |  | 36,309 |
Depreciation and amortization | 15,759 |  |  | 16,936 |  |  | 11,759 |
Other segment expenses (3) | 86,675 |  |  | 92,666 |  |  | 88,946 |
Total selling, general, and administrative expenses | 363,857 |  |  | 370,914 |  |  | 339,139 |
Loss (recovery) from fire | — |  |  | — |  |  | (8,000) |
Operating income | 162,566 |  |  | 115,065 |  |  | 130,702 |
Foreign currency gain (loss) | (4,082) |  |  | 1,531 |  |  | (10,039) |
Investment income | 16,950 |  |  | 13,971 |  |  | 14,093 |
Other income (expense) | 7,368 |  |  | 922 |  |  | 592 |
Income before income tax expense | 182,802 |  |  | 131,489 |  |  | 135,348 |
Income tax expense | 68,360 |  |  | 25,318 |  |  | 22,114 |
Net income | $ | 114,442 |  |  | $ | 106,171 |  |  | $ | 113,234 |
(1) Cost of revenue includes depreciation and amortization expense (including amortization of acquired technologies) of $12,406,000, $12,524,000, and $7,065,000 for 2025, 2024, and 2023, respectively. (2) Incentive compensation includes company bonus and sales commissions. (3) Other segment expenses include outside services, prototyping materials, sales demonstration equipment, travel and entertainment, marketing programs, rent, and allocations, among other less significant expenses.

X
- References No definition available. + Details
Name: | us-gaap_SegmentReportingAbstract
Namespace Prefix: | us-gaap_
Data Type: | xbrli:stringItemType
Balance Type: | na
Period Type: | duration

X
- Definition The entire disclosure for reporting segments including data and tables. Reportable segments include those that meet any of the following quantitative thresholds a) it's reported revenue, including sales to external customers and intersegment sales or transfers is 10 percent or more of the combined revenue, internal and external, of all operating segments b) the absolute amount of its reported profit or loss is 10 percent or more of the greater, in absolute amount of 1) the combined reported profit of all operating segments that did not report a loss or 2) the combined reported loss of all operating segments that did report a loss c) its assets are 10 percent or more of the combined assets of all operating segments. + References Reference 1: http://www.xbrl.org/2003/role/disclosureRef -Topic 280 -SubTopic 10 -Name Accounting Standards Codification -Section 50 -Paragraph 21 -Subparagraph (b) -Publisher FASB -URI https://asc.fasb.org/1943274/2147482810/280-10-50-21 Reference 2: http://www.xbrl.org/2003/role/disclosureRef -Topic 280 -SubTopic 10 -Name Accounting Standards Codification -Section 50 -Paragraph 21 -Subparagraph (a) -Publisher FASB -URI https://asc.fasb.org/1943274/2147482810/280-10-50-21 Reference 3: http://www.xbrl.org/2003/role/disclosureRef -Topic 280 -SubTopic 10 -Name Accounting Standards Codification -Section 50 -Paragraph 32 -Subparagraph (e) -Publisher FASB -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32 Reference 4: http://www.xbrl.org/2003/role/disclosureRef -Topic 280 -SubTopic 10 -Name Accounting Standards Codification -Section 50 -Paragraph 31 -Publisher FASB -URI https://asc.fasb.org/1943274/2147482810/280-10-50-31 Reference 5: http://www.xbrl.org/2003/role/disclosureRef -Topic 280 -SubTopic 10 -Name Accounting Standards Codification -Section 50 -Paragraph 15 -Publisher FASB -URI https://asc.fasb.org/1943274/2147482810/280-10-50-15 Reference 6: http://www.xbrl.org/2003/role/disclosureRef -Topic 280 -SubTopic 10 -Name Accounting Standards Codification -Section 50 -Paragraph 42 -Publisher FASB -URI https://asc.fasb.org/1943274/2147482810/280-10-50-42 Reference 7: http://www.xbrl.org/2003/role/exampleRef -Topic 280 -SubTopic 10 -Name Accounting Standards Codification -Section 55 -Paragraph 48 -Publisher FASB -URI https://asc.fasb.org/1943274/2147482785/280-10-55-48 Reference 8: http://www.xbrl.org/2003/role/disclosureRef -Topic 280 -SubTopic 10 -Name Accounting Standards Codification -Section 50 -Paragraph 32 -Subparagraph (f) -Publisher FASB -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32 Reference 9: http://www.xbrl.org/2003/role/disclosureRef -Topic 270 -SubTopic 10 -Name Accounting Standards Codification -Section 50 -Paragraph 1 -Subparagraph (i) -Publisher FASB -URI https://asc.fasb.org/1943274/2147482964/270-10-50-1 Reference 10: http://www.xbrl.org/2003/role/disclosureRef -Topic 280 -SubTopic 10 -Name Accounting Standards Codification -Section 50 -Paragraph 32 -Subparagraph (ee) -Publisher FASB -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32 Reference 11: http://fasb.org/us-gaap/role/ref/otherTransitionRef -Topic 280 -SubTopic 10 -Name Accounting Standards Codification -Section 50 -Paragraph 32 -Subparagraph (d) -Publisher FASB -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32 Reference 12: http://www.xbrl.org/2003/role/exampleRef -Topic 280 -SubTopic 10 -Name Accounting Standards Codification -Section 55 -Paragraph 54 -Subparagraph (d) -Publisher FASB -URI https://asc.fasb.org/1943274/2147482785/280-10-55-54 Reference 13: http://www.xbrl.org/2003/role/exampleRef -Topic 280 -SubTopic 10 -Name Accounting Standards Codification -Section 55 -Paragraph 47 -Subparagraph (c) -Publisher FASB -URI https://asc.fasb.org/1943274/2147482785/280-10-55-47 Reference 14: http://www.xbrl.org/2003/role/exampleRef -Topic 280 -SubTopic 10 -Name Accounting Standards Codification -Section 55 -Paragraph 54 -Subparagraph (a) -Publisher FASB -URI https://asc.fasb.org/1943274/2147482785/280-10-55-54 Reference 15: http://www.xbrl.org/2003/role/exampleRef -Topic 280 -SubTopic 10 -Name Accounting Standards Codification -Section 55 -Paragraph 47 -Subparagraph (a) -Publisher FASB -URI https://asc.fasb.org/1943274/2147482785/280-10-55-47 Reference 16: http://www.xbrl.org/2003/role/exampleRef -Topic 280 -SubTopic 10 -Name Accounting Standards Codification -Section 55 -Paragraph 54 -Subparagraph (e) -Publisher FASB -URI https://asc.fasb.org/1943274/2147482785/280-10-55-54 Reference 17: http://www.xbrl.org/2003/role/exampleRef -Topic 280 -SubTopic 10 -Name Accounting Standards Codification -Section 55 -Paragraph 47 -Subparagraph (d) -Publisher FASB -URI https://asc.fasb.org/1943274/2147482785/280-10-55-47 Reference 18: http://www.xbrl.org/2003/role/disclosureRef -Topic 280 -SubTopic 10 -Name Accounting Standards Codification -Section 50 -Paragraph 22 -Publisher FASB -URI https://asc.fasb.org/1943274/2147482810/280-10-50-22 Reference 19: http://www.xbrl.org/2003/role/disclosureRef -Topic 280 -SubTopic 10 -Name Accounting Standards Codification -Section 50 -Paragraph 34 -Publisher FASB -URI https://asc.fasb.org/1943274/2147482810/280-10-50-34 Reference 20: http://www.xbrl.org/2003/role/disclosureRef -Topic 280 -SubTopic 10 -Name Accounting Standards Codification -Section 50 -Paragraph 26C -Publisher FASB -URI https://asc.fasb.org/1943274/2147482810/280-10-50-26C Reference 21: http://www.xbrl.org/2003/role/disclosureRef -Topic 280 -SubTopic 10 -Name Accounting Standards Codification -Section 50 -Paragraph 26B -Publisher FASB -URI https://asc.fasb.org/1943274/2147482810/280-10-50-26B Reference 22: http://www.xbrl.org/2003/role/disclosureRef -Topic 280 -SubTopic 10 -Name Accounting Standards Codification -Section 50 -Paragraph 40 -Publisher FASB -URI https://asc.fasb.org/1943274/2147482810/280-10-50-40 Reference 23: http://www.xbrl.org/2003/role/disclosureRef -Topic 280 -Name Accounting Standards Codification -Publisher FASB -URI https://asc.fasb.org/280/tableOfContent Reference 24: http://www.xbrl.org/2003/role/disclosureRef -Topic 280 -SubTopic 10 -Name Accounting Standards Codification -Section 50 -Paragraph 26 -Publisher FASB -URI https://asc.fasb.org/1943274/2147482810/280-10-50-26 Reference 25: http://www.xbrl.org/2003/role/disclosureRef -Topic 280 -SubTopic 10 -Name Accounting Standards Codification -Section 50 -Paragraph 41 -Publisher FASB -URI https://asc.fasb.org/1943274/2147482810/280-10-50-41 + Details
Name: | us-gaap_SegmentReportingDisclosureTextBlock
Namespace Prefix: | us-gaap_
Data Type: | dtr-types:textBlockItemType
Balance Type: | na
Period Type: | duration