VTSI · XBRL financial data

VirTra 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

CSV

Fiscal years (VTSI's year ends in late December)

In thousands of dollarsDec 31, 2020Dec 31, 2021Dec 31, 2022Dec 31, 2023Dec 31, 2024Dec 31, 2025
Revenue———7480186
Revenue from contracts with customers19,08824,43428,30238,04326,35122,402
Cost of goods and services sold7,18713,02912,04711,3786,9387,200
Gross profit11,90011,40516,25526,66519,41315,203
Research and development1,6031,8662,6072,7943,0032,384
General and administrative9,0718,08511,05414,23514,41312,382
Total operating expenses10,6749,95113,66117,03017,41614,765
Operating income (loss)1,2261,4542,5949,6361,996437
Other income (expense)33—————
Income tax expense (benefit)(219)2465721,819887(111)
Net income (loss)1,4782,5401,9568,4031,364258
Earnings per share, basic USD per share0.190.250.180.770.120.02
Earnings per share, diluted USD per share0.190.250.180.770.120.02
Weighted average shares, basic thousands of shares7,75710,00710,86410,95811,16311,272
Weighted average shares, diluted thousands of shares7,83610,06110,87410,96311,16311,272

Balance sheet

CSV

Fiscal years (VTSI's year ends in late December)

In thousands of dollarsDec 31, 2020Dec 31, 2021Dec 31, 2022Dec 31, 2023Dec 31, 2024Dec 31, 2025
Cash and cash equivalents6,84219,70913,48418,85018,04118,595
Accounts receivable1,3783,8973,00315,7248,0055,502
Inventory3,5165,0159,59212,40514,58313,060
Prepaid and other current assets3829415319071,2732,622
Total current assets17,52733,50834,09648,99544,47341,022
Property and equipment, net1,38212,86515,26715,48716,20516,268
Right-of-use asset1,0957841,213717437269
Total assets22,75349,57553,81469,63465,45365,137
Accounts payable3467891,2512,282957784
Total current liabilities7,2587,5639,75715,7559,64710,228
Lease liability, non-current85350572043226589
Total liabilities11,09518,34720,13327,01219,76219,544
Retained earnings (accumulated deficit)(2,236)3042,26010,66312,77512,535
Total stockholders' equity11,65931,22933,68242,62245,69145,592
Total liabilities and equity22,75349,57553,81469,63465,45365,137
Common shares outstanding (cover page) thousands of shares7,77510,87710,92511,11011,26011,304

Cash flows

CSV

Fiscal years (VTSI's year ends in late December)

In thousands of dollarsDec 31, 2020Dec 31, 2021Dec 31, 2022Dec 31, 2023Dec 31, 2024Dec 31, 2025
Net income (loss)1,4782,5401,9568,4031,364258
Stock-based compensation—224456482777141
Depreciation and amortization3805898879291,1371,762
Net cash from operating activities2,246(126)(2,693)6,6831,2574,588
Purchases of property and equipment—3,4493,2211,1281,8461,515
Net cash from investing activities1,853(3,736)(3,341)(1,128)(1,846)(3,781)
Repayments of long-term debt—78231243241253
Net cash from financing activities1,32816,728(190)(188)(221)(253)
Net change in cash5,42712,867(6,225)5,366(809)554

Compare with peers

SIC 3990 and related industry codes, similar size; rows marked “added: same SIC” fill a short list. Each row is the latest quarter reported.

How peers are chosen
  • SIC 3990 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.
  • Fewer than three companies fall in that range, so the list adds same-SIC (3990) companies nearest in public float, each marked “added: same SIC”.
  • 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-K, the year less the first three quarters; 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.
CompanyCash ($K)Revenue, quarter ($K)Operating cash flow, quarter ($K)Shares outstandingRunwayQuarter
VirTra14,3135,763(2,140)*11.3M6.7 quarters 10-QJun 30, 2026
Oil-Dri Corp of Americaadded: same SIC73,700129,292*26,898*not reported— 10-KJul 31, 2026
Daktronicsadded: same SIC154,585234,56531,43348.1M— 10-QAug 1, 2026
Hillenbrandadded: same SIC173,100550,200not reported70.7M— 10-QDec 31, 2025
Trans Luxadded: same SIC3714,110*(903)*13.5M0.4 quarters 10-KDec 31, 2024
Bradyadded: same SIC187,149436,904*79,228*not reported— 10-KJul 31, 2026
Amcoradded: same SIC1,115,0006,398,000*1,595,000*462.3M— 10-KJun 30, 2026
Basaniteadded: same SIC01.5(109)*267.6M— 10-QSep 30, 2025
DAISadded: same SIC20713(32)*68.0M0.6 quarters 10-QSep 30, 2023

Not investment advice. Not affiliated with the U.S. SEC.