BrazilCT 2024 and 2025Last heat: Lexus WSL Finals Fiji 2025
Italo
Ferreira
- Trim
- 1.22per heat, ± 0.87 (95%)
- Rated heats
- 72at or above 16
- Prior weight
- 0.0364% of the rating
- Heats surfed
- 7222 events
- Heats won
- 46of 72
- Mean heat total
- 13.50over 72
- Best heat
- 17.83SHISEIDO Tahiti Pro
The swell · FerreiraCT 2024 and 2025 · 72 rated heats
Scroll to ride 72 heats
The swell · four moments from 72 rated heats
- Heat 1 · Lexus Pipe Pro 2024 · Opening RoundThe low tide.12.10 against an expected 10.72 (Pipeline, 8-10', calm). His Trim bottoms out at 0.062.
- Heat 12 · Western Australia Margaret River Pro 2024 · Opening RoundThe highest crest.17.00 (Main Break, 1-4', offshore) against an expected 10.72. A gap of +6.28.
- Heat 65 · Corona Cero Open J-Bay 2025 · Opening RoundThe deepest trough.6.10 against an expected 10.72: a gap of −4.62, his largest miss in these seasons.
- Heat 72 · Lexus WSL Finals Fiji 2025 · Match 2Where it ends.13.67 against 12.70, leaving his Trim at 1.219.
Trim timeline
Every recorded heat, 2024 and 2025
Reading it — the line is Trim after each heat: points per heat above or below what that round usually yields. It starts at the prior, 0.000, and moves by a decayed share of each heat's deviation. The bars below are those deviations, one per heat, on their own scale. Neither panel is a prediction.
Extremes — best +6.28 at 2024 Western Australia Margaret River Pro · Opening Round heat 7; worst −4.62 at 2025 Corona Cero Open J-Bay · Opening Round heat 1. Axis to ±7, the exact maximum rounded outward.
How this is computed
trim joined to datum, in the run's own ordering — 72 of this surfer's 72 heats. Trim is an EWMA of the deviation from Datum (ewma_residual_hl15, half-life 15 heats, prior 0, computed 2026-10-17 over 1845 entries and 73 surfers). Datum is a ridge on the round alone, so “expected” is what that round usually yields, not what these conditions or this break usually yield. The decay earns very little: walk-forward RMSE 2.9098 against 2.9123 for a shrunk flat mean of the same residuals — paired t 0.56. Predicting zero for everyone scores 2.9688. The ordering is what Trim is for; the half-life is not doing the work.Heat log
72 heats across 22 events
| Counting rides | Conditions | Progression | ||||||
|---|---|---|---|---|---|---|---|---|
| 1 | 2024 Lexus Pipe ProOpening Round · heat 12 · Pipeline | 2nd | 12.10 | 6.10 + 6.00 | +1.38exp 10.72 | 0.0620.955 | 8-10' · Calm | Adv to R/32 - HT 6 |
| 2 | 2024 Lexus Pipe ProRound of 32 · heat 6 | 2nd | 12.04 | 8.87 + 3.17 | +0.30exp 11.74 | 0.0730.912 | 8-10' · Calm | — |
| 3 | 2024 Hurley Pro Sunset BeachOpening Round · heat 10 · Sunset Beach | 1st | 13.00 | 7.67 + 5.33 | +2.28exp 10.72 | 0.1720.871 | 6-8' · Cross | Adv to R/32 - HT 14 |
| 4 | 2024 Hurley Pro Sunset BeachRound of 32 · heat 14 · Sunset Beach | 1st | 12.34 | 7.17 + 5.17 | +0.60exp 11.74 | 0.1920.831 | 10-14' · Cross | — |
| 5 | 2024 Hurley Pro Sunset BeachRound of 16 · heat 7 · Sunset Beach | 1st | 13.23 | 7.00 + 6.23 | +1.19exp 12.04 | 0.2370.794 | 10-14' · Cross | — |
| 6 | 2024 Hurley Pro Sunset BeachQuarterfinals · heat 4 · Sunset Beach | 2nd | 15.60 | 8.10 + 7.50 | +2.55exp 13.05 | 0.3410.758 | 4-6' · Light | — |
| 7 | 2024 MEO Rip Curl Pro PortugalOpening Round · heat 11 · Supertubos | 2nd | 12.93 | 7.43 + 5.50 | +2.21exp 10.72 | 0.4260.724 | 4-6' · Offshore | Adv to R/32 - HT 6 |
| 8 | 2024 MEO Rip Curl Pro PortugalRound of 32 · heat 6 · Supertubos | 1st | 17.17 | 8.67 + 8.50 | +5.43exp 11.74 | 0.6510.691 | 4-6' · Cross | — |
| 9 | 2024 MEO Rip Curl Pro PortugalRound of 16 · heat 3 · Supertubos | 2nd | 13.40 | 7.07 + 6.33 | +1.36exp 12.04 | 0.6830.660 | 4-6' · Cross | — |
| 10 | 2024 Rip Curl Pro Bells BeachOpening Round · heat 12 · Bells Beach | 2nd | 10.00 | 6.00 + 4.00 | −0.72exp 10.72 | 0.6200.630 | 4-6' · Offshore | Adv to R/32 - HT 15 |
| 11 | 2024 Rip Curl Pro Bells BeachRound of 32 · heat 15 · Winki Pop | 2nd | 11.43 | 6.03 + 5.40 | −0.31exp 11.74 | 0.5780.602 | 1-4' · Onshore | — |
| 12 | 2024 Western Australia Margaret River ProOpening Round · heat 7 · Main Break | 1st | 17.00 | 8.50 + 8.50 | +6.28exp 10.72 | 0.8350.574 | 1-4' · Offshore | Adv to R/32 - HT 15 |
| 13 | 2024 Western Australia Margaret River ProRound of 32 · heat 15 · Main Break | 1st | 10.93 | 5.83 + 5.10 | −0.81exp 11.74 | 0.7610.548 | 1-4' · Onshore | — |
| 14 | 2024 Western Australia Margaret River ProRound of 16 · heat 8 · Main Break | 2nd | 11.87 | 6.00 + 5.87 | −0.17exp 12.04 | 0.7190.524 | 6-8' · Offshore | — |
| 15 | 2024 SHISEIDO Tahiti ProOpening Round · heat 4 · Teahupo'o | 1st | 13.30 | 6.83 + 6.47 | +2.58exp 10.72 | 0.8030.500 | 4-6' · Offshore | Adv to R/16 - HT 4 |
| 16 | 2024 SHISEIDO Tahiti ProRound of 16 · heat 4 · Teahupo'o | 1st | 16.60 | 9.00 + 7.60 | +4.56exp 12.04 | 0.9720.477 | 8-10' · Calm | — |
| 17 | 2024 SHISEIDO Tahiti ProQuarterfinals · heat 2 · Teahupo'o | 1st | 17.83 | 9.83 + 8.00 | +4.78exp 13.05 | 1.1440.456 | 8-10' · Offshore | — |
| 18 | 2024 SHISEIDO Tahiti ProSemifinals · heat 1 · Teahupo'o | 1st | 13.27 | 7.60 + 5.67 | −0.48exp 13.75 | 1.0710.435 | 8-10' · Offshore | — |
| 19 | 2024 SHISEIDO Tahiti ProFinal · heat 1 · Teahupo'o | 1st | 17.70 | 8.93 + 8.77 | +3.21exp 14.49 | 1.1680.416 | 8-10' · Offshore | — |
| 20 | 2024 Surf City El Salvador ProOpening Round · heat 5 · Punta Roca | 2nd | 13.93 | 7.00 + 6.93 | +3.21exp 10.72 | 1.2600.397 | 4-6' · Light | Adv to ER - HT 1 |
| 21 | 2024 Surf City El Salvador ProElimination Round · heat 1 · Punta Roca | 2nd | 12.40 | 6.50 + 5.90 | +0.93exp 11.47 | 1.2450.379 | 4-6' · Light | Eliminated |
| 22 | 2024 VIVO Rio ProOpening Round · heat 7 · Itaúna | 1st | 14.50 | 7.50 + 7.00 | +3.78exp 10.72 | 1.3590.362 | 4-6' · Calm | Adv to R/16 - HT 2 |
| 23 | 2024 VIVO Rio ProRound of 16 · heat 2 · Itaúna | 1st | 17.50 | 9.00 + 8.50 | +5.46exp 12.04 | 1.5440.345 | 6-8' · Onshore | — |
| 24 | 2024 VIVO Rio ProQuarterfinals · heat 1 · Itaúna | 1st | 10.03 | 5.03 + 5.00 | −3.02exp 13.05 | 1.3380.330 | 6-8' · Offshore | — |
| 25 | 2024 VIVO Rio ProSemifinals · heat 1 · Itaúna | 1st | 16.60 | 9.00 + 7.60 | +2.85exp 13.75 | 1.4070.315 | 6-8' · Offshore | — |
| 26 | 2024 VIVO Rio ProFinal · heat 1 · Itaúna | 1st | 13.67 | 7.00 + 6.67 | −0.82exp 14.49 | 1.3060.301 | 6-8' · Offshore | — |
| 27 | 2024 Corona Fiji ProOpening Round · heat 1 · Cloudbreak | 1st | 10.07 | 5.40 + 4.67 | −0.65exp 10.72 | 1.2180.287 | 4-6' · Offshore | Adv to R/16 - HT 7 |
| 28 | 2024 Corona Fiji ProRound of 16 · heat 7 · Cloudbreak | 2nd | 8.80 | 4.80 + 4.00 | −3.24exp 12.04 | 1.0160.274 | 4-6' · Cross | — |
| 29 | 2024 Lexus WSL Finals FinalsMatch 1 · Lower Trestles | 1st | 15.47 | 7.80 + 7.67 | +3.35exp 12.12 | 1.1220.262 | 4-6' · Light | — |
| 30 | 2024 Lexus WSL Finals FinalsMatch 2 · Lower Trestles | 1st | 14.57 | 7.57 + 7.00 | +1.87exp 12.70 | 1.1550.250 | 4-6' · Light | — |
| 31 | 2024 Lexus WSL Finals FinalsMatch 3 · Lower Trestles | 1st | 14.47 | 7.60 + 6.87 | +1.31exp 13.16 | 1.1620.239 | 4-6' · Light | — |
| 32 | 2024 Lexus WSL Finals FinalsTitle Match · heat 1 · Lower Trestlesbest of three · lost 0–2 | 2nd | 15.33 | 8.00 + 7.33 | +2.01exp 13.32 | 1.2010.228 | 4-6' · Light | — |
| 33 | 2024 Lexus WSL Finals FinalsTitle Match · heat 2 · Lower Trestlesbest of three · lost 0–2 | 2nd | 16.30 | 8.17 + 8.13 | +2.98exp 13.32 | 1.2810.218 | 4-6' · Light | — |
| 34 | 2025 Lexus Pipe ProOpening Round · heat 5 · Pipeline | 2nd | 8.00 | 5.00 + 3.00 | −2.72exp 10.72 | 1.1000.208 | 6-8' · Calm | Adv to R/32 - HT 1 |
| 35 | 2025 Lexus Pipe ProRound of 32 · heat 1 · Pipeline | 1st | 13.00 | 7.50 + 5.50 | +1.26exp 11.74 | 1.1070.198 | 6-8' · Calm | — |
| 36 | 2025 Lexus Pipe ProRound of 16 · heat 1 · Pipeline | 1st | 14.40 | 7.83 + 6.57 | +2.36exp 12.04 | 1.1640.189 | 6-8' · Calm | — |
| 37 | 2025 Lexus Pipe ProQuarterfinals · heat 1 · Pipeline | 1st | 15.17 | 8.50 + 6.67 | +2.12exp 13.05 | 1.2070.181 | 4-6' · Calm | — |
| 38 | 2025 Lexus Pipe ProSemifinals · heat 1 · Pipeline | 2nd | 10.33 | 8.50 + 1.83 | −3.42exp 13.75 | 0.9980.173 | 4-6' · Calm | — |
| 39 | 2025 Surf Abu Dhabi ProQualifying Round · heat 6 · Surf Abu Dhabi | 1st | 12.90 | — | +1.73exp 11.17 | 1.0310.165 | not published | Adv to R16 - HT 5 |
| 40 | 2025 Surf Abu Dhabi ProRound of 16 · heat 5 | 1st | 15.17 | — | +3.13exp 12.04 | 1.1260.157 | not published | Adv to QF - HT 3 |
| 41 | 2025 Surf Abu Dhabi ProQuarterfinals · heat 3 | 1st | 16.80 | — | +3.75exp 13.05 | 1.2440.150 | not published | Adv to SF - HT 2 |
| 42 | 2025 Surf Abu Dhabi ProSemifinals · heat 2 | 1st | 17.37 | — | +3.62exp 13.75 | 1.3520.144 | not published | Adv to F |
| 43 | 2025 Surf Abu Dhabi ProFinal · heat 1 | 1st | 17.27 | — | +2.78exp 14.49 | 1.4160.137 | not published | Champion |
| 44 | 2025 MEO Rip Curl Pro PortugalOpening Round · heat 6 · Supertubos | 1st | 16.43 | 8.83 + 7.60 | +5.71exp 10.72 | 1.6100.131 | 4-6' · Calm | Adv to R/32 - HT 9 |
| 45 | 2025 MEO Rip Curl Pro PortugalRound of 32 · heat 9 · Supertubos | 1st | 13.67 | 8.17 + 5.50 | +1.93exp 11.74 | 1.6240.125 | 4-6' · Onshore | — |
| 46 | 2025 MEO Rip Curl Pro PortugalRound of 16 · heat 5 · Supertubos | 1st | 12.84 | 9.17 + 3.67 | +0.80exp 12.04 | 1.5870.119 | 4-6' · Cross | — |
| 47 | 2025 MEO Rip Curl Pro PortugalQuarterfinals · heat 3 · Supertubos | 1st | 9.87 | 6.67 + 3.20 | −3.18exp 13.05 | 1.3720.114 | 4-6' · Cross | — |
| 48 | 2025 MEO Rip Curl Pro PortugalSemifinals · heat 2 · Supertubos | 1st | 11.04 | 5.67 + 5.37 | −2.71exp 13.75 | 1.1880.109 | 4-6' · Cross | — |
| 49 | 2025 MEO Rip Curl Pro PortugalFinal · heat 1 · Supertubos | 2nd | 12.43 | 7.43 + 5.00 | −2.06exp 14.49 | 1.0410.104 | 4-6' · Cross | — |
| 50 | 2025 Surf City El Salvador ProOpening Round · heat 6 · Punta Roca | 1st | 14.67 | 8.00 + 6.67 | +3.95exp 10.72 | 1.1720.099 | 4-6' · Calm | Adv to R/32 - HT 9 |
| 51 | 2025 Surf City El Salvador ProRound of 32 · heat 9 · Punta Roca | 1st | 13.40 | 7.33 + 6.07 | +1.66exp 11.74 | 1.1940.095 | 4-6' · Calm | — |
| 52 | 2025 Surf City El Salvador ProRound of 16 · heat 5 · Punta Roca | 1st | 14.26 | 7.33 + 6.93 | +2.22exp 12.04 | 1.2400.090 | 6-8' · Offshore | — |
| 53 | 2025 Surf City El Salvador ProQuarterfinals · heat 3 · Punta Roca | 2nd | 9.77 | 5.17 + 4.60 | −3.28exp 13.05 | 1.0370.086 | 4-6' · Calm | — |
| 54 | 2025 Rip Curl Pro Bells BeachOpening Round · heat 6 · Bells Beach | 1st | 15.67 | 8.50 + 7.17 | +4.95exp 10.72 | 1.2130.082 | 4-6' · Onshore | Adv to R/32 - HT 9 |
| 55 | 2025 Rip Curl Pro Bells BeachRound of 32 · heat 9 | 2nd | 9.67 | 5.67 + 4.00 | −2.07exp 11.74 | 1.0650.079 | 4-6' · Calm | — |
| 56 | 2025 Bonsoy Gold Coast ProOpening Round · heat 6 · Burleigh | 1st | 16.03 | 8.03 + 8.00 | +5.31exp 10.72 | 1.2560.075 | 1-4' · Offshore | Adv to R/32 - HT 9 |
| 57 | 2025 Bonsoy Gold Coast ProRound of 32 · heat 9 · Burleigh | 2nd | 8.00 | 4.23 + 3.77 | −3.74exp 11.74 | 1.0310.072 | 4-6' · Light | — |
| 58 | 2025 Western Australia Margaret River ProOpening Round · heat 6 · Main Break | 1st | 14.10 | 7.33 + 6.77 | +3.38exp 10.72 | 1.1370.069 | 4-6' · Offshore | Adv to R/32 - HT 9 |
| 59 | 2025 Western Australia Margaret River ProRound of 32 · heat 9 · Main Break | 2nd | 12.87 | 6.87 + 6.00 | +1.13exp 11.74 | 1.1360.065 | 8-10' · Offshore | — |
| 60 | 2025 Lexus Trestles ProOpening Round · heat 3 · Lower Trestles | 1st | 15.17 | 8.00 + 7.17 | +4.45exp 10.72 | 1.2860.063 | 4-6' · Light | Adv to R/16 - HT 1 |
| 61 | 2025 Lexus Trestles ProRound of 16 · heat 1 · Lower Trestles | 2nd | 16.20 | 8.37 + 7.83 | +4.16exp 12.04 | 1.4150.060 | 4-6' · Calm | — |
| 62 | 2025 VIVO Rio ProOpening Round · heat 1 · Itaúna | 1st | 12.43 | 6.83 + 5.60 | +1.71exp 10.72 | 1.4290.057 | 1-4' · Calm | Adv to R/16 - HT 7 |
| 63 | 2025 VIVO Rio ProRound of 16 · heat 7 · Itaúna | 1st | 14.33 | 9.33 + 5.00 | +2.29exp 12.04 | 1.4670.054 | 4-6' · Offshore | — |
| 64 | 2025 VIVO Rio ProQuarterfinals · heat 4 · Itaúna | 2nd | 13.40 | 7.00 + 6.40 | +0.35exp 13.05 | 1.4170.052 | 4-6' · Offshore | — |
| 65 | 2025 Corona Cero Open J-BayOpening Round · heat 1 · Supertubes | 2nd | 6.10 | 5.33 + 0.77 | −4.62exp 10.72 | 1.1440.050 | 4-6' · Offshore | Adv to ER - HT 3 |
| 66 | 2025 Corona Cero Open J-BayElimination Round · heat 3 · Supertubes | 1st | 13.53 | 6.93 + 6.60 | +2.06exp 11.47 | 1.1860.047 | 4-6' · Onshore | Adv to R/16 - HT 7 |
| 67 | 2025 Corona Cero Open J-BayRound of 16 · heat 7 · Supertubes | 2nd | 12.33 | 7.00 + 5.33 | +0.29exp 12.04 | 1.1450.045 | 1-4' · Light | — |
| 68 | 2025 Lexus Tahiti ProOpening Round · heat 1 · Teahupo'o | 1st | 14.90 | 7.50 + 7.40 | +4.18exp 10.72 | 1.2820.043 | 8-10' · Calm | Adv to R/16 - HT 3 |
| 69 | 2025 Lexus Tahiti ProRound of 16 · heat 3 · Teahupo'o | 1st | 11.33 | 6.50 + 4.83 | −0.71exp 12.04 | 1.1920.041 | 6-8' · Calm | — |
| 70 | 2025 Lexus Tahiti ProQuarterfinals · heat 2 · Teahupo'o | 2nd | 14.07 | 7.40 + 6.67 | +1.02exp 13.05 | 1.1850.039 | 6-8' · Calm | — |
| 71 | 2025 Lexus WSL Finals Fiji FinalsMatch 1 · Cloudbreak | 1st | 14.33 | 7.50 + 6.83 | +2.21exp 12.12 | 1.2310.038 | 4-6' · Calm | — |
| 72 | 2025 Lexus WSL Finals Fiji FinalsMatch 2 · Cloudbreak | 2nd | 13.67 | 7.00 + 6.67 | +0.97exp 12.70 | 1.2190.036 | 4-6' · Calm | — |
How this is computed
heat_entries joined to heats, rounds and events, one row per heat surfed. position and heat_total are published, never derived from the rides; a heat with no total renders as an em-dash, never as zero. The counting rides are the stored waves.counted flag in score order, not ride order, which is how WSL publishes the decomposition; they are not the best two, because an interference penalty zeroes a counting ride without promoting the next one. counting_rides belongs to the round, not the event. Venue is heats.venue_id — the break the heat was actually surfed at, which for 66 of these 72 heatsis stored, and which is not always the event's nominal venue. Round order carries a known gap and no tie countback is stored, so a shared position is shown as published.Condition splits
What he scored, by what the page said
By published wave height
| Height | Heats | Mean | Best | vs Datum |
|---|---|---|---|---|
| 1-4' | 6 | 13.36 | 17.00 | +2.08 |
| 4-6' | 39 | 13.13 | 17.17 | +1.15 |
| 6-8' | 12 | 13.14 | 17.50 | +0.83 |
| 8-10' | 8 | 14.66 | 17.83 | +2.38 |
| 10-14' | 2 | 12.79 | 13.23 | +0.89 |
“Heats” counts the rated heats in the split; where a heat carries no published total it is shown as rated of total and left out of the means.
By published wind
| Wind | Heats | Mean | Best | vs Datum |
|---|---|---|---|---|
| Calm | 21 | 13.19 | 16.60 | +1.39 |
| Offshore | 19 | 13.44 | 17.83 | +1.37 |
| Light | 11 | 13.96 | 16.30 | +1.75 |
| Cross | 10 | 12.41 | 17.17 | +0.05 |
| Onshore | 6 | 13.79 | 17.50 | +2.21 |
“Heats” counts the rated heats in the split; where a heat carries no published total it is shown as rated of total and left out of the means.
What these are not Conditions are not in the model. Datum V1 is a ridge on the round alone: break, wave type and field size were tested on 27 August and dropped, because adding them made the leave-one-event-out error worse rather than better. The “vs Datum” column in each split is therefore this surfer's deviation from what that round usually yields, averaged over the heats that fall in the split. It is a description of where he scored, not a measurement of conditions he favours, and a difference between two rows here is not evidence that either caused anything. Computed over the 67 of his 72 heatswhose popup was retained and publishes both figures; the remainder are absent from these tables rather than pooled into an “unknown” row.
How this is computed
heats.wave_height_published and heats.wind_conditions, both read off the retained heat popup and shown in the words the page used. Across the database these are held for 771 of 801 heats, a different population from venue, which is held for 713. For this surfer that is 67 of 72. Heats with no published conditions are left out of both tables; they are not an “unknown” category.