Q&A with MTB Direct: Building Communities

Natasha Sholl By Natasha Sholl | 28 May 2019

Jen Geale, Co-Founder of MTB Direct, tells us the value of honest and open communication with customers and why fairness should always be front of mind.

Ahead of Online Retailer Conference & Expo, we speak to Jen Geale, GM & Co Founder, MTB Direct, about the difference between transactional and relational e-commerce and the importance of communities in the current online landscape.

How has consumer behaviour changed in recent times?

As well as becoming more familiar with, and trusting of, online shopping, I think customers are also coming to experience a much higher level of service online than they have previously. Only a few years ago, things like: ‘In Stock, Ships Today!’, could be a core part of your value proposition as an online retailer. Now, that’s a pretty basic expectation as consumers increasingly turn to online retailers not just for things they can’t get otherwise, but for all manner of purchases.

How has MTB Direct adapted its strategy in relation to the shift in the customer landscape?

We’ve focused hard on our service, knowing that it’s not just about price, or fast shipping, or having stock (as important as all of those things are). People come to us because every single one of our customer service team are mountain bike experts – with extensive experience as riders, as mechanics, in bike shops, and in the broader MTB industry. They can rely on the advice we give them, and they can also trust us to support them no matter what. (We make a big deal not just of preventing mistakes, but going above and beyond when we need to fix them).

What’s the role of community when it comes to e-commerce?

We often think of communities as being geographic or location-based (like in a neighbourhood or street). But communities are increasingly thriving in environments where members never meet face-to-face. Online communities are commonplace, and real. People are relational beings, and while sometimes it’s ok for things to be purely transactional, most of the time we feel better about our interactions when there’s a relational element. So it’s absolutely possible to take a community lens to e-commerce.

How has MTB Direct built a community out of its customers?

We’re focused on micro ways of making customers feel part of the MTB Direct community. It’s everything from popping stickers in orders, through to how we encourage staff to communicate with customers (which is professional, but real – if a customer on live chat asks what bike your ride, tell ‘em! Connect with them on that). It’s also about responding to all situations with empathy (so when we have to fix an order issue, we make sure we listen really well to what the customer is saying, and to what the customer is trying to say, and offer them a bunch of possible resolutions). We keep it personal.    

How do you balance customer retention with customer acquisition?

We don’t offer ‘new customer discounts’ or incentives to bring in new customers – we feel that’s not fair to our existing customers. We’re also big on fairness and so we don’t do ad hoc discounting or negotiating with customers – if through a conversation with a potential customer, we discover we could be lower in price on a particular item than we are, we will drop the price on the website for everyone, not just that particular customer. We look for strategies that are advantageous for both acquisition and retention.

What are you actually selling as an e-commerce retailer? Is it convenience? Superior product? Competitive pricing? Delivery speed? Customer service? Where is the sweet spot when it comes to competition?

All of the above! Honestly, it varies customer-to-customer, and I don’t think there’s any blanket statement that fits all e-commerce retailers. We have tried to focus in on the areas we can do best and really drive those home in our marketing and our overall offering, while never totally neglecting the others.

What are your predictions when it comes to future disruptions in the space and how can retailers and brands keep up?

The fact is we can’t predict what future disruptions will be, but we can adopt a mindset that prepares us to be disrupted. If you think, plan, and act like you are going to be disrupted, you work quicker, you rapid prototype, you focus on achieving MVP. When we are reviewing our strategy, we like to ask “What if…. (some crazy thing happened)?” and test how well our strategies hold up. It’s not about that actual thing happening, but about whether we feel our strategy is robust and agile enough to cope with the unknown. 

Jen Geale will be speaking on Day Two of Online Retailer on the topic: Creating Communities Out of Customers. To see the full agenda for Online Retailer Conference & Expo (to be held 24-25 July at the ICC Sydney) or to buy tickets, click here.   

[gravityform id="11" title="false" description="false" ajax="true"]
<script type="text/javascript">var gform;gform||(document.addEventListener("gform_main_scripts_loaded",function(){gform.scriptsLoaded=!0}),window.addEventListener("DOMContentLoaded",function(){gform.domLoaded=!0}),gform={domLoaded:!1,scriptsLoaded:!1,initializeOnLoaded:function(o){gform.domLoaded&&gform.scriptsLoaded?o():!gform.domLoaded&&gform.scriptsLoaded?window.addEventListener("DOMContentLoaded",o):document.addEventListener("gform_main_scripts_loaded",o)},hooks:{action:{},filter:{}},addAction:function(o,n,r,t){gform.addHook("action",o,n,r,t)},addFilter:function(o,n,r,t){gform.addHook("filter",o,n,r,t)},doAction:function(o){gform.doHook("action",o,arguments)},applyFilters:function(o){return gform.doHook("filter",o,arguments)},removeAction:function(o,n){gform.removeHook("action",o,n)},removeFilter:function(o,n,r){gform.removeHook("filter",o,n,r)},addHook:function(o,n,r,t,i){null==gform.hooks[o][n]&&(gform.hooks[o][n]=[]);var e=gform.hooks[o][n];null==i&&(i=n+"_"+e.length),gform.hooks[o][n].push({tag:i,callable:r,priority:t=null==t?10:t})},doHook:function(n,o,r){var t;if(r=Array.prototype.slice.call(r,1),null!=gform.hooks[n][o]&&((o=gform.hooks[n][o]).sort(function(o,n){return o.priority-n.priority}),o.forEach(function(o){"function"!=typeof(t=o.callable)&&(t=window[t]),"action"==n?t.apply(null,r):r[0]=t.apply(null,r)})),"filter"==n)return r[0]},removeHook:function(o,n,t,i){var r;null!=gform.hooks[o][n]&&(r=(r=gform.hooks[o][n]).filter(function(o,n,r){return!!(null!=i&&i!=o.tag||null!=t&&t!=o.priority)}),gform.hooks[o][n]=r)}});</script> <div class='gf_browser_unknown gform_wrapper fix-om-styling_wrapper gform_legacy_markup_wrapper' id='gform_wrapper_11' ><div id='gf_11' class='gform_anchor' tabindex='-1'></div><form method='post' enctype='multipart/form-data' target='gform_ajax_frame_11' id='gform_11' class='fix-om-styling gform_legacy_markup' action='/editorial-2/qa-with-mtb-direct-building-communities/#gf_11' > <div class='gform_body gform-body'><ul id='gform_fields_11' class='gform_fields top_label form_sublabel_below description_below'><li id="field_11_2" class="gfield gfield_contains_required field_sublabel_below field_description_below hidden_label gfield_visibility_visible" ><label class='gfield_label' for='input_11_2' >Email Address<span class="gfield_required"><span class="gfield_required gfield_required_asterisk">*</span></span></label><div class='ginput_container ginput_container_email'> <input name='input_2' id='input_11_2' type='text' value='' class='large' placeholder='Email' aria-required="true" aria-invalid="false" /> </div></li><li id="field_11_3" class="gfield gfield_contains_required field_sublabel_hidden_label field_description_below hidden_label gfield_visibility_visible" ><label class='gfield_label gfield_label_before_complex' >Name<span class="gfield_required"><span class="gfield_required gfield_required_asterisk">*</span></span></label><div class='ginput_complex ginput_container no_prefix has_first_name no_middle_name has_last_name no_suffix gf_name_has_2 ginput_container_name' id='input_11_3'> <span id='input_11_3_3_container' class='name_first' > <input type='text' name='input_3.3' id='input_11_3_3' value='' aria-required='true' placeholder='First Name' /> <label for='input_11_3_3' class='hidden_sub_label screen-reader-text'>First</label> </span> <span id='input_11_3_6_container' class='name_last' > <input type='text' name='input_3.6' id='input_11_3_6' value='' aria-required='true' placeholder='Last Name' /> <label for='input_11_3_6' class='hidden_sub_label screen-reader-text'>Last</label> </span> </div></li><li id="field_11_5" class="gfield gfield_contains_required field_sublabel_below field_description_below hidden_label gfield_visibility_visible" ><label class='gfield_label' for='input_11_5' >Company / Organisation<span class="gfield_required"><span class="gfield_required gfield_required_asterisk">*</span></span></label><div class='ginput_container ginput_container_text'><input name='input_5' id='input_11_5' type='text' value='' class='large' placeholder='Company' aria-required="true" aria-invalid="false" /> </div></li><li id="field_11_6" class="gfield gform_hidden field_sublabel_below field_description_below gfield_visibility_visible" ><div class='ginput_container ginput_container_text'><input name='input_6' id='input_11_6' type='hidden' class='gform_hidden' aria-invalid="false" value='NOT PROVIDED' /></div></li><li id="field_11_7" class="gfield gform_hidden field_sublabel_below field_description_below gfield_visibility_visible" ><div class='ginput_container ginput_container_text'><input name='input_7' id='input_11_7' type='hidden' class='gform_hidden' aria-invalid="false" value='NOT PROVIDED' /></div></li><li id="field_11_8" class="gfield gform_hidden field_sublabel_below field_description_below gfield_visibility_visible" ><div class='ginput_container ginput_container_text'><input name='input_8' id='input_11_8' type='hidden' class='gform_hidden' aria-invalid="false" value='NOT PROVIDED' /></div></li><li id="field_11_9" class="gfield gform_validation_container field_sublabel_below field_description_below gfield_visibility_visible" ><label class='gfield_label' for='input_11_9' >Name</label><div class='ginput_container'><input name='input_9' id='input_11_9' type='text' value='' /></div><div class='gfield_description' id='gfield_description_11_9'>This field is for validation purposes and should be left unchanged.</div></li></ul></div> <div class='gform_footer top_label'> <button type="submit" class="button-3" id="gform_submit_button_11">SUBSCRIBE</button> <input type='hidden' name='gform_ajax' value='form_id=11&amp;title=&amp;description=&amp;tabindex=0' /> <input type='hidden' class='gform_hidden' name='is_submit_11' value='1' /> <input type='hidden' class='gform_hidden' name='gform_submit' value='11' /> <input type='hidden' class='gform_hidden' name='gform_unique_id' value='' /> <input type='hidden' class='gform_hidden' name='state_11' value='WyJbXSIsIjRjNDYzMzMwNzM3OTFjM2ZlOGZhNjY2ZDA4ZDVlMDcyIl0=' /> <input type='hidden' class='gform_hidden' name='gform_target_page_number_11' id='gform_target_page_number_11' value='0' /> <input type='hidden' class='gform_hidden' name='gform_source_page_number_11' id='gform_source_page_number_11' value='1' /> <input type='hidden' name='gform_field_values' value='' /> </div> <p style="display: none !important;"><label>&#916;<textarea name="ak_hp_textarea" cols="45" rows="8" maxlength="100"></textarea></label><input type="hidden" id="ak_js" name="ak_js" value="128"/><script>document.getElementById( "ak_js" ).setAttribute( "value", ( new Date() ).getTime() );</script></p></form> </div> <iframe style='display:none;width:0px;height:0px;' src='about:blank' name='gform_ajax_frame_11' id='gform_ajax_frame_11' title='This iframe contains the logic required to handle Ajax powered Gravity Forms.'></iframe> <script type="text/javascript"> gform.initializeOnLoaded( function() {gformInitSpinner( 11, 'https://powerretail.com.au/wp-content/plugins/gravityforms/images/spinner.svg' );jQuery('#gform_ajax_frame_11').on('load',function(){var contents = jQuery(this).contents().find('*').html();var is_postback = contents.indexOf('GF_AJAX_POSTBACK') >= 0;if(!is_postback){return;}var form_content = jQuery(this).contents().find('#gform_wrapper_11');var is_confirmation = jQuery(this).contents().find('#gform_confirmation_wrapper_11').length > 0;var is_redirect = contents.indexOf('gformRedirect(){') >= 0;var is_form = form_content.length > 0 && ! is_redirect && ! is_confirmation;var mt = parseInt(jQuery('html').css('margin-top'), 10) + parseInt(jQuery('body').css('margin-top'), 10) + 100;if(is_form){jQuery('#gform_wrapper_11').html(form_content.html());if(form_content.hasClass('gform_validation_error')){jQuery('#gform_wrapper_11').addClass('gform_validation_error');} else {jQuery('#gform_wrapper_11').removeClass('gform_validation_error');}setTimeout( function() { /* delay the scroll by 50 milliseconds to fix a bug in chrome */ jQuery(document).scrollTop(jQuery('#gform_wrapper_11').offset().top - mt); }, 50 );if(window['gformInitDatepicker']) {gformInitDatepicker();}if(window['gformInitPriceFields']) {gformInitPriceFields();}var current_page = jQuery('#gform_source_page_number_11').val();gformInitSpinner( 11, 'https://powerretail.com.au/wp-content/plugins/gravityforms/images/spinner.svg' );jQuery(document).trigger('gform_page_loaded', [11, current_page]);window['gf_submitting_11'] = false;}else if(!is_redirect){var confirmation_content = jQuery(this).contents().find('.GF_AJAX_POSTBACK').html();if(!confirmation_content){confirmation_content = contents;}setTimeout(function(){jQuery('#gform_wrapper_11').replaceWith(confirmation_content);jQuery(document).scrollTop(jQuery('#gf_11').offset().top - mt);jQuery(document).trigger('gform_confirmation_loaded', [11]);window['gf_submitting_11'] = false;wp.a11y.speak(jQuery('#gform_confirmation_message_11').text());}, 50);}else{jQuery('#gform_11').append(contents);if(window['gformRedirect']) {gformRedirect();}}jQuery(document).trigger('gform_post_render', [11, current_page]);} );} ); </script><script type="text/javascript"> gform.initializeOnLoaded( function() { jQuery(document).on('gform_post_render', function(event, formId, currentPage){if(formId == 11) {if(typeof Placeholders != 'undefined'){ Placeholders.enable(); }} } );jQuery(document).bind('gform_post_conditional_logic', function(event, formId, fields, isInit){} ) } ); </script><script type="text/javascript"> gform.initializeOnLoaded( function() { jQuery(document).trigger('gform_post_render', [11, 1]) } ); </script>