Compare sales with the profit left after direct costs and the profit left after all expenses and taxes.Formula: Gross profit = revenue − cost of revenue
Net income = total income − total expenses
Latest period Q2 '26. Revenue 949.6K. Gross profit 445.15K. Net profit -6.89M.
RevenueGross profitNet profit
See how much of each dollar of sales remains after direct costs, after running the business, and after all expenses and taxes.Formula: Gross margin = gross profit ÷ revenue × 100%
Operating margin = operating income ÷ revenue × 100%
Net margin = net income ÷ revenue × 100%
Latest period Q2 '26. Gross margin 46.9%. Operating margin -434.6%. Net profit margin -726%.
Gross marginOperating marginNet profit margin
Compare cash generated by the business, spending on long-lived assets, and what remains afterward.Formula: Free cash flow = operating cash flow − capital expenditures
Compare the company’s cash cushion with its borrowings. Negative net cash means debt is greater than cash.Formula: Net cash = cash − debt
Latest period 2026. Cash 7.8M.
CashDebtNet cash
Profit for each share over the trailing 12 months, adjusted for stock splits.Formula: Earnings available to common shareholders ÷ weighted-average shares
Using split history cached 2026-09-23; assuming no new splits
2025-03-31: four consecutive quarters unavailable
2025-06-30: four consecutive quarters unavailable
Q1 2026: four consecutive quarters unavailable
Q2 2026: four consecutive quarters unavailable
Earnings period 2025-01-01 to 2025-03-31. Shares as of 2025-03-31: unavailable source shares.
Earnings period 2025-04-01 to 2025-06-30. Shares as of 2025-06-30: unavailable source shares.
Earnings period 2026-01-01 to 2026-03-31. Shares as of 2026-03-31: unavailable source shares.
Earnings period 2026-04-01 to 2026-06-30. Shares as of 2026-06-30: unavailable source shares.
Latest period Q2 2026. .
EPS (TTM)
How much investors pay for each dollar of the company’s yearly earnings. It is not useful when the company has no profit.Formula: Share price ÷ trailing 12-month EPS
Using split history cached 2026-09-23; assuming no new splits
2025-03-31: Security type not verified
2025-06-30: Security type not verified
Q1 2026: Security type not verified
Q2 2026: Security type not verified
Earnings period 2025-01-01 to 2025-03-31. Shares as of 2025-03-31: unavailable source shares.
Earnings period 2025-04-01 to 2025-06-30. Shares as of 2025-06-30: unavailable source shares.
Earnings period 2026-01-01 to 2026-03-31. Shares as of 2026-03-31: unavailable source shares.
Earnings period 2026-04-01 to 2026-06-30. Shares as of 2026-06-30: unavailable source shares.
Latest period Q2 2026. P/E ratio Missing.
P/E ratio
See how the number of shares changes over time. More shares can mean each existing share owns a smaller slice of the company.Formula: Outstanding shares = issued shares − treasury shares
Share-count growth = (current shares ÷ previous shares − 1) × 100%
Stock split history may be out of date.
Latest period 2026. Shares outstanding 8M. Class detail unavailable 8M.