Central African Republic (XAFCFA)
Track Your ServiceAmflow
United Kingdom (GBP£)
Open search bar
This item is a deferred, subscription, or recurring purchase. By continuing, I agree to the
Yeti
Chad (XAFCFA)
cancellation policyOther
and authorize you to charge my payment method at the prices, frequency and dates listed on this page until my order is fulfilled or I cancel, if permitted.
Perfect for bike packing, touring and gravel bike adventures! Available online or from our bike shop in Edinburgh
UTO (ex Eovolt)
[]
Contact Us
Czechia (CZKKč)
Brands
Early Rider
See More
BlogShop All
{"@context":"http:\/\/schema.org\/","@id":"\/products\/evoc-clear-drink-bottle#product","@type":"Product","brand":{"@type":"Brand","name":"Evoc"},"category":"","description":"750ml\nHigh-Performance Hydration Sport Bottle\nSelf-Sealing Silicone Stream Valve \nEasy to squeeze and lightweight \n100% taste-neutral Polypropylene\n100% Free of PVC, BPA, and BPS \nPerfect for bike packing, touring and gravel bike adventures! Available online or from our bike shop in Edinburgh","gtin":"4250450720973","image":"https:\/\/projektride.co.uk\/cdn\/shop\/products\/Screenshot2022-01-15at12.45.36.png?v=1642250943\u0026width=1920","name":"EVOC Clear Drink Bottle","offers":{"@id":"\/products\/evoc-clear-drink-bottle?variant=42309115412706#offer","@type":"Offer","availability":"http:\/\/schema.org\/InStock","price":"10.99","priceCurrency":"GBP","url":"https:\/\/projektride.co.uk\/products\/evoc-clear-drink-bottle?variant=42309115412706"},"sku":"EV726333","url":"https:\/\/projektride.co.uk\/products\/evoc-clear-drink-bottle"}
// Create "window.Shoppad.apps.infiniteoptions" object if it doesn't already exist
'Shoppad.apps.infiniteoptions'.split('.').reduce(function (o, x) {
if (!o[x]) {
o[x] = {};
}
return o[x];
}, window);
// Note we are using the theme app extension
window.Shoppad.apps.infiniteoptions.themeAppExtensionActive = true;
Somalia (GBP£)
Country
Zimbabwe (USD$)
French Southern Territories (EUR€)
Gabon (XOFFr)
Gambia (GMDD)
Georgia (GBP£)
Germany (EUR€)
Ghana (GBP£)
Gibraltar (GBP£)
Greece (EUR€)
Greenland (DKKkr.)
Guadeloupe (EUR€)
Guernsey (GBP£)
Guinea (GNFFr)
Guinea-Bissau (XOFFr)
Ireland (EUR€)
Isle of Man (GBP£)
Open image lightbox
<
{"@context":"http:\/\/schema.org\/","@id":"\/products\/frog-47-red#product","@type":"ProductGroup","brand":{"@type":"Brand","name":"Frog"},"category":"Bicycles","description":"\nWhy buy a Frog 47? \n\nSmall, easy-to-reach brake levers for better control and improved rider confidence\nPatented Frog cranks for more effortless pedalling, increasing efficiency and comfort\nLower bottom bracket to accommodate a greater leg-length ideal for growing kids\nHandlebar height can be adjusted within a range of 40mm as the young rider grows\nFree 5-year warranty on frame and forks\nReflectors, mudguard and bell included\nSuitable for 4 to 6 years with a recommended inside leg of 43cm-59cm\n\nThe first pedal Frog 47 kids’ bike is a great value 18-inch bike for 4 to 6-year-olds and is perfect for transitioning from a balance bike to pedals. This premium first-pedal children’s bike has a lightweight, sturdy aluminium frame, weighing just 6.75kg making the bike easy to manoeuvre and easy for parents to carry. The Frog 47 kids’ bike is equipped with high-spec age-specific components, designed for comfort and longevity, including a quick-release child-sized saddle for the perfect riding experience, and Tektro brakes with small, easy-to-reach brake levers, which means better control and improved confidence for young riders. It also comes with Kenda small block eight tyres for maximum stability and grip and our patented Frog cranks, for more effortless pedalling, which reduces the distance between the pedals increasing efficiency and comfort for children. The Frog 47 kids’ bike has been optimised to help maximise the lifetime of the bike for a growing child. It offers a lower bracket position to ensure a safer more ergonomic riding experience, which also allows for a greater leg-length range to be accommodated, perfect for growing legs. And the handlebar height can be adjusted within a 40mm range, as a child grows.\nSizing guide: https:\/\/www.frogbikes.co.uk\/fitting\nIf any more information is needed, please don't hesitate to get in touch with one of the team:\nProjektRide Bike shop Edinburgh.\nedinburgh@projektride.co.uk\nT- 01313745324","hasVariant":[{"@id":"\/products\/frog-47-red?variant=44049903714530#variant","@type":"Product","image":"https:\/\/projektride.co.uk\/cdn\/shop\/files\/L-FH47_media-PINK-0_30640280-54bb-44e3-8a20-2a7057951e9b.jpg?v=1736262975\u0026width=1920","name":"Frog 47 - Pink","offers":{"@id":"\/products\/frog-47-red?variant=44049903714530#offer","@type":"Offer","availability":"http:\/\/schema.org\/OutOfStock","price":"405.00","priceCurrency":"GBP","url":"https:\/\/projektride.co.uk\/products\/frog-47-red?variant=44049903714530"}},{"@id":"\/products\/frog-47-red?variant=44049903747298#variant","@type":"Product","image":"https:\/\/projektride.co.uk\/cdn\/shop\/files\/L-FH47_media-ORANGE-0_6923ef69-c7a7-4cac-8ae5-d000a14cfbd9.jpg?v=1736262975\u0026width=1920","name":"Frog 47 - Orange","offers":{"@id":"\/products\/frog-47-red?variant=44049903747298#offer","@type":"Offer","availability":"http:\/\/schema.org\/OutOfStock","price":"405.00","priceCurrency":"GBP","url":"https:\/\/projektride.co.uk\/products\/frog-47-red?variant=44049903747298"}},{"@id":"\/products\/frog-47-red?variant=44049903780066#variant","@type":"Product","image":"https:\/\/projektride.co.uk\/cdn\/shop\/files\/L-FH47_media-GRN-0_483f7720-0d6f-4df1-8f00-88ef18379902.jpg?v=1736262975\u0026width=1920","name":"Frog 47 - Green","offers":{"@id":"\/products\/frog-47-red?variant=44049903780066#offer","@type":"Offer","availability":"http:\/\/schema.org\/InStock","price":"405.00","priceCurrency":"GBP","url":"https:\/\/projektride.co.uk\/products\/frog-47-red?variant=44049903780066"}},{"@id":"\/products\/frog-47-red?variant=44049903812834#variant","@type":"Product","image":"https:\/\/projektride.co.uk\/cdn\/shop\/files\/L-FH47_media-ELECTRICBLUE-0_60d89242-0819-493e-afec-ebfb96fd7b62.jpg?v=1736262975\u0026width=1920","name":"Frog 47 - Electric Blue","offers":{"@id":"\/products\/frog-47-red?variant=44049903812834#offer","@type":"Offer","availability":"http:\/\/schema.org\/OutOfStock","price":"405.00","priceCurrency":"GBP","url":"https:\/\/projektride.co.uk\/products\/frog-47-red?variant=44049903812834"}},{"@id":"\/products\/frog-47-red?variant=44049903845602#variant","@type":"Product","image":"https:\/\/projektride.co.uk\/cdn\/shop\/files\/L-FH47_media-SPOTTY-0_19d44467-d15e-4836-b3e5-97f324047d67.jpg?v=1736262975\u0026width=1920","name":"Frog 47 - White","offers":{"@id":"\/products\/frog-47-red?variant=44049903845602#offer","@type":"Offer","availability":"http:\/\/schema.org\/OutOfStock","price":"405.00","priceCurrency":"GBP","url":"https:\/\/projektride.co.uk\/products\/frog-47-red?variant=44049903845602"}},{"@id":"\/products\/frog-47-red?variant=44049916428514#variant","@type":"Product","image":"https:\/\/projektride.co.uk\/cdn\/shop\/files\/L-FH47_media-RED-0.default_60df76ab-6589-450a-b00b-1bc493fb9219.jpg?v=1736262975\u0026width=1920","name":"Frog 47 - Red","offers":{"@id":"\/products\/frog-47-red?variant=44049916428514#offer","@type":"Offer","availability":"http:\/\/schema.org\/OutOfStock","price":"405.00","priceCurrency":"GBP","url":"https:\/\/projektride.co.uk\/products\/frog-47-red?variant=44049916428514"}}],"name":"Frog 47","productGroupID":"8082512019682","url":"https:\/\/projektride.co.uk\/products\/frog-47-red"}
bled) {
if (!settings.translations) {
// Translations enabled but no translation data in metafield
// Metafield hasn't been backfilled yet - force refresh
console.debug('STOQ - multi-language enabled but no translation data in cache, fetching fresh');
return null;
}
// Translations object exists in metafield - cache is valid
// If current locale isn't translated, applyTranslations will gracefully use default locale from base fields
if (window._RestockRocketConfig.normalizedLocale &&
!Object.prototype.hasOwnProperty.call(settings.translations, window._RestockRocketConfig.normalizedLocale)) {
console.debug('STOQ - locale not explicitly translated, will use default language from cache');
}
// Don't return null - continue using cache even for untranslated locales
}
const updatedAt = new Date(settings.updated_at);
if (isNaN(updatedAt.getTime())) {
console.debug('STOQ - I
QUESTIONS AND ANSWERS
<
!settings.multi_language_enabled) {
return settings;
}
if (!settings.translations) {
console.debug('STOQ - No translations found, skipping translation');
return settings;
}
const normalizedLocale = window._RestockRocketConfig.normalizedLocale;
const translations = settings.translations;
if (!normalizedLocale) {
// No matching locale has translations; drop payload to save memory
console.debug('STOQ - No matching locale for translations. Available:', Object.keys(translations || {}));
delete settings.translations;
return settings;
}
console.debug(`STOQ - Applying translations for normalized locale: ${normalizedLocale} (original: ${window._RestockRocketConfig.locale})`);
const translatedFields = translations[normalizedLocale];
if (translatedFields && typeof translatedFields === 'object') {
Object.keys(translatedFields).forEach(function(key) {
const value = translatedFields[keyJersey (GBP£)
led for ${window._RestockRocketConfig.pageType}`);
}
// Dispatch custom event when app is loaded
// Cart selling plan updates will be triggered by stoq:inventory-data-loaded event
const appLoadedEvent = new CustomEvent('stoq:loaded', {
detail: {
pageType: window._RestockRocketConfig.pageType,
enabled: settings.enable_app,
settings: settings,
preorderEnabled: settings.preorder_enabled
}
});
console.debug('STOQ - dispatching app loaded event');
window.dispatchEvent(appLoadedEvent);
}
}
This section doesn’t currently include any content. Add content to this section using the sidebar.
Due to the increased demand, the best way to get your hand on a Surly bike is to call us to check the availability on the model and build kit you are looking for. Some models can be pre-ordered and reserved for when
they come into stock.
Kosovo (EUR€)
When you buy a Surly from ProjektRide, we give you free running in service.I'm looking to find out more information about a product, where can I find this?
Sulry bikes are super well built although if you were to have any issues, Surly offer a 3 year warranty on all frames which can be processed from ourselves.
Open image lightboxLiberia (GBP£)
Please get in touch with a member of the team either by phone (
01313745324
[email protected]
) where on of the team will be more than happy to help.
We love custom building these Surlys. Get in touch with the team to find out more about custom building your dream Surly. Please check out some of our custom builds:ProjektRide Bike Shop Edinburgh
https://projektride.co.uk/pages/custom-builds
Open image lightboxLiechtenstein (CHFCHF)
To find out more about Surly bikes, please visit:
https://surlybikes.com/
ProjektRideI'm looking to buy this product, when will it arrive and how much does postage cost?
Moldova (MDLL)
Monaco (EUR€)
l_placeholder":"Email address","storefront_form_phone_placeholder":"SMS","storefront_form_phone_label":"Phone number","storefront_form_email_label":"Email","storefront_form_phone_error":"Please enter a valid phone number","storefront_form_customer_name_placeholder":"Name","storefront_form_customer_name_error":"Please enter your name","storefront_form_did_you_mean_error":"Did you mean %{suggested_email}? Or use %{current_email}","form_customer_name_enabled":false,"form_customer_name_required":false,"css_config":"","js_config":null,"collect_promotion_consent":false,"storefront_form_promotion_consent_label":"Notify me about other news, sales, discounts & offers too","show_button_on_collection":false,"sms_default_country":"us","sms_allowed_countries":[],"sms_restrict_country":false,"sms_default_channel":true,"optin_required":false,"optin_success_text":"Registration confirmed! You'll receive an alert when the product is restocked.","storefront_button_border_radius":0,"storefront_button_disable_tag_hides_button":tr
Push","storefront_form_push_description":"Click 'Allow' to be notified via push notification","storefront_form_push_error":"Permission rejected! Please review notification settings and try again","storefront_font_family":"OpenSans","insert_button_after_selector_collection_type":"afterend","show_channel_selector":false,"storefront_form_empty_error":"Please fill in one or more of the options above","storefront_form_push_input":"Send notification to your browser","insert_button_after_selector_page":null,"show_button_on_page":false,"insert_button_after_selector_search":null,"show_button_on_search":false,"app_proxy_path_prefix":"/apps/restockrocket-production","collection_link_selector":"","index_link_selector":"","page_link_selector":"","search_link_selector":"","collection_check_link_visibility":true,"collection_buttons_container":null,"index_buttons_container":null,"page_buttons_container":null,"search_buttons_container":null,"extension_enable_url_variant_detection":true,"extension_enable_value_variant_detectio
:false,"preorder_search_form_selector":"form[action*=\"/cart/add\"]","preorder_search_add_to_cart_button_selector":"form[action*=\"/cart/add\"] button","preorder_collection_badge_selector":null,"preorder_index_badge_selector":null,"preorder_page_badge_selector":null,"preorder_search_badge_selector":null,"preorder_badge_selector_type":"afterend","preorder_collection_badge_selector_type":"afterend","preorder_button_child_selector":"span","preorder_button_disclaimer_insert_selector":"","preorder_button_disclaimer_insert_selector_type":"afterend","preorder_payment_insert_selector":"","preorder_payment_insert_selector_type":"afterend","preorder_price_container_selector":"","preorder_price_container_selector_insert_type":"afterend","preorder_terms_insert_selector":"","preorder_terms_insert_selector_type":"afterend","preorder_original_price_selector":"","preorder_price_format":"{{amount}} {{currency}}","show_badge_if_any_variant_is_preorder":false,"enable_console_debug":false,"inline_form_enabled":false,"inline_formMontenegro (EUR€)
Config.sellingPlans = [{"shopify_selling_plan_group_id":98590196095,"shopify_selling_plan_id":713071886719,"enabled":true,"variant_ids":[55569712382335,55569712415103,55569712480639,55570017616255,55570017550719,55569712447871,55570017583487],"product_variants_source":"custom","name":"Preorder","preorder_button_text":"Preorder","preorder_button_description":"Note: This is a preorder. Items will ship based on the estimated delivery date.","preorder_button_description_background_color":"#ebebeb","preorder_button_description_text_color":"#000000","preorder_button_description_border_radius":10,"preorder_button_description_show_quantity_limit":false,"preorder_button_description_quantity_limit_suffix":" units available for preorder","preorder_button_description_shipping_text_prefix":"Shipping: ","delivery_exact_time":null,"delivery_after_n_intervals":null,"delivery_at":"2025-07-26T09:20:18.169Z","delivery_type":"asap","quantity_limit_text":"{{ quantity }} units available for preorder","preorder_button_description_s
rkets_enabled":false,"market_id":13779632354,"shopify_market_ids":[],"use_shopify_selling_plan":true,"use_simplified_shipping_text":false,"translations":{},"payment_options":[{"billing_type":"no_remaining_balance","billing_checkout_charge_type":"percentage","billing_checkout_charge_amount":null,"billing_checkout_charge_percentage":"100.0","billing_at":"2025-07-26T09:20:38.472Z","billing_after_n_intervals":7,"billing_after_interval_type":"day","pricing_type":"no_discount","pricing_amount":null,"pricing_percentage":null,"billing_title":"Full payment","billing_description":null,"discount_text":"Save {{ discount }}","shopify_selling_plan_id":713071886719,"is_default":true,"type":"full","translations":{}}],"require_preorder_acknowledgement":false,"preorder_acknowledgement_text":"I acknowledge and agree to the preorder terms and conditions for this product.","disable_button_until_acknowledged":false,"preorder_min_quantity":null,"preorder_max_quantity":null,"countdown_timer_enabled":false,"countdown_timer_style":"teMorocco (MADد.م.)
chedData = {"plans":[{"shopify_selling_plan_group_id":98590196095,"shopify_selling_plan_id":713071886719,"enabled":true,"variant_ids":[55569712382335,55569712415103,55569712480639,55570017616255,55570017550719,55569712447871,55570017583487],"product_variants_source":"custom","name":"Preorder","preorder_button_text":"Preorder","preorder_button_description":"Note: This is a preorder. Items will ship based on the estimated delivery date.","preorder_button_description_background_color":"#ebebeb","preorder_button_description_text_color":"#000000","preorder_button_description_border_radius":10,"preorder_button_description_show_quantity_limit":false,"preorder_button_description_quantity_limit_suffix":" units available for preorder","preorder_button_description_shipping_text_prefix":"Shipping: ","delivery_exact_time":null,"delivery_after_n_intervals":null,"delivery_at":"2025-07-26T09:20:18.169Z","delivery_type":"asap","quantity_limit_text":"{{ quantity }} units available for preorder","preorder_button_description_sho
ets_enabled":false,"market_id":13779632354,"shopify_market_ids":[],"use_shopify_selling_plan":true,"use_simplified_shipping_text":false,"translations":{},"payment_options":[{"billing_type":"no_remaining_balance","billing_checkout_charge_type":"percentage","billing_checkout_charge_amount":null,"billing_checkout_charge_percentage":"100.0","billing_at":"2025-07-26T09:20:38.472Z","billing_after_n_intervals":7,"billing_after_interval_type":"day","pricing_type":"no_discount","pricing_amount":null,"pricing_percentage":null,"billing_title":"Full payment","billing_description":null,"discount_text":"Save {{ discount }}","shopify_selling_plan_id":713071886719,"is_default":true,"type":"full","translations":{}}],"require_preorder_acknowledgement":false,"preorder_acknowledgement_text":"I acknowledge and agree to the preorder terms and conditions for this product.","disable_button_until_acknowledged":false,"preorder_min_quantity":null,"preorder_max_quantity":null,"countdown_timer_enabled":false,"countdown_timer_style":"text
471,713176482175],"cached_at":"2026-02-18T08:36:42Z"};
if (cachedData && typeof cachedData === 'object' && cachedData.cached_at) {
// Find the maximum updated_at from all items in old array
const oldPlans = window._RestockRocketConfig.sellingPlans;
const maxUpdatedAt = Array.isArray(oldPlans) && oldPlans.length > 0
? oldPlans.reduce(function(max, plan) {
// Parse dates for proper comparison (handles mixed ISO formats)
if (plan.updated_at) {
const planDate = new Date(plan.updated_at);
const maxDate = max ? new Date(max) : null;
return (!maxDate || (planDate && !isNaN(planDate) && planDate > maxDate)) ? plan.updated_at : max;
}
return max;
}, '')
: null;
// Use cached if old array is empty/has no timestamps, or cached is newer
// Parse dates for comparison to handle format differences (+00:00 vs .000Z)
const cachedDate = n
re and easy for parents to carry. \u003c\/span\u003e\u003cbr\u003e\u003cspan\u003e \u003c\/span\u003e\u003cbr\u003e\u003cspan\u003eThe Frog 47 kids’ bike is equipped with high-spec age-specific components, designed for comfort and longevity, including a quick-release child-sized saddle for the perfect riding experience, and Tektro brakes with small, easy-to-reach brake levers, which means better control and improved confidence for young riders. It also comes with Kenda small block eight tyres for maximum stability and grip and our patented Frog cranks, for more effortless pedalling, which reduces the distance between the pedals increasing efficiency and comfort for children. \u003c\/span\u003e\u003cbr\u003e\u003cspan\u003e \u003c\/span\u003e\u003cbr\u003e\u003cspan\u003eThe Frog 47 kids’ bike has been optimised to help maximise the lifetime of the bike for a growing child. It offers a lower bracket position to ensure a safer more ergonomic riding experience, which also allows for a greater leg-length span style=\"color: #404040; background-color: #ffffff;\"\u003eT- 01313745324\u003c\/span\u003e\u003c\/p\u003e","published_at":"2023-04-28T19:21:34+01:00","created_at":"2023-04-27T21:22:28+01:00","vendor":"Frog","type":"Bicycles","tags":["Bike","spo-cs-disabled","spo-default","spo-disabled","spo-notify-me-disabled"],"price":40500,"price_min":40500,"price_max":40500,"available":true,"price_varies":false,"compare_at_price":45000,"compare_at_price_min":45000,"compare_at_price_max":45000,"compare_at_price_varies":false,"variants":[{"id":44049903714530,"title":"Pink","option1":"Pink","option2":null,"option3":null,"sku":"","requires_shipping":true,"taxable":true,"featured_image":{"id":72808884896127,"product_id":8082512019682,"position":4,"created_at":"2025-01-07T15:16:15+00:00","updated_at":"2025-01-07T15:16:15+00:00","alt":null,"width":1200,"height":800,"src":"\/\/projektride.co.uk\/cdn\/shop\/files\/L-FH47_media-PINK-0_30640280-54bb-44e3-8a20-2a7057951e9b.jpg?v=1736262975","variant_ids":[44049903714530]},"availa
];
if (value !== null && value !== undefined && value !== '') {
settings[key] = value;
}
});
} else {
console.debug('STOQ - No translated fields found for locale:', normalizedLocale);
}
delete settings.translations;
return settings;
} catch (e) {
console.debug('STOQ - error applying translations:', e);
return settings;
}
}
// Setup event listener for cart selling plan updates
// This must be called before any scripts are loaded to avoid race conditions
function setupCartSellingPlanUpdater(settings) {
// Setup listener regardless - updateCartSellingPlans has its own guards
// This ensures cleanup happens even when preorders are disabled globally
// Listen for stoq:inventory-data-loaded event dispatched by api.js
window.addEventListener('stoq:inventory-data-loaded', function(event) {
console.debug('STOQ - Inventory data loaded, updating cart selling plans');
if (window._RestockRocket
hopify.shop,
'ngrok-skip-browser-warning': 'skip'
};
if (window.Shopify?.theme?.role === 'main') {
headers['X-Shopify-Theme-Schema-Name'] = window.Shopify.theme.schema_name;
headers['X-Shopify-Theme-Schema-Version'] = window.Shopify.theme.schema_version;
headers['X-Shopify-Theme-Store-Id'] = window.Shopify.theme.theme_store_id;
}
fetch(
`${window._RestockRocketConfig.host}/api/v1/setting.json?translation_locale=${window._RestockRocketConfig.normalizedLocale}`,
{ headers }
)
.then(function(response) {
if (!response.ok) {
throw new Error('Network response was not ok');
}
return response.json();
})
.then(function(settings) {
initializeScripts(settings);
})
.catch(function(error) {
// If request failed and we have cached settings (even if expired), use them as fallback
if (cachedSettings) {
console.debug('STOQ - using expired cached settings as fallback');
initializeScripts(cac