Every figure this model derived for CPT, the value it took, and
the element in the company's own XBRL it was read from — so any of it can be checked
against the filing rather than taken on trust.
As at 2026-06-30.
The figures, and where each came from
This is the part no other screener shows. Each figure below names the XBRL element it
was read from, so it can be checked against the filing itself.
The figures themselves rather than their scores — what somebody looking up
CPT on one particular measure came for.
Ratio
Value
dilution pct
-0.1
growth cv
3.08
interest cover
-1.81
net debt ebitda
13.77
operating margin
-2041.7
revenue growth
56.82
revenue growth per share
56.97
roic
-2.46
rule of 40
-1984.89
sbc pct revenue
128.31
What to be careful about
What this model itself distrusts about CPT's figures. Written by the
derivation as it ran, not added afterwards.
WITHHELD: cash operating margin, owner earnings margin, fcf margin, net margin, ocf margin -- ocf margin came out at 6,154% against a scale that tops out near 2,250%, which is arithmetic on a revenue figure of 13,121,000 rather than a margin. The figure is absent rather than corrected: there is no right value to put here.
no operating income tagged; derived as revenue minus CostsAndExpenses
no market cap; set `market_cap` in overrides.yaml
gross profit not tagged; rebuilt from RevenueFromContractWithCustomerExcludingAssessedTax - CostOfPropertyRepairsAndMaintenance
no forward EPS estimate; growth rests on filings only. Analyst consensus is not published in XBRL, so it has to be fetched from a data provider or set by hand in overrides.yaml as `eps_growth_2y`
quality rests on 3 of 5 inputs; not tagged: owner earnings, cash operating margin
valuation DROPPED from the total: only 0 of 2 inputs could be computed (ev sales, ev owner earnings not tagged), so the score is not meaningful. Its weight is spread over the other dimensions
durability rests on 3 of 4 inputs; not tagged: contracted coverage
resilience rests on 2 of 3 inputs; not tagged: liquidity
growth DROPPED from the total: only 2 of 4 inputs could be computed (margin trend, margin recent not tagged), so the score is not meaningful. Its weight is spread over the other dimensions
2 of 5 dimensions could not be measured (valuation, growth -- 45% of the model), so this row is not comparable with the others; its total rests on what was left