Recent Reverse Stock Splits: Last 90 Days
Every recent reverse stock split effective in the past 90 days, with ticker, ratio and effective date, plus how to tell a 1-for-10 from a 10-for-1.
Recent reverse stock splits are the corporate actions that swap several shares you already own for one new share at a proportionally higher price. The panel below lists the ones that became effective in roughly the last 90 days, with the ticker, the ratio, the date the new shares began trading, and what a 100-share position turned into. A reverse split moves the share count and the quoted price in opposite directions by the same factor, and at the instant it takes effect the market value of the position is unchanged. If you want the mechanics from the ground up first, start with what a reverse stock split is, then come back for the current list.
Recent reverse stock splits in the last 90 days
Every row here is read from the exchange split record at the moment the page is generated, so the list re-sorts itself as new actions land and older ones roll off the back of the window. The panel carries the 15 most recent, newest first.
| ticker | effective_on | ratio_label | shares_left_per_100 |
|---|---|---|---|
| AGRZ | Sep 29, 2026 | 1-for-20 | 5 |
| CDT | Sep 29, 2026 | 1-for-25 | 4 |
| ONMD | Sep 29, 2026 | 1-for-10 | 10 |
| TRUG | Sep 29, 2026 | 1-for-10 | 10 |
| VRME | Sep 29, 2026 | 1-for-10 | 10 |
| ABEPF | Sep 28, 2026 | 1-for-15 | 6.67 |
| BTLN | Sep 28, 2026 | 1-for-8 | 12.5 |
| CTNT | Sep 28, 2026 | 1-for-150 | 0.67 |
| DCX | Sep 28, 2026 | 1-for-160 | 0.62 |
| DLXY | Sep 28, 2026 | 1-for-5 | 20 |
| FBGL | Sep 28, 2026 | 1-for-10 | 10 |
| GMEX | Sep 28, 2026 | 1-for-9 | 11.11 |
| IMMP | Sep 28, 2026 | 1-for-20 | 5 |
| MTNB | Sep 28, 2026 | 1-for-15 | 6.67 |
| FRSAF | Sep 25, 2026 | 1-for-20 | 5 |
The exact SQL behind every number
SELECT
ticker,
formatDateTime(execution_date, '%b %e, %Y') AS effective_on,
concat(
toString(toUInt32(any(split_to))),
'-for-',
toString(toUInt32(any(split_from)))
) AS ratio_label,
round(100 * any(split_to) / any(split_from), 2) AS shares_left_per_100
FROM global_markets.stocks_splits
WHERE execution_date >= today() - 90
AND execution_date <= today()
AND split_from > split_to
AND ticker NOT IN ('SPCX')
GROUP BY ticker, execution_date
ORDER BY execution_date DESC, ticker ASC
LIMIT 15At the top of the list is AGRZ, effective Sep 29, 2026 at 1-for-20. A 100-share position in it became 5 shares the next morning. The oldest row still in the window is FRSAF, effective Sep 25, 2026 at 1-for-20, where 100 shares became 5. Odd lots rarely divide cleanly into these ratios, and the leftover fraction is settled by the broker, usually as a small cash payment at the post-split price. The company's split announcement states which treatment applies.
How to read the ratio, and how to avoid the 10-for-1 trap
A split record stores two numbers, a from and a to. The new share count is the old count multiplied by the to and divided by the from. When the from is the larger number the count shrinks and the quoted price rises, and that is a reverse split. When the to is larger the count grows and the price falls, and that is an ordinary forward split. Everything in the panel above satisfies the first condition.
The sign error creeps in at the written ratio. "1-for-10" means one new share for every ten old ones, a reverse split, and that is the word order the US exchanges use in their notices. "10-for-1" means ten new shares for every one old share, which is a forward split and the opposite event. Press releases, brokerage statements and data feeds are not consistent about the order, and some write it with a colon instead, so the reliable check is arithmetic rather than phrasing: compare the two stored numbers, then confirm the direction against the price. A quoted price that jumps by roughly the ratio between one close and the next open, with no trading activity spanning the gap, is the reverse-split fingerprint. What happens after a reverse stock split walks through that first session in detail.
Why the names on this list look alike
Nasdaq and the NYSE both run a continued listing standard with a minimum bid price of $1.00. A company whose closing bid sits under $1 for 30 consecutive business days receives a deficiency notice and a compliance window, commonly 180 calendar days, during which the bid must close at or above $1 for ten consecutive sessions. A reverse split multiplies the quoted price by the ratio, which is the arithmetic that turns a 40-cent stock into a $4.00 stock at 1-for-10. How long a stock can trade under $1 covers that clock in full.
The panel below takes the recent reverse-split names and measures the 30 trading sessions of closing prices immediately ahead of each effective date, then ranks them by how many of those closes printed under a dollar.
| ticker | low_close_before | under_1_count |
|---|---|---|
| JUNS | 0.077 | 21 |
| SMTK | 0.0872 | 21 |
| LIMN | 0.0989 | 21 |
| IMCC | 0.1049 | 21 |
| HAO | 0.1475 | 21 |
| CURX | 0.183 | 21 |
| YMT | 0.191 | 21 |
| SCNI | 0.2282 | 21 |
| TANH | 0.2299 | 21 |
| XCH | 0.24 | 21 |
| KIDZ | 0.283 | 21 |
| CLGN | 0.2897 | 21 |
The exact SQL behind every number
SELECT
s.ticker AS ticker,
round(min(toFloat64(d.close)), 4) AS low_close_before,
countIf(toFloat64(d.close) < 1) AS under_1_count
FROM
(
SELECT
ticker,
min(execution_date) AS effective_date
FROM global_markets.stocks_splits
WHERE execution_date >= today() - 90
AND execution_date <= today()
AND split_from > split_to
AND ticker NOT IN ('SPCX')
GROUP BY ticker
) AS s
INNER JOIN
(
SELECT ticker, date, close
FROM global_markets.stocks_daily_aggs
WHERE date >= today() - 125
AND date <= today()
) AS d ON d.ticker = s.ticker
WHERE d.date >= s.effective_date - 30
AND d.date < s.effective_date
GROUP BY s.ticker
ORDER BY under_1_count DESC, low_close_before ASC
LIMIT 12JUNS closed below $1 on 21 of those final 30 sessions, with a low close of $0.077. The panel holds 12 names, and the shape of the bars is the point: this is the low-priced end of the market, not the household tickers most readers hold. Large, liquid companies do split their stock, and when they do it runs the other way. Recent forward stock splits is the other side of that ledger, and it reads very differently.
What a reverse split changes, and what it does not
- The share count falls by the ratio and the quoted price rises by the same ratio. The market value of the holding at that moment is the number it was the day before.
- Percentage ownership of the company is unchanged, since every holder is divided by the same figure.
- Cost basis per share rises by the ratio. Total cost basis does not move, and the holding period carries over.
- Listed options are adjusted by the clearing corporation. The deliverable behind each contract changes; the contract itself does not disappear.
- Revenue, cash, debt and market position are untouched. A reverse split is a units change on the equity, in the same way a currency redenomination is a units change on a banknote.
What happens over the following weeks is a separate question from the arithmetic of the split itself, and the two get conflated often. The split is a bookkeeping event with a known outcome. The trading that follows it is not.
How common are reverse splits?
Counting them month by month puts any single list in context. The panel below counts complete calendar months across the trailing year and separates the two directions, so the reverse line can be read against the forward one.
| month | month_label | reverse_splits | forward_splits |
|---|---|---|---|
| 2025-09-01 | Sep 2025 | 95 | 55 |
| 2025-10-01 | Oct 2025 | 88 | 32 |
| 2025-11-01 | Nov 2025 | 69 | 30 |
| 2025-12-01 | Dec 2025 | 129 | 48 |
| 2026-01-01 | Jan 2026 | 69 | 21 |
| 2026-02-01 | Feb 2026 | 89 | 24 |
| 2026-03-01 | Mar 2026 | 135 | 56 |
| 2026-04-01 | Apr 2026 | 97 | 32 |
| 2026-05-01 | May 2026 | 102 | 40 |
| 2026-06-01 | Jun 2026 | 105 | 58 |
| 2026-07-01 | Jul 2026 | 119 | 45 |
| 2026-08-01 | Aug 2026 | 104 | 20 |
The exact SQL behind every number
SELECT
month,
formatDateTime(month, '%b %Y') AS month_label,
countIf(from_shares > to_shares) AS reverse_splits,
countIf(to_shares > from_shares) AS forward_splits
FROM
(
SELECT
ticker,
toStartOfMonth(execution_date) AS month,
any(split_from) AS from_shares,
any(split_to) AS to_shares
FROM global_markets.stocks_splits
WHERE execution_date >= toStartOfMonth(today() - 365)
AND execution_date < toStartOfMonth(today())
AND ticker NOT IN ('SPCX')
GROUP BY ticker, execution_date, month
)
GROUP BY month, month_label
ORDER BY month ASCIn Aug 2026, the most recent complete month in view, the record holds 104 reverse splits against 20 forward ones. The series runs from Sep 2025, which carried 95. Reverse splits are the more numerous of the two in most months, and they arrive in an uneven rhythm rather than a steady drip, since compliance deadlines cluster.
The ratios cluster as well. Grouping three years of reverse splits by size shows where the bulk of them sit.
| ratio_bucket | reverse_splits |
|---|---|
| 1-for-2 to 1-for-4 | 422 |
| 1-for-5 to 1-for-9 | 476 |
| 1-for-10 to 1-for-19 | 962 |
| 1-for-20 to 1-for-49 | 653 |
| 1-for-50 and larger | 533 |
The exact SQL behind every number
SELECT
bucket AS ratio_bucket,
count() AS reverse_splits
FROM
(
SELECT
ticker,
execution_date,
any(split_from) / any(split_to) AS r,
multiIf(
r < 5, '1-for-2 to 1-for-4',
r < 10, '1-for-5 to 1-for-9',
r < 20, '1-for-10 to 1-for-19',
r < 50, '1-for-20 to 1-for-49',
'1-for-50 and larger'
) AS bucket
FROM global_markets.stocks_splits
WHERE execution_date >= today() - 1095
AND execution_date < today()
AND split_from > split_to
AND ticker NOT IN ('SPCX')
GROUP BY ticker, execution_date
)
GROUP BY bucket
ORDER BY min(r) ASCThe smallest bucket on the chart, 1-for-2 to 1-for-4, holds 422 splits over the three-year window. The largest, 1-for-50 and larger, holds 533. A ratio of 1-for-100 or wider belongs to a quoted price that has fallen several orders of magnitude, and those are rare next to the mid-single-digit ratios that clear a $1 threshold with room to spare. To watch the other end of the pipeline, upcoming reverse stock splits lists the ones with an announced effective date still ahead.
FAQ
What is a reverse stock split in simple terms?
It replaces a number of your existing shares with one new share, and multiplies the quoted price by the same number. At 1-for-10, 500 shares at $0.40 become 50 shares at $4.00. The holding is worth the same amount at the moment of the swap.
Do I lose money in a reverse stock split?
The split itself does not remove value from a holding; it restates the same value in fewer, pricier units. The one small exception is a leftover fractional share, which is typically cashed out at the post-split price rather than carried forward.
Why do companies do reverse stock splits?
The most common setting is a listing-compliance one. Nasdaq and the NYSE require a minimum $1.00 bid price for continued listing, and a reverse split multiplies the quoted price by the ratio. Index eligibility rules and institutional mandates with price floors are the other settings where the arithmetic matters.
How do I tell a 1-for-10 from a 10-for-1?
Count the direction of the share change. 1-for-10 leaves you with fewer shares at a higher price, which is a reverse split. 10-for-1 leaves you with more shares at a lower price, which is a forward split. When the wording is ambiguous, check whether the quoted price rose or fell across the effective date.
What happens to my options after a reverse split?
Listed contracts are adjusted rather than cancelled. The clearing corporation restates the deliverable behind each contract so the economics are preserved, which often leaves the position holding an adjusted deliverable rather than the standard 100 shares.
Every panel above ships with the exact SQL beneath it, so the counts, the ratios and the pre-split closes can each be opened and checked. The same questions can be asked in plain English on the Strasmore terminal.