not allowed for path ${i}`)},e.setRequestHeader=function(t,r){l(decodeURIComponent(t),c)&&n.call(e,t,r)},e}return e({property:"fetch",value:function(){let e=function(e,t){return globalThis.Request&&e[0]instanceof Request&&e[0]?.headers?a(e[0].headers,t):e[1]?.headers&&a(e[1].headers,t),e}(arguments,c);return u(arguments[0],t)?n.apply(globalThis,Array.from(e)):new Promise((e,t)=>{t(new Error(o||`Request not allowed for path ${arguments[0]}`))})},enumerable:!0}),e({property:"XMLHttpRequest",value:s,enumerable:!0}),Object.keys(i).forEach(e=>{s[e]=i[e]}),{fetch:n,XMLHttpRequest:i}}var p=["TextEncoder","TextDecoder","XMLHttpRequestEventTarget","EventTarget","URL","JSON","Reflect","Object","Array","Map","Set","WeakMap","WeakSet","Promise","Symbol","Error"],f=["addEventListener","removeEventListener","dispatchEvent","encodeURI","encodeURIComponent","decodeURI","decodeURIComponent"];const d=function(){let t=globalThis.open,r=document.open;function o(e,r,o){let n="string"!=typeof e,i=t.call(window,e,r,o);return n||e&&function(e){return e.startsWith("//")&&/(?:[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?\.)+[a-z0-9][a-z0-9-]{0,61}[a-z0-9]/g.test(`${location.protocol}:${e}`)&&(e=`${location.protocol}${e}`),!e.startsWith("http")||new URL(e).hostname===location.hostname}(e)?{}:i}return e({property:"open",value:o,context:globalThis,enumerable:!0}),e({property:"open",value:function(e,t,n){return e?o(e,t,n):r.call(document,e||"",t||"",n||"")},context:document,enumerable:!0}),{open:t,documentOpen:r}},y=function(){let t=document.createElement,r=Element.prototype.setAttribute,o=Element.prototype.setAttributeNS;return e({property:"createElement",context:document,value:function(n,i){let a=t.call(document,n,i);if("iframe"===c(n)){e({property:"srcdoc",context:a,get:()=>"",set:()=>{console.warn("`srcdoc` is not allowed in iframe elements.")}});let t=function(e,t){"srcdoc"!==e.toLowerCase()?r.call(a,e,t):console.warn("`srcdoc` attribute is not allowed to be set.")},n=function(e,t,r){"srcdoc"!==t.toLowerCase()?o.call(a,e,t,r):console.warn("`srcdoc` attribute is not allowed to be set.")};a.setAttribute=t,a.setAttributeNS=n}return a},enumerable:!0}),{createElement:t,setAttribute:r,setAttributeNS:o}},m=["client-binding"],b=["/_api/v1/access-tokens","/_api/v2/dynamicmodel","/_api/one-app-session-web/v3/businesses"],h=function(){let t=setTimeout,r=setInterval;return o("setTimeout",0,globalThis),o("setInterval",0,globalThis),{setTimeout:t,setInterval:r};function o(t,r,o){let n=o||globalThis,i=n[t];if(!i||"function"!=typeof i)throw new Error(`Function ${t} not found or is not a function`);e({property:t,value:function(){let e=Array.from(arguments);if("string"!=typeof e[r])return i.apply(n,e);console.warn(`Calling ${t} with a String Argument at index ${r} is not allowed`)},context:o,enumerable:!0})}},v=function(){if(navigator&&"serviceWorker"in navigator){let t=navigator.serviceWorker.register;return e({context:navigator.serviceWorker,property:"register",value:function(){console.log("Service worker registration is not allowed")},enumerable:!0}),{register:t}}return{}};performance.mark("overrideGlobals started");const{isExcludedFromSecurityExperiments:g,experiments:w}=window.viewerModel,E=!g&&w["specs.thunderbolt.securityExperiments"];try{d(),E&&y(),w["specs.thunderbolt.hardenFetchAndXHR"]&&E&&s(b,m),v(),(e=>{let t=[],r=[];r=r.concat(["TextEncoder","TextDecoder"]),e&&(r=r.concat(["XMLHttpRequestEventTarget","EventTarget"])),r=r.concat(["URL","JSON"]),e&&(t=t.concat(["addEventListener","removeEventListener"])),t=t.concat(["encodeURI","encodeURIComponent","decodeURI","decodeURIComponent"]),r=r.concat(["String","Number"]),e&&r.push("Object"),r=r.concat(["Reflect"]),t.forEach(e=>{n(e),["addEventListener","removeEventListener"].includes(e)&&n(e,document)}),r.forEach(e=>{o({property:e})})})(E),E&&h()}catch(e){window?.viewerModel?.mode.debug&&console.error(e);const t=new Error("TB006");window.fedops?.reportError(t,"security_overrideGlobals"),window.Sentry?window.Sentry.captureException(t):globalThis.defineStrictProperty("sentryBuffer",[t],window,!1)}performance.mark("overrideGlobals ended")})(); //# sourceMappingURL=https://static.parastorage.com/services/wix-thunderbolt/dist/overrideGlobals.inline.ec13bfcf.bundle.min.js.map
top of page

Customer Experience & Communication Strategy

Get the expertise of a seasoned CMO without the full-time commitment

Growing businesses hit a wall when marketing becomes reactive instead of strategic. You've proven your concept works, but scaling requires senior-level marketing leadership and clear execution plans. You need someone who's been in the trenches and knows what actually moves the needle. No fluff, no theory—just proven strategies your team can implement immediately.

Abstract Fluid Artwork
About

I help growing businesses ready to scale 

Founders who've proven their concept but need strategic marketing to reach the next level. Established businesses hitting growth plateaus and needing fresh perspective. Business owners ready to invest in strategic marketing to accelerate growth. 

I'm Moya, a marketing strategist with three decades of experience helping brands grow. I work with ambitious founders and business owners who know they need strategic marketing but don't know where to start, or are looking for a partner who shares their vision and ambition.

Moya_Headshotjpg.jpg
Services

How I can Help 

Fractional CMO Services & Marketing Strategy 

[ 01 ]

Senior marketing leadership without the full-time cost Perfect for growing businesses who need strategic direction, team guidance, and hands-on execution support to scale effectively.

Customer Experience & Communication Strategy

[ 03 ]

Turn customers into advocates through every touchpoint End-to-end customer journey mapping, cross-channel experience optimisation, and communication strategies that attracts prospects and convert them into loyal customers. 

Growth Strategy &

Go-To -Market Planning

[ 02 ]

From vision to actionable roadmap Complete market positioning, customer experience strategy, and go-to-market plans that include compelling storytelling and cross-channel execution.

Product Strategy & Transformation

[ 04 ]

Strategic roadmaps that drive business transformation. Product vision development, strategic roadmaps, and transformation strategy. I work as an embedded strategist or product owner to help businesses navigate complex change and growth initiatives.

Marketing Playbooks & Implementation Guides

[ 05 ]

Proven strategies made actionable.  Comprehensive frameworks and step-by-step guides for businesses ready to execute strategic marketing with their internal teams.

Anchor 1
Testimonials

In their words 

Real results from real partnerships. Here's what clients say about working together.

Amelia Pickering

CEO Prison Network 

"Working with Moya on developing our Marketing and Communications strategy was an absolute joy. From the outset, she immersed herself fully in our mission and work, asking thoughtful, probing questions to truly understand who we are and what we’re trying to achieve."

 

Through a collaborative process of developing stakeholder personas, Moya helped us gain a much clearer understanding of who we were speaking to—and, just as importantly, how best to connect and communicate with them. Her insights have had a significant impact on how we approach our messaging and engagement.

 

Moya is a straight shooter and a sharp strategic thinker, bringing clarity, direction, and purpose to every conversation. And she does it all with a fabulous sense of humour and warmth that makes working with her not just productive, but genuinely enjoyable. She’s deeply invested in the work and it shows. We’re incredibly grateful for her contribution and would jump at the chance to work with her again.

Nicolle Dean, 

Co-Founder QLVR 

“MJ's expertise is unparalleled.”

James McPherson 

Founder & Chief Ideas Man, JimmyRum

"Moya from MJ&Co was an exceptional marketing consultant during her 12+ months working part-time with JimmyRum. We engaged Moya for her extensive experience in brand and marketing strategy, and she delivered beyond expectations."

Her work spanned both strengthening our overall brand positioning and guiding our strategic direction across a uniquely diverse business. She demonstrated the ability to see the bigger picture while also diving deep into specific initiatives. Notably, Moya independently developed and successfully launched several major projects, including our first-ever ready-to-drink cans.

Moya worked with outstanding autonomy, quickly grasping our vision, and had a remarkable talent for turning a founder’s scattered ideas into clear, actionable strategies that integrated seamlessly into our broader marketing plan. She is a true team player, fitting in effortlessly with our existing crew and becoming part of the JimmyRum family.

Contact

Lets Chat! 

bottom of page