Skip to content

Curve - GXR (AKA Kevin of Titanium)

SKU CVGXRMD-TiFGG4T35
Save 27% Save 27%
Original price $13,545.00
Original price $13,545.00 - Original price $13,545.00
Original price $13,545.00
Current price $9,899.00
$9,899.00 - $9,899.00
Current price $9,899.00

Interested in this bike? Please email us or use the ENQUIRY FORM below to check your size and availability.

The bike may be available from the supplier if not in-store.

WE CAN ORGANISE DELIVERY OF BIKES NATIONWIDE.

NOTE: Afterpay is unavailable on bike purchases.

Choose a Size
Choose a Groupset
Choose a Wheelset
ENQUIRY

Meet GXR a.k.a. Kevin

Our titanium GXR, paired with the Ride 400 carbon fork has been tested heavily on adventures worldwide. Many of the Curve team have traversed South America, New Zealand, Switzerland, Swaziland, and more on this magnificent bicycle.

Originally a playful jab at the bike industry's bike naming terminologies, the name ‘Kevin' was coined to name this frame. it soon caught on, and we simply couldn’t resist making it official.

Two Bikes in One

The Ride 400 carbon fork has clearance for wheel options based on your riding style. For example, Kevin can run either 700c wheels with 32–45 mm tyres, best suited for commuting, gravel, and cyclocross, or if you’re looking to tackle some rougher terrain with more traction, use 650b (27.5”) wheels fitted with 1.8–2.2” tyres*. Curve has the above wheel options in both carbon and aluminum available.

No Weird Flex

The custom titanium yoke design allows Kevin to run some wide gravel tyres in two wheel sizes and stiffens the BB area to avoid excessive frame flex under load.

More Mounting Points

Kevin comes equipped with rear rack mounts, fender mounts, and 3 x bidon mounts; and can run either a 1x or 2x drivetrain. Kevin is ready for single or multi-day bikepacking adventures due to extra tyre clearance, a longer wheelbase, and a more stable platform.

Ready for Adventure

Our Ride 400 fork, originally titled GXR fork, was built to complement the Kevin of Steel and titanium GXR frameset. Featuring 3 x 12 mm M5 mounting points on each blade, the Ride 400 fork can accommodate anything from extra water bottles, our Rocket Pooches, or any other micro pannier or fork-specific bag.
There is ample room for bikepacking bags on all frameset sizes.

Want to Carry More?

With a wide range of frame and fork mounted rack systems on the market, and with more appearing every week, it is important to understand which rack systems are compatible with your Curve frame and fork, and how to mount them correctly in order to ensure safe riding, avoid damage and voiding your warranty. Before mounting a rack, we strongly recommend you get in touch with us to confirm compatibility and the correct mounting procedure. This will minimise the risk of injury, product damage and voiding your warranty. Your local Curve dealer, or the team at Curve HQ, can also help you select a rack system and mount it to your bike for you.

<div class="tech-specs">

<!-- BUILD -->
<div class="spec-section">
<h4>Build</h4>

<div class="spec-item">
<p class="label">Frame</p>
<p class="value">
Titanium Curve GXR<br>
Bottom bracket standard: T47, 68mm, threaded
</p>
</div>

<div class="spec-item">
<p class="label">Fork</p>
<p class="value">Curve Ride 400</p>
</div>

<div class="spec-item">
<p class="label">Bottom Bracket</p>
<p class="value">Curve T47 DUB, 68mm</p>
</div>

<div class="spec-item">
<p class="label">Headset</p>
<p class="value">Curve 44mm semi-internal</p>
</div>

<div class="spec-item">
<p class="label">Stem</p>
<p class="value">
Zipp Service Course<br>
XXS–S: 70mm | M–L: 80mm | XL–XXL: 90mm
</p>
</div>

<div class="spec-item">
<p class="label">Handlebar</p>
<p class="value">
Curve Walmer Bar<br>
XXS: 43 | XS–M: 46 | L–XXL: 50
</p>
</div>

<div class="spec-item">
<p class="label">Seatpost</p>
<p class="value">Zipp Service Course 0 Setback, 27.2mm</p>
</div>

<div class="spec-item">
<p class="label">Saddle</p>
<p class="value">Fi&#39;zi:k Vento Argo</p>
</div>
</div>

<!-- GROUPSET -->
<div class="spec-section">
<h4>Groupset</h4>

<div class="spec-item">
<p class="label">Shifters</p>
<p class="value">SRAM Force AXS, 12-speed – LHR / RHF</p>
</div>

<div class="spec-item">
<p class="label">Rear Derailleur</p>
<p class="value">SRAM X01 Eagle AXS, 12-speed</p>
</div>

<div class="spec-item">
<p class="label">Crank</p>
<p class="value">
SRAM Force DUB – 38T<br>
XXS–SM: 165mm | MD: 170mm | LG–XXL: 175mm
</p>
</div>

<div class="spec-item">
<p class="label">Cassette</p>
<p class="value">XG-1275 Eagle, 10–52T</p>
</div>

<div class="spec-item">
<p class="label">Chain</p>
<p class="value">GX Eagle, 12-speed</p>
</div>

<div class="spec-item">
<p class="label">Brakes</p>
<p class="value">
SRAM Force AXS Hydraulic Disc<br>
Flat Mount<br>
CLX-R CentreLock rotors – 160mm
</p>
</div>
</div>

<!-- WHEELSET -->
<div class="spec-section">
<h4>Wheelset</h4>

<div class="spec-item">
<p class="label">Wheels</p>
<p class="value">700c Curve Carbon Wheels</p>
</div>

<div class="spec-item">
<p class="label">Tyres</p>
<p class="value">Vittoria Mezcal – 700 x 44c</p>
</div>
</div>

<p class="note">*Specifications subject to change according to availability</p>

</div>

<!-- Geometry image (static, centred) -->
<div class="curve-geo-static">
<img
src="https://cdn.shopify.com/s/files/1/0089/4972/7298/files/Curve_-_GXR_AKA_Kevin_of_Titanium_Geo.jpg?v=1768439450"
alt="Curve Geometry Diagram"
loading="lazy"
/>

<div class="curve-geo-notes">
<p>BB and standover heights based on: 700 x 42c tyres.</p>
</div>
</div>

<style>
.curve-geo-static {
width: 100%;
display: flex;
flex-direction: column;
align-items: center;
margin: 16px 0 24px;
}

.curve-geo-static img {
max-width: 980px;
width: 100%;
height: auto;
}

.curve-geo-notes {
max-width: 980px;
width: 100%;
margin-top: 8px;
font-size: 12.5px;
line-height: 1.4;
color: #666;
}

.curve-geo-notes p {
margin: 2px 0;
}
</style>


<script>
(function () {
const wrap = document.querySelector('.curve-geo');
if (!wrap) return;

const thumb = wrap.querySelector('.curve-geo__thumb');
const dialog = wrap.querySelector('.curve-geo__lightbox');
const closeBtn = wrap.querySelector('.curve-geo__close');

if (!thumb || !dialog || !closeBtn) return;

thumb.addEventListener('click', () => dialog.showModal());
closeBtn.addEventListener('click', () => dialog.close());

dialog.addEventListener('click', (e) => {
// Close when clicking backdrop (but not when clicking the image)
if (e.target === dialog) dialog.close();
});

document.addEventListener('keydown', (e) => {
if (e.key === 'Escape' && dialog.open) dialog.close();
});
})();
</script>

<div class="bike-geometry-table">
<div class="bike-geometry-table__scroller">
<table>
<thead>
<tr>
<th class="sticky-col">SIZE</th>
<th>XXS</th>
<th>XS</th>
<th>SM</th>
<th>MD</th>
<th>LG</th>
<th>XL</th>
<th>XXL</th>
</tr>
</thead>

<tbody>
<tr>
<th class="sticky-col">Rider Height (cm)</th>
<td>148–157</td>
<td>154–163</td>
<td>160–170</td>
<td>166–178</td>
<td>175–187</td>
<td>184–194</td>
<td>190–200</td>
</tr>

<tr>
<th class="sticky-col">Saddle Height (mm)</th>
<td>610–670</td>
<td>650–705</td>
<td>690–735</td>
<td>720–765</td>
<td>745–795</td>
<td>775–825</td>
<td>805–865</td>
</tr>

<tr>
<th class="sticky-col">Effective Top Tube (A)</th>
<td>529</td><td>541</td><td>554</td><td>564</td><td>574</td><td>589</td><td>604</td>
</tr>

<tr>
<th class="sticky-col">Seat Tube Length (B)</th>
<td>460</td><td>500</td><td>530</td><td>560</td><td>580</td><td>595</td><td>615</td>
</tr>

<tr>
<th class="sticky-col">Seat Tube Angle (C)</th>
<td>73°</td><td>73°</td><td>73°</td><td>73°</td><td>73°</td><td>73°</td><td>73°</td>
</tr>

<tr>
<th class="sticky-col">Head Tube Angle (D)</th>
<td>71°</td><td>71°</td><td>71.5°</td><td>71.5°</td><td>72°</td><td>72°</td><td>72°</td>
</tr>

<tr>
<th class="sticky-col">Chainstay (E)</th>
<td>432</td><td>432</td><td>432</td><td>432</td><td>432</td><td>432</td><td>435</td>
</tr>

<tr>
<th class="sticky-col">BB Drop (F)</th>
<td>72</td><td>70</td><td>70</td><td>70</td><td>68</td><td>68</td><td>68</td>
</tr>

<tr>
<th class="sticky-col">BB Height</th>
<td>274</td><td>276</td><td>276</td><td>276</td><td>278</td><td>278</td><td>278</td>
</tr>

<tr>
<th class="sticky-col">Wheelbase (G)</th>
<td>1005</td><td>1018</td><td>1027</td><td>1037</td><td>1044</td><td>1059</td><td>1078</td>
</tr>

<tr>
<th class="sticky-col">Head Tube Length (H)</th>
<td>110</td><td>115</td><td>125</td><td>136</td><td>150</td><td>170</td><td>210</td>
</tr>

<tr>
<th class="sticky-col">Reach (I)</th>
<td>362</td><td>373</td><td>383</td><td>389</td><td>396</td><td>405</td><td>408</td>
</tr>

<tr>
<th class="sticky-col">Stack (J)</th>
<td>547</td><td>550</td><td>561</td><td>572</td><td>585</td><td>604</td><td>642</td>
</tr>

<tr>
<th class="sticky-col">Front Centre (K)</th>
<td>584</td><td>596</td><td>605</td><td>615</td><td>621</td><td>636</td><td>652</td>
</tr>

<tr>
<th class="sticky-col">Standover (L)</th>
<td>743</td><td>765</td><td>784</td><td>804</td><td>822</td><td>839</td><td>867</td>
</tr>
</tbody>
</table>
</div>
</div>

Compare products

{"one"=>"Select 2 or 3 items to compare", "other"=>"{{ count }} of 3 items selected"}

Select first item to compare

Select second item to compare

Select third item to compare

Compare