INOD · XBRL financial data
Innodata financial statements, every fiscal year
The same tables from 7 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 (INOD's year ends in late December)
| In thousands of dollars | Dec 31, 2020 | Dec 31, 2021 | Dec 31, 2022 | Dec 31, 2023 | Dec 31, 2024 | Dec 31, 2025 |
|---|---|---|---|---|---|---|
| Revenue | 58,240 | 69,755 | 79,001 | 86,775 | — | — |
| Revenue from contracts with customers | — | — | — | 86,775 | 170,461 | 251,663 |
| Gross profit | — | — | — | 31,293 | 67,074 | 99,479 |
| Selling, general and administrative | 18,662 | 27,912 | 37,940 | 30,975 | 42,738 | 59,606 |
| Operating income (loss) | — | — | — | 318 | 24,336 | 39,873 |
| Income tax expense (benefit) | 401 | 842 | 1,522 | 1,028 | (4,190) | 9,244 |
| Net income (loss) | 617 | (1,673) | (11,935) | (908) | 28,660 | 32,181 |
| Earnings per share, basic USD per share | 0.03 | (0.06) | (0.44) | (0.03) | 0.98 | 1.01 |
| Earnings per share, diluted USD per share | 0.02 | (0.06) | (0.44) | (0.03) | 0.89 | 0.92 |
| Weighted average shares, basic thousands of shares | 24,607 | 26,630 | 27,278 | 28 | 29,163 | 31,807 |
| Weighted average shares, diluted thousands of shares | 25,573 | 26,630 | 27,278 | 28 | 32,177 | 35,025 |
Balance sheet
CSVFiscal years (INOD's year ends in late December)
Cash flows
CSVFiscal years (INOD's year ends in late December)
| In thousands of dollars | Dec 31, 2020 | Dec 31, 2021 | Dec 31, 2022 | Dec 31, 2023 | Dec 31, 2024 | Dec 31, 2025 |
|---|---|---|---|---|---|---|
| Net income (loss) | 617 | (1,673) | (11,935) | (908) | 28,660 | 32,181 |
| Stock-based compensation | 913 | 1,750 | 3,283 | 4,027 | 3,998 | 11,144 |
| Depreciation and amortization | 2,266 | 2,869 | 3,889 | 4,716 | 5,796 | 6,889 |
| Net cash from operating activities | 5,660 | 5,151 | (1,216) | 5,903 | 35,015 | 46,752 |
| Purchases of property and equipment | 1,414 | 4,368 | 6,526 | 5,564 | 7,741 | 11,104 |
| Net cash from investing activities | (1,375) | (4,368) | (7,033) | (5,071) | (7,741) | (11,104) |
| Repayments of long-term debt | 864 | 691 | 639 | 452 | 513 | 420 |
| Net cash from financing activities | 2,312 | 773 | (307) | 2,872 | 6,058 | (426) |
| Net change in cash | 6,699 | 1,329 | (9,110) | 4,014 | 33,077 | 35,333 |
Compare with peers
SIC 7374 and related industry codes, similar size. Each row is the latest quarter reported.
How peers are chosen
- SIC 7374 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.
- Runway shows only for companies burning cash with under $10B of public float.
- * marks a quarter worked out from the filing totals: for a 10-Q, the year-to-date total less the earlier one.
| Company | Cash ($K) | Revenue, quarter ($K) | Operating cash flow, quarter ($K) | Shares outstanding | Runway | Quarter |
|---|---|---|---|---|---|---|
| Innodata | 240,278 | 92,142 | 127,182* | 34.4M | — | 10-QJun 30, 2026 |
| Hinge Health | 286,224 | 212,817 | 101,413* | not reported | — | 10-QJun 30, 2026 |
| Rapid7 | 335,714 | 212,404 | 30,121* | 68.5M | — | 10-QSep 30, 2026 |
| Upwork | 227,986 | 185,599 | 65,947* | 125.8M | — | 10-QSep 30, 2026 |
| DigitalOcean Holdings | 666,096 | 321,192 | 161,227* | 118.0M | — | 10-QSep 30, 2026 |
| Blackbaud | 35,734 | 292,641 | 141,731* | 45.0M | — | 10-QSep 30, 2026 |
| RUM Group | 203,270 | 40,367 | (49,538)* | not reported | 4.1 quarters | 10-QJun 30, 2026 |
| Certara | 214,932 | 94,901 | 30,680* | 152.5M | — | 10-QSep 30, 2026 |
| Navan | 653,015 | 232,790 | 25,186* | not reported | — | 10-QJul 31, 2026 |
Not investment advice. Not affiliated with the U.S. SEC.
