Margins varied 25.1% around their average (limit 35%), and no loss years were recorded (limit 2).
- 10y median
- 8.1%
- Worst year
- 5.1%
- Latest · 2025
- 9.0%
# CTT Correios de Portugal (CTT.LS) Canonical: https://gigainvestors.com/s/CTT.LS Analysis as of: 2026-10-16T07:44:46.724Z. Financial observations: FY2007–FY2025. Listing currency: EUR. Reporting currency: EUR. ## Verdict Not a wonderful business Quality tests for Buy: not passed (profit record: pass; earnings resilience is evidence only). Published buy qualification: no. Share price: EUR 5.57 per share; close as of 2026-10-15. Estimated value: low EUR 6.17 per share, central EUR 7.02 per share, high EUR 8.15 per share. Buy at or below the central value EUR 7.02 per share. Valuation as of 2026-10-16T07:44:46.724Z; scenarios are not confidence intervals. Expected annual return: 11.9% at the stated quote. About 11.9% a year at today's price (required return 10.0%). required return 10.0% a year (10% floor; PT 10-year bond 3.9% + 4 points). ## Checklist ### understandable: pass - 2 revenue declines in the last 10 years (informational) - Financial history: 10 years - Years with declining revenue: 2 - Years with a net loss: 0 - Operating margin variation: 0.25× Chart: Operating margin; fiscal year observations. - FY2016: 0.12× - FY2017: 0.07× - FY2018: 0.08× - FY2019: 0.08× - FY2020: 0.05× - FY2021: 0.08× - FY2022: 0.07× - FY2023: 0.13× - FY2024: 0.09× - FY2025: 0.09× ### moat: fail - Years with nonpositive invested capital use equity plus debt and leases; positive earnings with no positive capital are shown above 100%. - ROIC median below threshold - ROIC worst years below threshold (more than 1 bad year allowed) - Recent gross margin fell 14.4pp below the typical margin (limit 4pp) - ROIC, median of available years: 12.2% - ROIC, second-lowest year: 2.6% - Typical minus recent gross margin: 14.4 pp - Typical gross margin (annual median): 22.6% - Recent gross margin (lower of latest and 3-year median): 8.2% - Years with nonpositive capital: 8 - Capital spending / revenue: 3.5% - ROIC including acquisitions, ten-year median: 1.3% Chart: ROIC excluding acquisitions; fiscal year observations. - FY2016: 23.2% - FY2017: 16.3% - FY2018: 20.2% - FY2019: 14.9% - FY2020: 7.0% - FY2021: 2.6% - FY2022: 1.7% - FY2023: 13.8% - FY2024: 10.5% - FY2025: 10.2% ### economics: pass - Owner earnings / net income, 5-yr: 8.29× - Cash conversion uses consolidated totals: No - Owner earnings, five-year total: EUR 1.9B - Net income, five-year total: EUR 232M - Return on incremental invested capital: >100% - Working capital / revenue, annual change: 0.4 pp - Working capital / revenue, change between three-year averages: 9.5 pp - Working capital / revenue, final three-year average: 2.5% Chart: Annual owner cash / profit; fiscal year observations. - FY2021: 0.80× - FY2022: 0.78× - FY2023: 15.74× - FY2024: 18.34× - FY2025: 1.46× ### management: fail - Historical market-dollar context (not the management verdict): 2017 to 2025 (8 years) - buybacks leaned toward cheaper years (informational) - ROIC first 3 years vs last 3 years: 20.2% vs 10.5% - Per-share earnings: 0.18 to 0.38 (three-year endpoint medians) - acquired goodwill and intangibles (proxy) exceeds half of ten-year net income with low and deteriorating ROIC - Management verdict uses per-share economic progress: Yes - Ordinary dilution, 5-year annual growth: -2.4% - Market cap gain: EUR 445M - Cumulative retained earnings: EUR 50M - Diluted shares, 5-year annual growth: -2.4% - $1 test, starting fiscal year: FY2017 - $1 test, ending fiscal year: FY2025 - Per-share value growth: 13.2% - Per-share value change: EUR 0.20 - Per-share value, starting three-year median: EUR 0.18 - Per-share value, ending three-year median: EUR 0.38 - Buybacks concentrated in cheaper years (correlation): 0.60 - Average buyback yield: 2.4% - Buyback history: 5 years - Debt-funded buybacks: No - Acquisition spending: EUR 235M - Cumulative net income, 10 years: EUR 386M - ROIC, first three-year median: 20.2% - ROIC, last three-year median: 10.5% Chart: Earnings per share; fiscal year observations. - FY2017: EUR 0.18 - FY2018: EUR 0.13 - FY2019: EUR 0.19 - FY2020: EUR 0.11 - FY2021: EUR 0.26 - FY2022: EUR 0.25 - FY2023: EUR 0.43 - FY2024: EUR 0.33 - FY2025: EUR 0.38 ### accounting: pass - Sloan accruals: -1.7% - Receivables to sales index (DSRI): 1.16× - Restructuring years, last five: 0 - Earnings backed by cash: Yes - Operating cash / earnings: 3.12× - Accounting red flags: 0 - Goodwill and intangibles / equity: 1.03× Chart: Sloan accruals; fiscal year observations. - FY2016: -15.6% - FY2017: -16.4% - FY2018: -4.1% - FY2019: -11.0% - FY2020: -9.2% - FY2021: -0.4% - FY2022: -3.0% - FY2023: -19.9% - FY2024: -15.5% - FY2025: -1.7% ## Holders ## Price story Down 28% since Apr 2025 · sales +15.8% Story as of 2026-10-16T10:00:13.175Z; price observation 2026-10-15. Price needs cash profits to shrink 2% a year for ten years ### Sales · FY2024–2025 sales +15.8%; source https://eodhd.com/financial-apis/stock-etfs-fundamental-data-feeds/; observed 2026-10-16. - FY2016: EUR 670M - FY2017: EUR 679M - FY2018: EUR 694M - FY2019: EUR 717M - FY2020: EUR 673M - FY2021: EUR 758M - FY2022: EUR 789M - FY2023: EUR 943M - FY2024: EUR 1.1B - FY2025: EUR 1.2B ### Gross margin · FY2025 gross margin 8.2%; source https://eodhd.com/financial-apis/stock-etfs-fundamental-data-feeds/; observed 2026-10-16. - FY2016: 12.7% - FY2017: 21.2% - FY2018: 31.4% - FY2019: 24.1% - FY2020: 97.1% - FY2021: 96.5% - FY2022: 94.1% - FY2023: 8.4% - FY2024: 7.7% - FY2025: 8.2% ## Owner memo Memo as of 2026-10-16T08:06:05.509Z. ### How it makes money Operates in integrated freight & logistics; annual sales are EUR 1.2 billion. - Source: https://eodhd.com/api/fundamentals/CTT.LS.json#2025-12-31 (filed 2026-10-16T07:44:46.724Z); FY2025: revenue 1231803702; grossProfit 100950747; margin = grossProfit / revenue. ### Why customers stay Margins ranged from 7.7% to 8.4% during 2023–25; it earns 12.2% on its capital. - Source: https://eodhd.com/api/fundamentals/CTT.LS.json#2023-12-31 (filed 2026-10-16T07:44:46.724Z); FY2023: grossProfit / revenue = 8.4%. - Source: https://eodhd.com/api/fundamentals/CTT.LS.json#2024-12-31 (filed 2026-10-16T07:44:46.724Z); FY2024: grossProfit / revenue = 7.7%. - Source: https://eodhd.com/api/fundamentals/CTT.LS.json#2025-12-31 (filed 2026-10-16T07:44:46.724Z); FY2025: grossProfit / revenue = 8.2%. - Source: https://eodhd.com/financial-apis/stock-etfs-fundamental-data-feeds/ (filed 2026-10-16T07:44:46.724Z); 10-year return on capital observations [[2016,0.23234730550659852],[2017,0.1631362090314145],[2018,0.20235565797865845],[2019,0.14922453465390995],[2020,0.07011547908684986],[2021,0.02589185966406265],[2022,0.0169657404056509],[2023,0.13843085811957798],[2024,0.10493075916647582],[2025,0.10168186435728468]]; median 0.1216808086430269. ROIC follows the displayed moat series; financial companies use return on tangible equity. ### Where the cash goes Paid dividends in 9 of 10 years; bought back EUR 14.1 million of shares. - Source: https://eodhd.com/api/fundamentals/CTT.LS.json#2016-12-31 (filed 2026-10-16T07:44:46.724Z); FY2016: growth capex 0; upkeep 29513662; owner earnings 53943012. Growth capex / owner earnings = 0. - Source: https://eodhd.com/api/fundamentals/CTT.LS.json#2017-12-31 (filed 2026-10-16T07:44:46.724Z); FY2017: growth capex 0; upkeep 20696380; owner earnings 270380856. Growth capex / owner earnings = 0. - Source: https://eodhd.com/api/fundamentals/CTT.LS.json#2018-12-31 (filed 2026-10-16T07:44:46.724Z); FY2018: growth capex 0; upkeep 12729185; owner earnings 78718365. Growth capex / owner earnings = 0. - Source: https://eodhd.com/api/fundamentals/CTT.LS.json#2019-12-31 (filed 2026-10-16T07:44:46.724Z); FY2019: growth capex 0; upkeep 18752159; owner earnings 47876104.4. Growth capex / owner earnings = 0. - Source: https://eodhd.com/financial-apis/stock-etfs-fundamental-data-feeds/ (filed 2026-10-16T07:44:46.724Z); FY2020: growth capex 0; upkeep 37828805; owner earnings 16613630.599999998. Growth capex / owner earnings = 0. - Source: https://eodhd.com/financial-apis/stock-etfs-fundamental-data-feeds/ (filed 2026-10-16T07:44:46.724Z); FY2021: growth capex 0; upkeep 31121437; owner earnings 30650348.799999997. Growth capex / owner earnings = 0. - Source: https://query2.finance.yahoo.com/ws/fundamentals-timeseries/v1/finance/timeseries/CTT.LS (filed 2026-10-16T07:44:46.724Z); FY2022: growth capex 0; upkeep 33881165; owner earnings 28221857. Growth capex / owner earnings = 0. - Source: https://eodhd.com/api/fundamentals/CTT.LS.json#2023-12-31 (filed 2026-10-16T07:44:46.724Z); FY2023: growth capex 0; upkeep 30840843; owner earnings 952279254. Growth capex / owner earnings = 0. - Source: https://eodhd.com/api/fundamentals/CTT.LS.json#2024-12-31 (filed 2026-10-16T07:44:46.724Z); FY2024: growth capex 0; upkeep 37979682; owner earnings 835205655.7448581. Growth capex / owner earnings = 0. - Source: https://eodhd.com/api/fundamentals/CTT.LS.json#2025-12-31 (filed 2026-10-16T07:44:46.724Z); FY2025: growth capex 0; upkeep 42922581; owner earnings 74029119.5538737. Growth capex / owner earnings = 0. - Source: https://eodhd.com/financial-apis/stock-etfs-fundamental-data-feeds/ (filed 2026-10-16T07:44:46.724Z); Dividend observations: [[2016,70264792],[2017,72000000],[2018,57000000],[2019,15000000],[2020,0],[2021,12750000],[2022,17656441],[2023,17888170],[2024,24967663],[2025,24374968]]. Zero only counted when supported by a complete cash-flow statement. - Source: https://eodhd.com/api/fundamentals/CTT.LS.json#2025-12-31 (filed 2026-10-16T07:44:46.724Z); FY2025: cash repurchases 14077816 EUR. ### Are managers owners Insiders own 39.1% of the company. - Source: https://eodhd.com/financial-apis/stock-etfs-fundamental-data-feeds/ (filed 2026-10-16); CTT.LS SharesStats.PercentInsiders = 39.138 percentage points; cache date 2026-10-16. ### What the price says The price assumes cash profits shrink 2% yearly over ten years. - Source: https://eodhd.com/financial-apis/stock-etfs-fundamental-data-feeds/ (filed 2026-10-16T07:44:46.724Z); Ten-year compound average after fade. Initial solved rate -0.04118928995593224. Price 5.565; FX 1; discount 0.1; same standard ten-year fade to terminal 0.03. Closing-price date 2026-10-15. ## Monthly share-price history (EUR per share) - 2016-11: EUR 6.06 per share - 2016-12: EUR 6.65 per share - 2017-01: EUR 5.32 per share - 2017-02: EUR 5.23 per share - 2017-03: EUR 5.29 per share - 2017-04: EUR 5.41 per share - 2017-05: EUR 5.59 per share - 2017-06: EUR 5.72 per share - 2017-07: EUR 5.69 per share - 2017-08: EUR 5.37 per share - 2017-09: EUR 5.26 per share - 2017-10: EUR 5.22 per share - 2017-11: EUR 3.35 per share - 2017-12: EUR 3.62 per share - 2018-01: EUR 3.56 per share - 2018-02: EUR 3.52 per share - 2018-03: EUR 3.23 per share - 2018-04: EUR 3.16 per share - 2018-05: EUR 2.93 per share - 2018-06: EUR 3.10 per share - 2018-07: EUR 3.10 per share - 2018-08: EUR 3.46 per share - 2018-09: EUR 3.48 per share - 2018-10: EUR 3.50 per share - 2018-11: EUR 3.70 per share - 2018-12: EUR 3.04 per share - 2019-01: EUR 3.25 per share - 2019-02: EUR 2.86 per share - 2019-03: EUR 2.66 per share - 2019-04: EUR 2.61 per share - 2019-05: EUR 2.39 per share - 2019-06: EUR 2.18 per share - 2019-07: EUR 1.99 per share - 2019-08: EUR 1.94 per share - 2019-09: EUR 2.19 per share - 2019-10: EUR 2.96 per share - 2019-11: EUR 3.17 per share - 2019-12: EUR 3.29 per share - 2020-01: EUR 3.02 per share - 2020-02: EUR 2.39 per share - 2020-03: EUR 2.36 per share - 2020-04: EUR 2.22 per share - 2020-05: EUR 2.12 per share - 2020-06: EUR 2.18 per share - 2020-07: EUR 2.35 per share - 2020-08: EUR 2.69 per share - 2020-09: EUR 2.60 per share - 2020-10: EUR 2.17 per share - 2020-11: EUR 2.52 per share - 2020-12: EUR 2.43 per share - 2021-01: EUR 2.47 per share - 2021-02: EUR 2.58 per share - 2021-03: EUR 3.48 per share - 2021-04: EUR 3.92 per share - 2021-05: EUR 4.41 per share - 2021-06: EUR 4.97 per share - 2021-07: EUR 4.53 per share - 2021-08: EUR 4.75 per share - 2021-09: EUR 4.80 per share - 2021-10: EUR 4.91 per share - 2021-11: EUR 4.28 per share - 2021-12: EUR 4.70 per share - 2022-01: EUR 4.47 per share - 2022-02: EUR 4.47 per share - 2022-03: EUR 4.65 per share - 2022-04: EUR 4.44 per share - 2022-05: EUR 3.86 per share - 2022-06: EUR 3.22 per share - 2022-07: EUR 3.44 per share - 2022-08: EUR 3.35 per share - 2022-09: EUR 2.80 per share - 2022-10: EUR 3.22 per share - 2022-11: EUR 3.18 per share - 2022-12: EUR 3.08 per share - 2023-01: EUR 3.56 per share - 2023-02: EUR 3.75 per share - 2023-03: EUR 3.62 per share - 2023-04: EUR 3.74 per share - 2023-05: EUR 3.26 per share - 2023-06: EUR 3.48 per share - 2023-07: EUR 3.59 per share - 2023-08: EUR 3.38 per share - 2023-09: EUR 3.47 per share - 2023-10: EUR 3.61 per share - 2023-11: EUR 3.56 per share - 2023-12: EUR 3.49 per share - 2024-01: EUR 3.68 per share - 2024-02: EUR 3.63 per share - 2024-03: EUR 4.13 per share - 2024-04: EUR 4.41 per share - 2024-05: EUR 4.38 per share - 2024-06: EUR 4.19 per share - 2024-07: EUR 4.18 per share - 2024-08: EUR 4.47 per share - 2024-09: EUR 4.39 per share - 2024-10: EUR 4.28 per share - 2024-11: EUR 4.47 per share - 2024-12: EUR 5.40 per share - 2025-01: EUR 5.89 per share - 2025-02: EUR 6.96 per share - 2025-03: EUR 7.48 per share - 2025-04: EUR 7.77 per share - 2025-05: EUR 7.40 per share - 2025-06: EUR 7.55 per share - 2025-07: EUR 7.40 per share - 2025-08: EUR 7.34 per share - 2025-09: EUR 7.25 per share - 2025-10: EUR 7.55 per share - 2025-11: EUR 7.05 per share - 2025-12: EUR 7.43 per share - 2026-01: EUR 6.79 per share - 2026-02: EUR 7.13 per share - 2026-03: EUR 6.03 per share - 2026-04: EUR 6.41 per share - 2026-05: EUR 6.07 per share - 2026-06: EUR 5.78 per share - 2026-07: EUR 6.16 per share - 2026-08: EUR 6.55 per share - 2026-09: EUR 6.14 per share - 2026-10: EUR 5.42 per share ## Annual estimated value (EUR per share) - FY2017: low EUR 7.05 per share, central EUR 8.02 per share, high EUR 9.31 per share - FY2018: low EUR 5.74 per share, central EUR 6.53 per share, high EUR 7.58 per share - FY2019: low EUR 4.21 per share, central EUR 4.79 per share, high EUR 5.56 per share - FY2020: low EUR 3.95 per share, central EUR 4.49 per share, high EUR 5.22 per share - FY2021: low EUR 9.44 per share, central EUR 9.94 per share, high EUR 10.62 per share - FY2022: low EUR 5.36 per share, central EUR 5.69 per share, high EUR 6.12 per share - FY2023: low EUR 2.94 per share, central EUR 3.35 per share, high EUR 3.89 per share - FY2024: low EUR 3.43 per share, central EUR 3.91 per share, high EUR 4.54 per share - FY2025: low EUR 6.09 per share, central EUR 6.93 per share, high EUR 8.04 per share Historical values use today's bond yield for every fiscal year Historical values use today's FX rate into trading currency for every fiscal year Historical values use current restated fundamentals and current commodity classification; they are not point-in-time estimates Prior published observations retained from 2026-10-15T06:50:39.725Z where newer inputs omit a numeric field or fiscal period. ## Sources Estimates depend on assumptions and are not guarantees or investment advice. Underlying data remains subject to its source licenses; public reading does not grant bulk redistribution rights.
CTT · LS
PSI
Not a wonderful business
2 quality tests fail. A lower price would not fix the business.
Margins varied 25.1% around their average (limit 35%), and no loss years were recorded (limit 2).
Capital return excluding acquisitions: median 12.2% (minimum 15%), and the second-worst year 2.6% (minimum 10%), and gross margin fell 14.4 percentage points (limit 4).
Each $1 of profit left $8.29 for owners over five years (minimum $0.80).
Acquisitions used 60.7% of profits (limit 50%) while returns fell to 10.5% (minimum 15% and two-thirds of their starting level).
Profits were backed by cash: accruals were -1.7% of assets (limit 10%).
Profit record · pass 0 loss years in 10 (at most 2), mean operating margin 8.5%, three-year average owner earnings per share 4.46 EUR.
| Value range | EUR 6.17 – EUR 8.15 |
|---|---|
| Buy at or below | Central value EUR 7.02 |
| Discount to value | 1 − 5.57 / 7.02 = 20.7% |
| Return / year | About 11.9% a year at today's price (required return 10.0%) |
| Cash-flow inputs | Owner cash EUR 0.56/share; 0.0% growth for 5 years, then fades to 3.0%; excess cash EUR 0.00/share today. |
| Required return | 10.0% / year, earned by construction at the central value |