| Market Cap | — | |
| Enterprise Value | — | |
| Revenue | CNY 12.56B | −12.8% |
| Gross Profit | CNY 723.4M | −12.8% |
| EBITDA | CNY 9.5M | −50.4% |
| Net Income | — | — |
| Diluted EPS | -CNY 0.38 | — |
| Free Cash Flow | CNY 114.7M | −53.7% |
Bars are the value as filed for every stored fiscal year (oldest → newest, the latest bar solid); a year the store has no value for is left EMPTY, never drawn as a zero. Free cash flow is operating cash flow less capital expenditures for the same year — the only figure here computed from two lines, and a year missing either one is a gap. The 3y/5y/10y CAGRs are the analytics core’s own (positive-base only); no rate is recomputed on this strip, and no rate is shown for a series the core doesn’t publish one for. Diluted EPS is drawn on ONE share basis: as-filed per-share figures from before a split are stated on the old basis, so where the implied share count breaks (net income ÷ EPS, ±1.45× band — the same acceptance band the API’s own classifier uses) the earlier bars are left undrawn and any CAGR horizon reaching past the break is suppressed rather than shown as a rate across two different bases.
Every bar is a figure as filed. The blue bars are the reported subtotals (Revenue → Gross profit → Operating income → Pretax income), drawn from zero at exactly the number in the filing — never a sum computed here. The coloured steps between them are the filed component lines, applied as decreases (the taxonomy stores expenses as positive magnitudes) or, for “Other non-operating”, exactly as signed in the filing.
Residuals. Whatever part of a reported subtotal-to-subtotal gap the served lines do not name is drawn as its own hatched step and labelled a residual. Stretching a neighbouring step to make the arithmetic close — what a conventional waterfall does — would put a number on screen that nobody filed.
Skipped rungs. This filer does not tag net income for this period (banks, insurers and REITs routinely skip gross profit and operating income), so the bridge jumps straight between the subtotals that exist and the unnamed part of that jump is the residual above.
The ghost. Each dashed outline is the same step in the prior period (2024), anchored at this period’s running level so the reader sees whether the step grew or shrank. It contributes nothing to this period’s arithmetic.
Reconciliation.
| Step | Applied | Running level | % of revenue | 2024 |
|---|---|---|---|---|
| Revenue · reported | CNY 12.56B | CNY 12.56B | 100.0% | CNY 14.40B |
| Cost of revenue | -CNY 11.83B | CNY 723.4M | −94.2% | CNY 13.57B |
| Gross profit · reported | CNY 723.4M | CNY 723.4M | 5.8% | CNY 829.2M |
| Selling & marketing | -CNY 258.6M | CNY 464.8M | −2.1% | CNY 313.9M |
| SG&A | -CNY 69.5M | CNY 395.3M | −0.6% | CNY 70.9M |
| Other (residual) · residual | -CNY 397.7M | -CNY 2.4M | −3.2% | — |
| Operating income · reported | -CNY 2.4M | -CNY 2.4M | −0.0% | CNY 2.1M |
| Interest expense | -CNY 35.6M | -CNY 37.9M | −0.3% | CNY 28.3M |
| Other non-operating | CNY 11.1M | -CNY 26.9M | 0.1% | CNY 595,000 |
| Other (residual) · residual | CNY 4.4M | -CNY 22.5M | 0.0% | — |
| Pretax income · reported | -CNY 22.5M | -CNY 22.5M | −0.2% | -CNY 20.7M |
Cumulative operating cash flow over FY2020–FY2025 is -CNY 893.9M — not positive, so there is no operating-cash pool to allocate and no bridge is drawn. Lenders and other balance-sheet businesses routinely report negative operating cash flow (loan originations run through it); read the cash-flow statement directly below.
| Quality trend | 2025 | Δ vs 2020 | Trend · 6y | vs own | vs sector |
|---|---|---|---|---|---|
| Gross Margin | 5.8% | +1.3pp | p75 | p6 | |
| Operating Margin | −0.0% | +5.8pp | p75 | p29 | |
| Net Margin | — | — | — | — |
No composite. The three scores are not averaged into one “quality” number. They point in different directions (F is a 0–9 count, higher-better; Z is a distress distance, higher-safer; M is a manipulation screen, lower-cleaner) and were fitted on different samples for different questions — a blended figure would be ours, not theirs, and would hide exactly the disagreement that is worth reading.
Sector context. The percentile columns on the trend rows are the ones this payload serves: “vs own” ranks the latest value inside this company’s own served history, “vs sector” inside its sector pool. A blank sector cell means the pool was too thin to rank honestly (or the metric is a currency level, where a cross-currency rank would be meaningless) — never a filled-in guess. The three SCORES carry no sector percentile: the payload’s percentile block covers the served ratios only, so “is this Z good for Consumer Staples?” is a question we cannot answer from what is served, and we don’t pretend to.
No score history. A 12-year F-Score / Z-Score strip is not drawn. The point-in-time factor store carries valuation, returns, margin, momentum and growth factors — not these composites — and recomputing them here from the annual columns would produce a series that disagrees with the headline above (different vintage of facts, different restatement handling). A score that disagrees with itself is a wrong number, so the history is omitted rather than approximated.
The nine named F-Score checks, the Merton distance-to-default / default probability, ROIIC and the growth-durability CAGRs live on FS · Financial Strength; the full ratio grid — every served ratio, with its own trend and both percentiles — is the Ratios section below.
| Line | 2020↗ | 2021↗ | 2022↗ | 2023↗ | 2024↗ | 2025↗ |
|---|---|---|---|---|---|---|
| Revenue | CNY 8.20B | CNY 12.43B | CNY 13.52B | CNY 14.95B | CNY 14.40B | CNY 12.56B |
| YoY % | +51.5% | +8.8% | +10.6% | -3.7% | -12.8% | |
| Cost of Revenue | CNY 7.84B | CNY 11.80B | CNY 12.68B | CNY 14.10B | CNY 13.57B | CNY 11.83B |
| YoY % | +50.6% | +7.4% | +11.2% | -3.7% | -12.8% | |
| Gross Profit | CNY 365.8M | CNY 621.1M | CNY 840.0M | CNY 849.0M | CNY 829.2M | CNY 723.4M |
| YoY % | +69.8% | +35.2% | +1.1% | -2.3% | -12.8% | |
| Selling & Marketing Expense | CNY 399.6M | CNY 513.1M | CNY 457.9M | CNY 448.4M | CNY 313.9M | CNY 258.6M |
| YoY % | +28.4% | -10.8% | -2.1% | -30.0% | -17.6% | |
| SG&A Expense | CNY 128.2M | CNY 207.0M | CNY 205.6M | CNY 224.2M | CNY 70.9M | CNY 69.5M |
| YoY % | +61.4% | -0.7% | +9.0% | -68.4% | -2.0% | |
| Total Operating Expenses | CNY 8.68B | CNY 13.07B | CNY 13.89B | CNY 15.30B | CNY 14.40B | CNY 12.56B |
| YoY % | +50.6% | +6.3% | +10.2% | -5.9% | -12.8% | |
| Operating Income | -CNY 473.3M | -CNY 642.1M | -CNY 371.0M | -CNY 350.1M | CNY 2.1M | -CNY 2.4M |
| Interest Expense | — | — | CNY 13.4M | CNY 20.1M | CNY 28.3M | CNY 35.6M |
| YoY % | +49.8% | +40.7% | +25.6% | |||
| Interest & Investment Income | CNY 6.3M | CNY 9.8M | CNY 8.1M | CNY 8.8M | CNY 7.0M | CNY 3.9M |
| YoY % | +54.9% | -17.0% | +8.8% | -20.3% | -44.8% | |
| Other Non-Operating Income | CNY 3.2M | CNY 14.9M | CNY 8.1M | CNY 7.6M | -CNY 595,000 | CNY 11.1M |
| YoY % | +371.1% | -45.4% | -6.4% | |||
| Impairment of Real Estate | CNY 0 | CNY 0 | CNY 0 | CNY 0 | CNY 0 | CNY 0 |
| Pretax Income | -CNY 467.1M | -CNY 621.0M | -CNY 376.1M | -CNY 353.2M | -CNY 20.7M | -CNY 22.5M |
| Income Tax | CNY 0 | CNY 0 | CNY 0 | CNY 251,000 | CNY 96,000 | CNY 13,000 |
| YoY % | -61.8% | -86.5% | ||||
| Net Income (incl. NCI) | -CNY 467.1M | -CNY 621.0M | -CNY 376.1M | -CNY 353.4M | -CNY 20.8M | -CNY 22.5M |
| Minority Interest (P&L) | CNY 0 | -CNY 27.8M | -CNY 15.3M | -CNY 16.8M | -CNY 8.4M | -CNY 4.1M |
| Net Income to Common | -CNY 456.5M | -CNY 669.8M | -CNY 416.9M | -CNY 392.7M | -CNY 64.7M | -CNY 66.4M |
| EPS (Basic) | -CNY 2.77 | -CNY 4.04 | -CNY 2.50 | -CNY 2.33 | -CNY 0.38 | -CNY 0.38 |
| EPS (Diluted) | -CNY 2.77 | -CNY 4.04 | -CNY 2.50 | -CNY 2.33 | -CNY 0.38 | -CNY 0.38 |
| Weighted Avg Shares (Basic) | 164.8M | 165.9M | 166.6M | 168.6M | 171.8M | 174.0M |
| YoY % | +0.7% | +0.5% | +1.2% | +1.9% | +1.3% | |
| Weighted Avg Shares (Diluted) | 164.8M | 165.9M | 166.6M | 168.6M | 171.8M | 174.0M |
| YoY % | +0.7% | +0.5% | +1.2% | +1.9% | +1.3% |
The sector classification is SIC-derived, not official GICS. Statement lines are XBRL facts as filed with the company's home regulator (SEC EDGAR for US filers; ESEF/EDINET and other national regulators for foreign filers); ratios and other derived figures are computed from them. A blank cell means the tag was absent — never imputed.