{"id":3173,"date":"2026-08-10T15:31:37","date_gmt":"2026-08-10T15:31:37","guid":{"rendered":"https:\/\/www.bare-digital.com\/ashe\/?page_id=3173"},"modified":"2026-09-08T06:45:22","modified_gmt":"2026-09-08T06:45:22","slug":"pricing-for-profit-html","status":"publish","type":"page","link":"https:\/\/www.bare-digital.com\/ashe\/pricing-for-profit-html\/","title":{"rendered":"pricing-for-profit"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-page\" data-elementor-id=\"3173\" class=\"elementor elementor-3173\" data-elementor-post-type=\"page\">\n\t\t\t\t<div class=\"elementor-element elementor-element-9f7034a e-flex e-con-boxed e-con e-parent\" data-id=\"9f7034a\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-7b0dc8c elementor-widget__width-inherit elementor-widget elementor-widget-html\" data-id=\"7b0dc8c\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<html lang=\"en\">\r\n<head>\r\n<meta charset=\"utf-8\">\r\n<meta name=\"viewport\" content=\"width=device-width, initial-scale=1\">\r\n<title>How many must you sell \u00b7 Build It Backwards<\/title>\r\n<link rel=\"preconnect\" href=\"https:\/\/fonts.googleapis.com\">\r\n<link rel=\"preconnect\" href=\"https:\/\/fonts.gstatic.com\" crossorigin>\r\n<link href=\"https:\/\/fonts.googleapis.com\/css2?family=Fraunces:opsz,wght@9..144,400;9..144,500&family=Inter:wght@400;500&family=Plus+Jakarta+Sans:wght@600;700&display=swap\" rel=\"stylesheet\">\r\n<style>\r\n  :root{\r\n    --ivory:#F6F0E6; --cream:#FCF8F1; --plum:#4A2C3B; --caramel:#BE8A5A; --caramelD:#9A6B3A;\r\n    --rose:#C7A07A; --ink:#2B2328; --muted:#6E5F63; --faint:#B4A69F; --line:#E7D9C4;\r\n    --sf:'Fraunces',Georgia,serif; --ss:'Inter',-apple-system,system-ui,sans-serif;\r\n  }\r\n  *{box-sizing:border-box}\r\n  body{margin:0;background:var(--ivory);color:var(--ink);font-family:var(--ss);line-height:1.55;-webkit-font-smoothing:antialiased}\r\n  .wrap{max-width:720px;margin:0 auto;padding:32px 20px 60px}\r\n  .eye{font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--caramelD)}\r\n  h1{font-family:var(--sf);font-weight:500;font-size:30px;margin:6px 0 2px}\r\n  .lede{color:var(--muted);font-size:14px;margin:0;max-width:56ch}\r\n\r\n  .target{margin-top:20px;background:var(--plum);color:#F1E6D8;border-radius:14px;padding:20px 22px;display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap}\r\n  .target .l{font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:#CBB4A2}\r\n  .target .from{font-size:11px;color:#B79A86;margin-top:3px}\r\n  .target .from a.auditbtn{display:inline-block;text-decoration:none;background:var(--caramel);color:#3A2230;font-size:12px;font-weight:500;padding:7px 13px;border-radius:18px;margin-top:6px}\r\n  .target .in{display:flex;align-items:baseline;gap:3px}\r\n  .target .in span{font-family:var(--sf);font-size:22px;color:#CBB4A2}\r\n  .target .in input{border:none;background:transparent;font-family:var(--sf);font-size:34px;color:#F1E6D8;width:150px;text-align:right;padding:0;outline:none;border-bottom:1px solid #5C3F4D}\r\n\r\n  .typebar{margin-top:18px;display:flex;gap:8px;flex-wrap:wrap}\r\n  .typebar button{font-family:var(--ss);font-size:13.5px;border:1px solid var(--line);background:#fff;color:var(--ink);border-radius:22px;padding:10px 18px;cursor:pointer}\r\n  .typebar button.on{background:var(--plum);color:#F3E9DC;border-color:var(--plum)}\r\n  .typedesc{font-size:13px;color:var(--muted);margin-top:10px;font-style:italic}\r\n\r\n  .card{margin-top:14px;background:var(--cream);border:1px solid var(--line);border-radius:12px;padding:20px 22px}\r\n  .card h2{font-family:var(--sf);font-weight:500;font-size:17px;margin:0 0 10px}\r\n  .field{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:9px 0;border-top:1px solid var(--line)}\r\n  .field:first-of-type{border-top:none}\r\n  .field label{font-size:13.5px}\r\n  .field label .h{display:block;font-size:11.5px;color:var(--muted)}\r\n  .field .in{display:flex;align-items:baseline;gap:2px}\r\n  .field .in .pre,.field .in .suf{font-size:14px;color:var(--faint)}\r\n  .field .in input{border:none;background:transparent;font-family:var(--sf);font-size:20px;color:var(--ink);width:110px;text-align:right;padding:0;outline:none;border-bottom:1px solid transparent}\r\n  .field .in input:focus{border-bottom:1px solid var(--rose)}\r\n\r\n  .result{margin-top:18px;background:var(--caramel);color:#3A2230;border-radius:16px;padding:28px;text-align:center}\r\n  .result .cap{font-size:11px;letter-spacing:.13em;text-transform:uppercase;color:#6B4A2E}\r\n  .result .big{font-family:var(--sf);font-size:46px;line-height:1.05;margin:8px 0 2px}\r\n  .result .u{font-size:14px;color:#5A4331}\r\n  .result .line{font-size:14px;color:#4A3628;margin-top:12px}\r\n  .result.warn{background:#E7CBC0}\r\n  .grid2{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:12px}\r\n  .stat{background:var(--cream);border:1px solid var(--line);border-radius:12px;padding:14px 16px}\r\n  .stat .k{font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}\r\n  .stat .v{font-family:var(--sf);font-size:24px;margin-top:3px}\r\n\r\n  .note{margin-top:16px;font-size:12.5px;color:var(--muted);text-align:center;line-height:1.55}\r\n  .note a{color:var(--caramelD)}\r\n\r\n  .strivex{margin-top:22px;background:#161D51;border-radius:16px;padding:24px 26px;text-align:center;font-family:'Plus Jakarta Sans',var(--ss)}\r\n  .strivex .k{font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:#8E93C4;font-weight:600}\r\n  .strivex h3{font-family:'Plus Jakarta Sans',var(--ss);font-weight:700;font-size:19px;color:#fff;margin:8px 0 6px}\r\n  .strivex p{font-size:13px;color:#C6C9E4;margin:0 auto 16px;max-width:44ch}\r\n  .strivex a.cta{display:inline-block;background:#7B08B5;color:#fff;font-family:'Plus Jakarta Sans',var(--ss);font-weight:600;font-size:15px;text-decoration:none;padding:13px 28px;border-radius:50px}\r\n  .foot{margin-top:18px;font-size:11px;color:#9A8C86;text-align:center}\r\n<\/style>\r\n<\/head>\r\n<body>\r\n<div class=\"wrap\">\r\n  <div class=\"eye\">Build it backwards \u00b7 toolkit<\/div>\r\n  <h1>How many must you sell?<\/h1>\r\n  <p class=\"lede\">You know the revenue you need. This is the reality check: it turns that revenue target into the number of sales that actually hits it, so you can see whether your prices stack up.<\/p>\r\n\r\n  <div class=\"target\">\r\n    <div><div class=\"l\">Your revenue target<\/div><div class=\"from\" id=\"targetFrom\"><\/div><\/div>\r\n    <div class=\"in\"><span>\u00a3<\/span><input id=\"target\" type=\"number\" min=\"0\" step=\"100\" value=\"0\"><span style=\"font-size:13px\">\/mo<\/span><\/div>\r\n  <\/div>\r\n\r\n  <div class=\"typebar\">\r\n    <button data-t=\"service\" class=\"on\">Service based<\/button>\r\n    <button data-t=\"product\">Product based<\/button>\r\n    <button data-t=\"productized\">Productized \u00b7 digital<\/button>\r\n  <\/div>\r\n  <div class=\"typedesc\" id=\"typedesc\"><\/div>\r\n\r\n  <div class=\"card\">\r\n    <h2 id=\"cardTitle\">What you charge<\/h2>\r\n    <div class=\"field\"><label id=\"lPrice\">Your price<\/label><div class=\"in\"><span class=\"pre\">\u00a3<\/span><input id=\"price\" type=\"number\" min=\"0\" step=\"10\" value=\"800\"><\/div><\/div>\r\n  <\/div>\r\n\r\n  <div class=\"result\" id=\"result\">\r\n    <div class=\"cap\">To hit your revenue target, sell about<\/div>\r\n    <div class=\"big\" id=\"units\">0<\/div>\r\n    <div class=\"u\" id=\"unitLabel\">a month<\/div>\r\n    <div class=\"line\" id=\"cadence\"><\/div>\r\n  <\/div>\r\n\r\n  <div class=\"grid2\">\r\n    <div class=\"stat\"><div class=\"k\">Each sale brings in<\/div><div class=\"v\" id=\"perSale\">\u00a30<\/div><\/div>\r\n    <div class=\"stat\"><div class=\"k\">That is about<\/div><div class=\"v\" id=\"perWeek\">0 a week<\/div><\/div>\r\n  <\/div>\r\n\r\n  <p class=\"note\">Your revenue target is set in the <a href=\"revenue-target.html\">revenue tool<\/a>, which works it out from Your Number and your costs. This tool does not change it, it just shows you what it means in sales.<\/p>\r\n\r\n  <div class=\"strivex\">\r\n    <div class=\"k\">Build it backwards \u00b7 striveX<\/div>\r\n    <h3>Not sure the numbers stack up?<\/h3>\r\n    <p>If you would like help pressure-testing whether this is realistic, or reshaping your model so it is, that is what we do at striveX.<\/p>\r\n    <a class=\"cta\" href=\"https:\/\/strivex.co.uk\/become-a-client-accounting\/\" target=\"_blank\" rel=\"noopener\">Become a client<\/a>\r\n  <\/div>\r\n\r\n  <p class=\"foot\">A guide to help you think, not a forecast. Your numbers stay in your own browser.<\/p>\r\n<\/div>\r\n\r\n<script>\r\n  function gbp(n){ return '\\u00A3' + Math.round(n).toLocaleString('en-GB'); }\r\n  function num(id){ var n=parseFloat(document.getElementById(id).value); return (isNaN(n)||n<0)?0:n; }\r\n  var type='service';\r\n\r\n  var COPY={\r\n    service:{ desc:'You sell your time and expertise, by the project, day or retainer.', price:'Your price per project or client', unit:'clients or projects', word:'projects' },\r\n    product:{ desc:'You sell a physical product.', price:'Your price per unit', unit:'units', word:'units' },\r\n    productized:{ desc:'You built it once and sell it again and again, like a course or template.', price:'Your price per sale', unit:'sales', word:'sales' }\r\n  };\r\n\r\n  (function(){\r\n    var found=false;\r\n    try{ var d=JSON.parse(localStorage.getItem('bib_dashboard')); if(d&&d.foundations&&d.foundations.revenueTarget){ document.getElementById('target').value=d.foundations.revenueTarget; found=true; } }catch(e){}\r\n    if(!found) document.getElementById('target').value=10000;\r\n    var tf=document.getElementById('targetFrom');\r\n    if(found){ tf.textContent='Pulled from your revenue tool'; }\r\n    else { tf.innerHTML='Not set your revenue target yet? <a class=\"auditbtn\" href=\"revenue-target.html\">Do the revenue step<\/a> &nbsp; or type it in above.'; }\r\n  })();\r\n\r\n  function render(){\r\n    var c=COPY[type];\r\n    document.getElementById('typedesc').textContent=c.desc;\r\n    document.getElementById('lPrice').textContent=c.price;\r\n\r\n    var target=num('target'), price=num('price');\r\n    var res=document.getElementById('result');\r\n    document.getElementById('perSale').textContent=gbp(price);\r\n\r\n    if(price<=0){\r\n      res.classList.add('warn');\r\n      document.getElementById('units').textContent='0';\r\n      document.getElementById('unitLabel').textContent='add your price above';\r\n      document.getElementById('cadence').textContent='Pop in what you charge and I will show you how many sales hit your target.';\r\n      document.getElementById('perWeek').textContent='0 a week';\r\n      return;\r\n    }\r\n    res.classList.remove('warn');\r\n    var units=Math.ceil(target\/price);\r\n    var perWeek=Math.round(units\/4.33*10)\/10;\r\n    document.getElementById('units').textContent=units;\r\n    document.getElementById('unitLabel').textContent=c.unit+' a month';\r\n    document.getElementById('cadence').textContent='That is about '+perWeek+' a week. Does that feel doable at '+gbp(price)+' a '+c.word.replace(\/s$\/,'')+', or is it time to charge more?';\r\n    document.getElementById('perWeek').textContent=perWeek+' a week';\r\n  }\r\n\r\n  document.querySelectorAll('.typebar button').forEach(function(b){\r\n    b.addEventListener('click',function(){\r\n      document.querySelectorAll('.typebar button').forEach(function(x){x.classList.remove('on');});\r\n      b.classList.add('on'); type=b.getAttribute('data-t'); render();\r\n    });\r\n  });\r\n  document.querySelectorAll('input').forEach(function(i){ i.addEventListener('input',render); });\r\n\r\n  render();\r\n<\/script>\r\n<\/body>\r\n<\/html>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t","protected":false},"excerpt":{"rendered":"<p>How many must you sell \u00b7 Build It Backwards Build it backwards \u00b7 toolkit How many must you sell? You know the revenue you need. This is the reality check: it turns that revenue target into the number of sales that actually hits it, so you can see whether your prices stack up. Your revenue [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"elementor_header_footer","meta":{"_acf_changed":false,"_eb_attr":"","_templately_pack_id":"","_templately_imported_at":"","_templately_source":"","_templately_import_session_id":"","footnotes":""},"class_list":["post-3173","page","type-page","status-publish","hentry"],"acf":[],"_links":{"self":[{"href":"https:\/\/www.bare-digital.com\/ashe\/wp-json\/wp\/v2\/pages\/3173","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.bare-digital.com\/ashe\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/www.bare-digital.com\/ashe\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/www.bare-digital.com\/ashe\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/www.bare-digital.com\/ashe\/wp-json\/wp\/v2\/comments?post=3173"}],"version-history":[{"count":4,"href":"https:\/\/www.bare-digital.com\/ashe\/wp-json\/wp\/v2\/pages\/3173\/revisions"}],"predecessor-version":[{"id":3181,"href":"https:\/\/www.bare-digital.com\/ashe\/wp-json\/wp\/v2\/pages\/3173\/revisions\/3181"}],"wp:attachment":[{"href":"https:\/\/www.bare-digital.com\/ashe\/wp-json\/wp\/v2\/media?parent=3173"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}