{"id":116532,"date":"2026-11-04T09:26:42","date_gmt":"2026-11-04T15:26:42","guid":{"rendered":"https:\/\/www.shipstation.com\/?post_type=guides&#038;p=116532"},"modified":"2026-11-04T09:26:43","modified_gmt":"2026-11-04T15:26:43","slug":"the-black-friday-and-cyber-monday-game-plan","status":"publish","type":"guides","link":"https:\/\/www.shipstation.com\/en-gb\/guides\/the-black-friday-and-cyber-monday-game-plan\/","title":{"rendered":"The Black Friday and Cyber Monday Game Plan"},"content":{"rendered":"\n<!-- BFCM readiness quiz: paste into a Custom HTML block -->\n<style>\n#bfcm{border-radius:18px;overflow:hidden;\n  --bg:#F6F8FC; --card:#FFFFFF; --ink:#0B1B3F; --muted:#5B6783; --line:#E1E6F0;\n  --brand:#0B1B3F; --accent:#00A878; --accent-ink:#FFFFFF; --warn:#F2780C; --soft:#E6F6F0; --softwarn:#FFF1E3;\n  --hero1:#0B1B3F; --hero2:#17306B; --heroink:#FFFFFF; --shadow:0 6px 24px rgba(11,27,63,.08);\n}\n#bfcm *{box-sizing:border-box}\n#bfcm{margin:0;background:var(--bg);color:var(--ink);font:17px\/1.6 -apple-system,BlinkMacSystemFont,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased}\n#bfcm .wrap{max-width:860px;margin:0 auto;padding:0 20px}\n#bfcm h2,#bfcm h2,#bfcm h3{line-height:1.15;margin:0 0 .5em;letter-spacing:-.01em}\n#bfcm h2{font-size:clamp(26px,4vw,34px)}\n#bfcm h3{font-size:20px}\n#bfcm p{margin:0 0 1em}\n#bfcm a{color:inherit}\n#bfcm button{font:inherit;cursor:pointer}\n#bfcm .eyebrow{font-size:13px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--accent)}\n#bfcm .hero{background:linear-gradient(135deg,var(--hero1),var(--hero2));color:var(--heroink);padding:56px 0 72px}\n#bfcm .hero .h-main{font-size:clamp(34px,6vw,56px);margin:.25em 0 .35em}\n#bfcm .hero .h-main em{font-style:normal;color:#5EEAC0}\n#bfcm .hero .eyebrow{color:#12E37A}\n#bfcm .hero .lede{font-size:clamp(21px,2.6vw,26px);line-height:1.4;max-width:600px;opacity:.95}\n#bfcm .hero-grid{max-width:1120px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:48px;align-items:center}\n#bfcm .count{display:flex;gap:28px;margin:0}\n@media (max-width:860px){#bfcm .hero-grid{grid-template-columns:1fr;gap:32px}\n#bfcm .count{flex-wrap:wrap}\n}\n#bfcm .cd{display:flex;flex-direction:column;gap:10px}\n#bfcm .digits{display:flex;gap:8px}\n#bfcm .digit{position:relative;width:62px;height:84px;border-radius:10px;background:linear-gradient(#1D3478,#10224F);border:1px solid rgba(255,255,255,.18);display:grid;place-items:center;font-size:52px;font-weight:800;font-variant-numeric:tabular-nums;color:#fff;box-shadow:0 6px 16px rgba(0,0,0,.3)}\n#bfcm .digit:after{content:\"\";position:absolute;left:0;right:0;top:50%;height:2px;background:rgba(6,12,29,.65);transform:translateY(-1px)}\n#bfcm .digit:before{content:\"\";position:absolute;left:-3px;top:50%;width:5px;height:12px;border-radius:3px;background:#0A1530;transform:translateY(-6px)}\n#bfcm .digit i{font-style:normal;position:relative;z-index:1}\n#bfcm .cd .lbl{font-size:14px;letter-spacing:.04em;opacity:.9}\n#bfcm .cd .lbl b{display:block;font-size:15px;letter-spacing:.1em;text-transform:uppercase;color:#2BFF8F}\n#bfcm .strip{position:relative;display:flex;gap:3px;margin:48px 0 40px;max-width:640px}\n#bfcm .strip .dot{flex:1;height:12px;border-radius:3px;background:rgba(255,255,255,.14)}\n#bfcm .strip .dot.past{background:rgba(43,255,143,.45)}\n#bfcm .strip .dot.now{background:#fff;box-shadow:0 0 0 3px rgba(255,255,255,.3);animation:pulse 1.8s infinite}\n#bfcm .strip .dot.big{background:#2BFF8F;transform:scaleY(1.9)}\n#bfcm .strip .tag{position:absolute;font-size:12px;font-weight:700;white-space:nowrap;transform:translateX(-50%)}\n#bfcm .strip .tag.up{bottom:30px;color:#2BFF8F}\n#bfcm .strip .tag.dn{top:30px;color:#2BFF8F}\n#bfcm .strip .tag.dn{transform:translateX(-85%)}\n#bfcm .strip .tag.first{transform:none}\n#bfcm .strip .tag.mid{top:30px;color:#fff;opacity:.8;font-weight:500}\n@keyframes pulse{50%{box-shadow:0 0 0 6px rgba(255,255,255,0)}\n}\n@media (prefers-reduced-motion:reduce){#bfcm .strip .dot.now{animation:none}\n}\n@media (max-width:600px){#bfcm .digit{width:50px;height:70px;font-size:42px}\n#bfcm .count{gap:22px}\n}\n#bfcm .btn{display:inline-block;border:0;border-radius:999px;padding:13px 26px;font-weight:700;background:var(--accent);color:var(--accent-ink);text-decoration:none;transition:transform .15s}\n#bfcm .btn:hover{transform:translateY(-1px)}\n#bfcm .btn.ghost{background:transparent;color:var(--ink);border:1.5px solid var(--line)}\n#bfcm .btn[disabled]{opacity:.4;cursor:not-allowed;transform:none}\n#bfcm .hero .btn{margin-top:20px;background:#12E37A;color:#0B1B3F}\n#bfcm .intro{padding:48px 0 8px}\n#bfcm .intro p{font-size:18px}\n#bfcm .scene{border-left:4px solid var(--accent);padding-left:18px;font-size:19px;font-weight:500}\n#bfcm .stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px;margin:22px 0}\n#bfcm .stat{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:18px}\n#bfcm .stat b{font-size:34px;color:var(--accent);display:block;line-height:1.1}\n#bfcm .stat small{color:var(--muted);display:block;margin-top:6px;font-size:13px}\n#bfcm section{padding:36px 0}\n#bfcm .card{background:var(--card);border:1px solid var(--line);border-radius:20px;padding:30px;box-shadow:var(--shadow)}\n#bfcm .dots{display:flex;gap:6px;margin-bottom:22px}\n#bfcm .dots i{flex:1;height:6px;border-radius:3px;background:var(--line)}\n#bfcm .dots i.on{background:var(--accent)}\n#bfcm .area{font-size:13px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin-bottom:8px}\n#bfcm .q{font-size:clamp(22px,3.4vw,28px);font-weight:700;line-height:1.25;margin-bottom:20px}\n#bfcm .opts{display:grid;gap:10px}\n#bfcm .opt{text-align:left;background:var(--bg);border:2px solid var(--line);border-radius:14px;padding:15px 18px;color:var(--ink);transition:border-color .15s,background .15s}\n#bfcm .opt:hover{border-color:var(--accent)}\n#bfcm .opt.sel{border-color:var(--accent);background:var(--soft)}\n#bfcm .opt small{display:block;color:var(--muted);font-size:14px;margin-top:2px}\n#bfcm .tip{display:none;margin-top:18px;background:var(--softwarn);border-radius:12px;padding:12px 16px;font-size:15px}\n#bfcm .tip.show{display:block}\n#bfcm .nav{display:flex;justify-content:space-between;gap:10px;margin-top:24px}\n#bfcm .tiers{display:grid;gap:10px}\n#bfcm #bfcm-results{display:none}\n#bfcm .top{display:flex;gap:28px;align-items:center;flex-wrap:wrap}\n#bfcm .ring{position:relative;width:150px;height:150px;flex:none}\n#bfcm .ring svg{transform:rotate(-90deg)}\n#bfcm .ring b{position:absolute;inset:0;display:grid;place-items:center;font-size:36px}\n#bfcm .ring b small{font-size:14px;color:var(--muted);display:block;text-align:center;margin-top:-6px;font-weight:500}\n#bfcm .badge{display:inline-block;font-size:13px;font-weight:700;padding:4px 12px;border-radius:999px;background:var(--soft);color:var(--accent)}\n#bfcm .badge.low{background:var(--softwarn);color:var(--warn)}\n#bfcm .bars{margin:26px 0 4px;display:grid;gap:12px}\n#bfcm .bar{display:grid;grid-template-columns:150px 1fr 48px;align-items:center;gap:12px;font-size:15px}\n#bfcm .track{height:10px;border-radius:5px;background:var(--line);overflow:hidden}\n#bfcm .fill{height:100%;border-radius:5px;background:var(--accent);transition:width .8s ease}\n#bfcm .fill.low{background:var(--warn)}\n#bfcm .phase{margin-top:30px}\n#bfcm .phase h3{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}\n#bfcm .phase h3 span{font-size:14px;color:var(--muted);font-weight:500}\n#bfcm .task{display:flex;gap:12px;align-items:flex-start;padding:12px 14px;border:1px solid var(--line);border-radius:12px;margin-bottom:8px;background:var(--bg);cursor:pointer}\n#bfcm .task input{margin-top:5px;width:18px;height:18px;accent-color:var(--accent);flex:none}\n#bfcm .task.done{opacity:.55}\n#bfcm .task.done .tt{text-decoration:line-through}\n#bfcm .task .due{font-size:13px;color:var(--muted);display:block}\n#bfcm .prog{height:8px;background:var(--line);border-radius:4px;overflow:hidden;margin:10px 0 4px}\n#bfcm .prog div{height:100%;background:var(--accent);width:0;transition:width .3s}\n#bfcm .actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:22px}\n#bfcm .tabs{display:flex;gap:8px;flex-wrap:wrap;margin:20px 0}\n#bfcm .tab{border:1.5px solid var(--line);background:var(--card);color:var(--ink);border-radius:999px;padding:9px 18px;font-weight:600}\n#bfcm .tab.on{background:var(--brand);color:var(--bg);border-color:var(--brand)}\n#bfcm .slot{display:grid;grid-template-columns:110px 1fr;gap:14px;padding:16px 0;border-top:1px solid var(--line)}\n#bfcm .slot:first-of-type{border-top:0}\n#bfcm .slot b{color:var(--accent)}\n#bfcm .slot ul{margin:0;padding-left:18px}\n#bfcm .slot li{margin-bottom:6px}\n#bfcm .pro{background:var(--softwarn);border-radius:12px;padding:14px 18px;margin-top:16px;font-size:16px}\n#bfcm .check{list-style:none;padding:0;margin:0}\n#bfcm .check li{padding:8px 0 8px 32px;position:relative}\n#bfcm .check li:before{content:\"\u2713\";position:absolute;left:0;top:8px;width:22px;height:22px;border-radius:50%;background:var(--soft);color:var(--accent);display:grid;place-items:center;font-size:13px;font-weight:700}\n#bfcm .cta{text-align:center;padding:48px 0 70px}\n#bfcm .cta h2{max-width:560px;margin-left:auto;margin-right:auto}\n#bfcm .foot{font-size:13px;color:var(--muted);text-align:center;padding-bottom:40px}\n@media (max-width:600px){\n  #bfcm .bar{grid-template-columns:1fr 44px}\n#bfcm .bar .track{grid-column:1\/-1;order:3}\n#bfcm .slot{grid-template-columns:1fr;gap:4px}\n#bfcm .card{padding:22px}\n}\n@media print{\n  #bfcm .hero,#bfcm .intro,#bfcm #bfcm-quiz,#bfcm .cta,#bfcm .actions,#bfcm .foot{display:none!important}\n#bfcm{background:#fff;color:#000}\n#bfcm .card{box-shadow:none;border:0;padding:0}\n}\n#bfcm .hero{position:relative;overflow:hidden}\n#bfcm .hero-art{position:absolute;top:0;right:0;width:62%;height:100%;pointer-events:none;display:block}\n#bfcm .hero .wrap{position:relative;z-index:1}\n@media (max-width:860px){#bfcm .hero-art{opacity:.45}}\n#bfcm .cta .btn{background:#12E37A!important;color:#0B1B3F!important}\n#bfcm #bfcm-locked{margin-top:18px}\n#bfcm .lockrow{display:flex;align-items:center;gap:12px;padding:12px 14px;border:1px dashed var(--line);border-radius:12px;margin-bottom:8px;background:var(--bg)}\n#bfcm .lockrow svg{flex:none;color:var(--accent)}\n#bfcm .lockrow b{display:block;font-size:15px}\n#bfcm .ghostbars{flex:1}\n#bfcm .ghostbars i{display:block;height:7px;border-radius:4px;background:var(--line);margin:6px 0 0;width:90%}\n#bfcm .ghostbars i+i{width:62%}\n#bfcm #bfcm-gform{margin-top:18px}\n#bfcm .gform_wrapper{margin:0}\n#bfcm .gform_wrapper .gform_title,#bfcm .gform_wrapper .gform_description{display:none}\n#bfcm .gform_wrapper label,#bfcm .gform_wrapper .gfield_label{font-size:14px!important;font-weight:600!important;color:var(--ink)!important;margin-bottom:6px!important}\n#bfcm .gform_wrapper input[type=text],#bfcm .gform_wrapper input[type=email],#bfcm .gform_wrapper input[type=tel],#bfcm .gform_wrapper select,#bfcm .gform_wrapper textarea,#bfcm .demo-form input{width:100%!important;max-width:100%!important;box-sizing:border-box!important;padding:12px 14px!important;border:1.5px solid var(--line)!important;border-radius:10px!important;font:inherit!important;color:var(--ink)!important;background:#fff!important}\n#bfcm .gform_wrapper input:focus,#bfcm .demo-form input:focus{outline:2px solid var(--accent)!important;outline-offset:1px}\n#bfcm .gform_wrapper .gform_footer{padding:8px 0 0!important;margin:0!important}\n#bfcm .gform_wrapper .gform_button,#bfcm .gform_wrapper input[type=submit],#bfcm .demo-form button{display:inline-flex!important;align-items:center;justify-content:center;min-height:52px;padding:0 28px!important;line-height:1!important;border:0!important;border-radius:999px!important;background:#12E37A!important;color:#0B1B3F!important;font:inherit!important;font-weight:700!important;cursor:pointer;width:auto!important}\n#bfcm .gform_wrapper .gfield_validation_message,#bfcm .gform_wrapper .validation_message{color:#B42318!important;font-size:13px!important}\n#bfcm .gform_confirmation_message{font-weight:600}\n#bfcm .demo-form{display:grid;gap:12px}\n#bfcm .demo-form label{font-size:14px;font-weight:600;display:grid;gap:6px}\n#bfcm .okmsg{background:var(--soft);color:var(--ink);border-radius:12px;padding:12px 16px;margin:0 0 24px;font-size:16px}\n#bfcm .okmsg p{margin:0}\n#bfcm .note{color:var(--muted);font-size:15px;margin:18px 0 0}\n#bfcm .gate-cta{margin-top:20px}\n#bfcm .gate{min-height:420px}\n#bfcm #bfcm-open,#bfcm .modal .btn{background:#12E37A!important;color:#0B1B3F!important}\n#bfcm .modal{position:relative;display:none;margin:16px auto 0;width:min(560px,100%)}\n#bfcm .modal.open{display:block;animation:bfSlide .45s ease}\n#bfcm .modal-box{pointer-events:auto;position:relative;background:#fff;border-radius:18px;padding:28px 28px 24px;width:100%;box-shadow:0 18px 50px rgba(11,27,63,.3),0 0 0 2px #12E37A;box-sizing:border-box}\n@keyframes bfSlide{from{transform:translateY(28px);opacity:0}to{transform:none;opacity:1}}\n@media (prefers-reduced-motion:reduce){#bfcm .modal.open{animation:none}}\n#bfcm .modal-x{position:absolute;top:10px;right:12px;width:38px;height:38px;border:0!important;background:transparent!important;font-size:28px;line-height:1;color:var(--muted)!important;cursor:pointer;padding:0!important}\n#bfcm .modal-box h2{margin-top:6px!important}\n\/* theme overrides: keep headings on-brand regardless of site styles *\/\n#bfcm h2,#bfcm h3{font-family:inherit!important;font-weight:700!important;font-style:normal!important;text-transform:none!important;letter-spacing:-.01em!important;color:var(--ink)!important;text-align:left!important}\n#bfcm .hero .h-main{color:#fff!important;font-weight:800!important;line-height:1.1!important;margin:.25em 0 .35em!important}\n#bfcm .hero .eyebrow{color:#12E37A!important}\n#bfcm .hero .lede{color:#fff!important}\n#bfcm .cta h2{text-align:center!important}\n#bfcm p,#bfcm li,#bfcm button,#bfcm a{font-family:inherit}\n#bfcm .btn{display:inline-flex!important;align-items:center!important;justify-content:center!important;box-sizing:border-box!important;min-height:52px!important;padding:0 28px!important;line-height:1!important;margin-bottom:0!important;vertical-align:middle}\n#bfcm .hero .btn{margin-top:20px!important}\n<\/style>\n<div id=\"bfcm\">\n<div class=\"hero\">\n<svg class=\"hero-art\" viewBox=\"0 0 600 400\" preserveAspectRatio=\"xMaxYMid slice\" aria-hidden=\"true\" focusable=\"false\"><g fill=\"none\" stroke=\"#2BFF8F\" stroke-opacity=\".13\" stroke-width=\"1.3\" stroke-dasharray=\"3 6\" vector-effect=\"non-scaling-stroke\"><path d=\"M20 385 Q200 30 590 105\" vector-effect=\"non-scaling-stroke\"\/><path d=\"M60 235 Q260 -35 590 275\" vector-effect=\"non-scaling-stroke\"\/><path d=\"M150 398 Q350 185 590 350\" vector-effect=\"non-scaling-stroke\"\/><\/g><g fill=\"#2BFF8F\" fill-opacity=\".25\"><circle cx=\"20\" cy=\"385\" r=\"3.5\"\/><circle cx=\"590\" cy=\"105\" r=\"3.5\"\/><circle cx=\"60\" cy=\"235\" r=\"3.5\"\/><circle cx=\"590\" cy=\"275\" r=\"3.5\"\/><circle cx=\"150\" cy=\"398\" r=\"3.5\"\/><circle cx=\"590\" cy=\"350\" r=\"3.5\"\/><\/g><\/svg>\n  <div class=\"wrap hero-grid\">\n    <div class=\"hero-copy\">\n      <div class=\"eyebrow\">Interactive BFCM quiz<\/div>\n      <h2 class=\"h-main\">The Black Friday and Cyber Monday Game Plan<\/h2>\n      <p class=\"lede\">The busiest fulfillment and shipping days of the year are approaching fast. Is your operation ready to handle the rush?<\/p>\n      <a class=\"btn\" href=\"#bfcm-quiz\">Check Your Readiness<\/a>\n    <\/div>\n    <div class=\"count\" id=\"bfcm-count\" aria-live=\"polite\"><\/div>\n  <\/div>\n<\/div>\n<div class=\"wrap\">\n<div class=\"intro\" id=\"bfcm-intro\">\n  <p>You can&#8217;t control the holiday rush, but you can control how ready you are for it. Take the Black Friday and Cyber Monday Readiness Quiz to see how prepared your fulfillment and shipping operations really are. In just a few minutes, uncover your biggest risks, get your readiness score, and find out what needs your attention before orders start pouring in.<\/p>\n<\/div>\n<section id=\"bfcm-quiz\">\n  <div class=\"card\" id=\"bfcm-quizCard\"><\/div>\n  <div class=\"card\" id=\"bfcm-results\" aria-live=\"polite\"><\/div>\n  <div class=\"modal\" id=\"bfcm-modal\" role=\"dialog\" aria-modal=\"false\" aria-labelledby=\"bfcm-modal-title\">\n    <div class=\"modal-box\">\n      <button class=\"modal-x\" type=\"button\" aria-label=\"Close\">&times;<\/button>\n      <div class=\"eyebrow\">Your free full results<\/div>\n      <h2 id=\"bfcm-modal-title\">That&#8217;s your high-level score<\/h2>\n      <p>This shows where you stand. Fill out your details to get a free, personalized look at what&#8217;s behind it: tips to close each gap, your dated plan, and your gut check checklist.<\/p>\n      <div id=\"bfcm-locked\"><\/div>\n      <!-- Gravity Forms form ID 52. If you change it, also update CFG.formId in the script. Keep ajax=\"true\". -->\n      <div id=\"bfcm-gform\"><script>\nvar gform;gform||(document.addEventListener(\"gform_main_scripts_loaded\",function(){gform.scriptsLoaded=!0}),document.addEventListener(\"gform\/theme\/scripts_loaded\",function(){gform.themeScriptsLoaded=!0}),window.addEventListener(\"DOMContentLoaded\",function(){gform.domLoaded=!0}),gform={domLoaded:!1,scriptsLoaded:!1,themeScriptsLoaded:!1,isFormEditor:()=>\"function\"==typeof InitializeEditor,callIfLoaded:function(o){return!(!gform.domLoaded||!gform.scriptsLoaded||!gform.themeScriptsLoaded&&!gform.isFormEditor()||(gform.isFormEditor()&&console.warn(\"The use of gform.initializeOnLoaded() is deprecated in the form editor context and will be removed in Gravity Forms 3.1.\"),o(),0))},initializeOnLoaded:function(o){gform.callIfLoaded(o)||(document.addEventListener(\"gform_main_scripts_loaded\",()=>{gform.scriptsLoaded=!0,gform.callIfLoaded(o)}),document.addEventListener(\"gform\/theme\/scripts_loaded\",()=>{gform.themeScriptsLoaded=!0,gform.callIfLoaded(o)}),window.addEventListener(\"DOMContentLoaded\",()=>{gform.domLoaded=!0,gform.callIfLoaded(o)}))},hooks:{action:{},filter:{}},addAction:function(o,r,e,t){gform.addHook(\"action\",o,r,e,t)},addFilter:function(o,r,e,t){gform.addHook(\"filter\",o,r,e,t)},doAction:function(o){gform.doHook(\"action\",o,arguments)},applyFilters:function(o){return gform.doHook(\"filter\",o,arguments)},removeAction:function(o,r){gform.removeHook(\"action\",o,r)},removeFilter:function(o,r,e){gform.removeHook(\"filter\",o,r,e)},addHook:function(o,r,e,t,n){null==gform.hooks[o][r]&&(gform.hooks[o][r]=[]);var d=gform.hooks[o][r];null==n&&(n=r+\"_\"+d.length),gform.hooks[o][r].push({tag:n,callable:e,priority:t=null==t?10:t})},doHook:function(r,o,e){var t;if(e=Array.prototype.slice.call(e,1),null!=gform.hooks[r][o]&&((o=gform.hooks[r][o]).sort(function(o,r){return o.priority-r.priority}),o.forEach(function(o){\"function\"!=typeof(t=o.callable)&&(t=window[t]),\"action\"==r?t.apply(null,e):e[0]=t.apply(null,e)})),\"filter\"==r)return e[0]},removeHook:function(o,r,t,n){var e;null!=gform.hooks[o][r]&&(e=(e=gform.hooks[o][r]).filter(function(o,r,e){return!!(null!=n&&n!=o.tag||null!=t&&t!=o.priority)}),gform.hooks[o][r]=e)}});\n<\/script>\n\n                <div class='gf_browser_gecko gform_wrapper gform-theme gform-theme--foundation gform-theme--framework gform-theme--orbital' data-form-theme='orbital' data-form-index='0' id='gform_wrapper_52' ><div id='gf_52' class='gform_anchor' tabindex='-1'><\/div>\n                        <div class='gform_heading'>\n\t\t\t\t\t\t\t<p class='gform_required_legend'>&quot;<span class=\"gfield_required gfield_required_asterisk\">*<\/span>&quot; indicates required fields<\/p>\n                        <\/div><form method='post' enctype='multipart\/form-data' target='gform_ajax_frame_52' id='gform_52'  action='\/en-gb\/wp-json\/wp\/v2\/guides\/116532#gf_52' data-formid='52' novalidate>\n                        <div class='gform-body gform_body'><div id='gform_fields_52' class='gform_fields top_label form_sublabel_below description_below validation_below'><div id=\"field_52_1\" class=\"gfield gfield--type-text gfield--input-type-text gfield_contains_required field_sublabel_below gfield--no-description field_description_below field_validation_below gfield_visibility_visible\"  ><label class='gfield_label gform-field-label' for='input_52_1'><span class='gform-field-label__text'>Email<\/span><span class=\"gfield_required\"><span class=\"gfield_required gfield_required_asterisk\">*<\/span><\/span><\/label><div class='ginput_container ginput_container_text'><input name='input_1' id='input_52_1' type='text' value='' class='large'     aria-required=\"true\" aria-invalid=\"false\"   \/><\/div><\/div><div id=\"field_52_3\" class=\"gfield gfield--type-text gfield--input-type-text gfield--width-half gfield_contains_required field_sublabel_below gfield--no-description field_description_below field_validation_below gfield_visibility_visible\"  ><label class='gfield_label gform-field-label' for='input_52_3'><span class='gform-field-label__text'>First Name<\/span><span class=\"gfield_required\"><span class=\"gfield_required gfield_required_asterisk\">*<\/span><\/span><\/label><div class='ginput_container ginput_container_text'><input name='input_3' id='input_52_3' type='text' value='' class='large'     aria-required=\"true\" aria-invalid=\"false\"   \/><\/div><\/div><div id=\"field_52_4\" class=\"gfield gfield--type-text gfield--input-type-text gfield--width-half gfield_contains_required field_sublabel_below gfield--no-description field_description_below field_validation_below gfield_visibility_visible\"  ><label class='gfield_label gform-field-label' for='input_52_4'><span class='gform-field-label__text'>Last Name<\/span><span class=\"gfield_required\"><span class=\"gfield_required gfield_required_asterisk\">*<\/span><\/span><\/label><div class='ginput_container ginput_container_text'><input name='input_4' id='input_52_4' type='text' value='' class='large'     aria-required=\"true\" aria-invalid=\"false\"   \/><\/div><\/div><div id=\"field_52_5\" class=\"gfield gfield--type-text gfield--input-type-text gfield--width-half gfield_contains_required field_sublabel_below gfield--no-description field_description_below field_validation_below gfield_visibility_visible\"  ><label class='gfield_label gform-field-label' for='input_52_5'><span class='gform-field-label__text'>Company Name<\/span><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_52_5' type='text' value='' class='large'     aria-required=\"true\" aria-invalid=\"false\"   \/><\/div><\/div><div id=\"field_52_6\" class=\"gfield gfield--type-text gfield--input-type-text gfield--width-half gfield_contains_required field_sublabel_below gfield--no-description field_description_below field_validation_below gfield_visibility_visible\"  ><label class='gfield_label gform-field-label' for='input_52_6'><span class='gform-field-label__text'>Job Title<\/span><span class=\"gfield_required\"><span class=\"gfield_required gfield_required_asterisk\">*<\/span><\/span><\/label><div class='ginput_container ginput_container_text'><input name='input_6' id='input_52_6' type='text' value='' class='large'     aria-required=\"true\" aria-invalid=\"false\"   \/><\/div><\/div><div id=\"field_52_10\" class=\"gfield gfield--type-hidden gfield--input-type-hidden gfield--width-full gform_hidden field_sublabel_below gfield--no-description field_description_below field_validation_below gfield_visibility_visible\"  ><div class='ginput_container ginput_container_text'><input name='input_10' id='input_52_10' type='hidden' class='gform_hidden'  aria-invalid=\"false\" value='Gated Content Form' \/><\/div><\/div><\/div><\/div>\n        <div class='gform-footer gform_footer top_label'> <button type='submit' id='gform_submit_button_52' class='gform_button button' onclick='gform.submission.handleButtonClick(this);' data-submission-type='submit' >See My Holiday Plan<\/button> <input type='hidden' name='gform_ajax' value='form_id=52&amp;title=&amp;description=&amp;tabindex=0&amp;theme=orbital&amp;styles=[]&amp;hash=1e2dfac8abfadce109686a61a994b920' \/>\n            <input type='hidden' class='gform_hidden' name='gform_submission_method' data-js='gform_submission_method_52' value='iframe' \/>\n            <input type='hidden' class='gform_hidden' name='gform_theme' data-js='gform_theme_52' id='gform_theme_52' value='orbital' \/>\n            <input type='hidden' class='gform_hidden' name='gform_style_settings' data-js='gform_style_settings_52' id='gform_style_settings_52' value='[]' \/>\n            <input type='hidden' class='gform_hidden' name='is_submit_52' value='1' \/>\n            <input type='hidden' class='gform_hidden' name='gform_submit' value='52' \/>\n            \n            <input type='hidden' class='gform_hidden' name='gform_currency' data-currency='USD' value='Y\/lXzs1L5vesw43atzdDAg1jU5hgllVIts1ww6CRYtUe39+Zqn5L490sKz8APNpzmdKMFozeYCdcLPc3R2uTXYIp4Y+MvZmTEsCFUDnR6aM1hK8=' \/>\n            <input type='hidden' class='gform_hidden' name='gform_unique_id' value='' \/>\n            <input type='hidden' class='gform_hidden' name='state_52' value='WyJ7XCJnZm9ybV9zdWJtaXNzaW9uX21ldGhvZFwiOltcIjRlMjFjY2JkMTc5Yzc2YjZlZWViYzVlZTJjOWI4NDAyXCIsXCI1MjhjNzZmYTNlZjMzMzgxOTE4OTcwNTZjZDQ0NzYzYlwiLFwiNmQzY2QyOWY2NjRiMTBjZDE0YTFhMzc0YTA5NmRkMWFcIl0sXCJnZm9ybV90aGVtZVwiOlwiNzYxN2Y5MGViNGQzMjZjY2U1NDliNWM4NTNhMmFjZDNcIixcImdmb3JtX3N0eWxlX3NldHRpbmdzXCI6XCJiOWUwM2Y0ZWQwN2U1ZDBhNzYzODg1MjU5NjRmNmJiMFwiLFwiZm9ybV9pZFwiOlwiNmQ3MDdhYTRkYzA4N2NiMGUyNmRhYzhmM2QxOWM1NGZcIixcInVybFwiOlwiODdhZDJlNGU5NTM0MDA0MWIwZWQ1YjcwZTNiOWQwYjJcIixcInN0YXRlX3RpbWVzdGFtcFwiOlwiMDU1NzFhYTk4N2I0NDRkNDkxN2M2NGM0YmJhODc3MmVcIn0iLCJhODJhOTU1OTc2Y2Y2OGM1N2JhNzY2MTNjN2M4NWRhZCIsMTc5Mzg0NjgxNl0=' \/>\n            <input type='hidden' autocomplete='off' class='gform_hidden' name='gform_target_page_number_52' id='gform_target_page_number_52' value='0' \/>\n            <input type='hidden' autocomplete='off' class='gform_hidden' name='gform_source_page_number_52' id='gform_source_page_number_52' value='1' \/>\n            <input type='hidden' name='gform_field_values' value='' \/>\n            \n        <\/div>\n                        <p style=\"display: none !important;\" class=\"akismet-fields-container\" data-prefix=\"ak_\"><label>&#916;<textarea name=\"ak_hp_textarea\" cols=\"45\" rows=\"8\" maxlength=\"100\"><\/textarea><\/label><input type=\"hidden\" id=\"ak_js_1\" name=\"ak_js\" value=\"116\"\/><script>\ndocument.getElementById( \"ak_js_1\" ).setAttribute( \"value\", ( new Date() ).getTime() );\n<\/script>\n<\/p><\/form>\n                        <\/div>\n\t\t                <iframe style='display:none;width:0px;height:0px;' src='about:blank' name='gform_ajax_frame_52' id='gform_ajax_frame_52' title='This iframe contains the logic required to handle Ajax powered Gravity Forms.'><\/iframe>\n\t\t                <script>\ngform.initializeOnLoaded( function() {jQuery('#gform_ajax_frame_52').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_52');var is_confirmation = jQuery(this).contents().find('#gform_confirmation_wrapper_52').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_52').html(form_content.html());if(form_content.hasClass('gform_validation_error')){jQuery('#gform_wrapper_52').addClass('gform_validation_error');} else {jQuery('#gform_wrapper_52').removeClass('gform_validation_error');}setTimeout( function() { \/* delay the scroll by 50 milliseconds to fix a bug in chrome *\/ jQuery(document).scrollTop(jQuery('#gform_wrapper_52').offset().top - mt); }, 50 );var current_page = jQuery('#gform_source_page_number_52').val();jQuery(document).trigger('gform_page_loaded', [52, current_page]);window['gf_submitting_52'] = false;}else if(!is_redirect){var confirmation_content = jQuery(this).contents().find('.GF_AJAX_POSTBACK').html();if(!confirmation_content){confirmation_content = contents;}jQuery('#gform_wrapper_52').replaceWith(confirmation_content);jQuery(document).scrollTop(jQuery('#gf_52').offset().top - mt);jQuery(document).trigger('gform_confirmation_loaded', [52]);window['gf_submitting_52'] = false;wp.a11y.speak(jQuery('#gform_confirmation_message_52').text());}else{jQuery('#gform_52').append(contents);if(window['gformRedirect']) {gformRedirect();}}jQuery(document).trigger(\"gform_pre_post_render\", [{ formId: \"52\", currentPage: \"current_page\", abort: function() { this.preventDefault(); } }]);        if (event && event.defaultPrevented) {                return;        }        const gformWrapperDiv = document.getElementById( \"gform_wrapper_52\" );        if ( gformWrapperDiv ) {            const visibilitySpan = document.createElement( \"span\" );            visibilitySpan.id = \"gform_visibility_test_52\";            gformWrapperDiv.insertAdjacentElement( \"afterend\", visibilitySpan );        }        const visibilityTestDiv = document.getElementById( \"gform_visibility_test_52\" );        let postRenderFired = false;        function triggerPostRender() {            if ( postRenderFired ) {                return;            }            postRenderFired = true;            gform.core.triggerPostRenderEvents( 52, current_page );            if ( visibilityTestDiv ) {                visibilityTestDiv.parentNode.removeChild( visibilityTestDiv );            }        }        function debounce( func, wait, immediate ) {            var timeout;            return function() {                var context = this, args = arguments;                var later = function() {                    timeout = null;                    if ( !immediate ) func.apply( context, args );                };                var callNow = immediate && !timeout;                clearTimeout( timeout );                timeout = setTimeout( later, wait );                if ( callNow ) func.apply( context, args );            };        }        const debouncedTriggerPostRender = debounce( function() {            triggerPostRender();        }, 200 );        if ( visibilityTestDiv && visibilityTestDiv.offsetParent === null ) {            const observer = new MutationObserver( ( mutations ) => {                mutations.forEach( ( mutation ) => {                    if ( mutation.type === 'attributes' && visibilityTestDiv.offsetParent !== null ) {                        debouncedTriggerPostRender();                        observer.disconnect();                    }                });            });            observer.observe( document.body, {                attributes: true,                childList: false,                subtree: true,                attributeFilter: [ 'style', 'class' ],            });        } else {            triggerPostRender();        }    } );} );\n<\/script>\n<\/div>\n    <\/div>\n  <\/div>\n  <div class=\"card\" id=\"bfcm-unlocked\" style=\"display:none\"><\/div>\n<\/section>\n<div id=\"bfcm-after\" style=\"display:none\">\n<section id=\"bfcm-gut\" style=\"display:none\">\n  <div class=\"eyebrow\">Gut check<\/div>\n  <h2>You&#8217;re in good shape if\u2026<\/h2>\n  <div class=\"card\">\n    <ul class=\"check\">\n      <li>A sale on any channel updates your inventory everywhere, automatically.<\/li>\n      <li>You can ship with at least three carriers, and you&#8217;ve sent a test label with each.<\/li>\n      <li>Rules assign carrier, service, and package so your team only touches exceptions.<\/li>\n      <li>Customers know when to order by and get tracking before they think to ask.<\/li>\n      <li>Your delay email and returns window are written and published before Nov. 27.<\/li>\n      <li>Everyone on your team knows who owns what when something breaks.<\/li>\n    <\/ul>\n    <p class=\"pro\"><b>Tip:<\/b> Don&#8217;t wait for a perfect score. Fix the lowest-scoring area first. One closed gap beats three half-finished ones.<\/p>\n  <\/div>\n<\/section>\n<div class=\"cta\">\n  <h2>The question isn&#8217;t whether Black Friday will test your operation. It&#8217;s whether you&#8217;ll be ready when it does.<\/h2>\n  <p>ShipStation connects 200+ sales channels and a global network of 200+ carriers, with rules that automate the repeat decisions. Your team gets to spend peak days on strategy instead of data entry.<\/p>\n  <a class=\"btn\" href=\"https:\/\/www.shipstation.com\/start-a-free-trial\/\">Start a Free Trial<\/a>\n<\/div>\n<\/div>\n<\/div>\n<div class=\"foot wrap\">Dates reflect Black Friday (Nov. 27, 2026) and Cyber Monday (Nov. 30, 2026).<\/div>\n<\/div>\n<script>\n(function(){\n  var root=document.getElementById(\"bfcm\");\n  function $(id){return root.querySelector('[id=\"'+id+'\"]');}\n  var CFG={formId:52,autoOpen:true};\n  var BF = new Date(2026,10,27), CM = new Date(2026,10,30);\n  var DAY = 864e5;\n  function midnight(d){ return new Date(d.getFullYear(), d.getMonth(), d.getDate()); }\n  var today = midnight(new Date());\n  var toBF = Math.round((BF - today)\/DAY), toCM = Math.round((CM - today)\/DAY);\n  var MON = [\"Jan.\",\"Feb.\",\"Mar.\",\"Apr.\",\"May\",\"June\",\"July\",\"Aug.\",\"Sept.\",\"Oct.\",\"Nov.\",\"Dec.\"];\n  function fmt(d){ return MON[d.getMonth()] + \" \" + d.getDate(); }\n  function dueDate(daysBefore){ return new Date(BF.getTime() - daysBefore*DAY); }\n  function cdHtml(n, name, date){\n    var s = String(Math.max(n,0)); if(s.length < 2) s = \"0\" + s;\n    var digits = s.split(\"\").map(function(c){ return '<span class=\"digit\"><i>'+c+'<\/i><\/span>'; }).join(\"\");\n    var lbl = n < 0 ? name + \" has passed\" : (n === 0 ? \"It's \" + name + \" today\" : (n === 1 ? \"day\" : \"days\") + \" to\");\n    return '<div class=\"cd\"><div class=\"digits\">'+digits+'<\/div><div class=\"lbl\">' +\n      (n > 0 ? lbl + '<b>' + name + '<\/b>' : lbl) + '<span style=\"opacity:.75;display:block\">' + date + '<\/span><\/div><\/div>';\n  }\n  $(\"bfcm-count\").innerHTML = cdHtml(toBF,\"Black Friday\",\"Nov. 27\") + cdHtml(toCM,\"Cyber Monday\",\"Nov. 30\");\n  \/* ---------- content ---------- *\/\n  var AREAS = {\n    inv:{name:\"Inventory and supplies\",max:6},\n    car:{name:\"Carriers\",max:2},\n    spd:{name:\"Automation and speed\",max:4},\n    cx:{name:\"Customer experience\",max:4},\n    plan:{name:\"Contingency plan\",max:2}\n  };\n  var Q = [\n   {id:\"inv\", area:\"inv\", label:\"Inventory\",\n    q:{smb:\"How accurate are your inventory counts across every place you sell?\", ent:\"How accurate are your inventory counts across every warehouse and sales channel?\"},\n    o:[[\"Live and synced\u2014a sale on one channel updates all the others\",2],[\"Mostly right\u2014we reconcile by hand every day or two\",1],[\"Spreadsheets and best guesses\",0]],\n    tip:\"Stop-sell buffers beat apologies. Holding back two or three units of your hottest item costs far less than one cancelled order.\",\n    t0:[{s:\"Connect every sales channel to one order and inventory system so a sale anywhere updates everywhere.\",e:\"Centralize inventory across every warehouse and channel in one system of record, with channel-level allocation.\",d:18},\n        {s:\"Set stop-sell buffers on your top 10 sellers so a sync lag can't oversell them.\",e:\"Set stop-sell buffers on your top 50 SKUs so a sync lag can't oversell them.\",d:14},\n        {s:\"Physically count your top sellers before the Thanksgiving week freeze.\",e:\"Cycle-count your top SKUs at every site before the freeze.\",d:5}],\n    t1:[{s:\"Replace daily hand reconciliation with automatic sync. Keep manual counts for spot checks only.\",d:14},\n        {s:\"Physically count your top sellers before the Thanksgiving week freeze.\",d:5}]},\n   {id:\"reorder\", area:\"inv\", label:\"Reorder points\",\n    q:{smb:\"Do your fastest movers have reorder points based on last year's peak, not a normal week?\", ent:\"Are SKU-level reorder points and safety stock set from last year's peak velocity, not a normal week?\"},\n    o:[[\"Yes\u2014set from actual peak velocity, adjusted for growth\",2],[\"We have rough numbers\",1],[\"We'll reorder when we run low\",0]],\n    tip:\"Your best forecast is last year's peak, adjusted for how much you've grown since. Not last month's average.\",\n    t0:[{s:\"Pull last year's Black Friday through Cyber Monday sales by SKU and rank your top 20 movers.\",e:\"Pull last year's BFCM sales by SKU and site, then rank your top 100 movers.\",d:19},\n        {s:\"Call suppliers now. Ask what can still land before Nov. 24.\",e:\"Confirm inbound POs and transfers that can land before Nov. 24, and escalate any at risk.\",d:18},\n        {s:\"Draft a backorder or pre-order message for anything you can't restock in time.\",d:10}],\n    t1:[{s:\"Double-check supplier lead times for your top five SKUs. Confirm they can still land before Nov. 24.\",d:16},\n        {s:\"Draft a backorder or pre-order message for anything you can't restock in time.\",d:10}]},\n   {id:\"supplies\", area:\"inv\", label:\"Packing supplies\",\n    q:{smb:\"Boxes, mailers, tape, labels: could you pack three times a normal day's volume?\", ent:\"Is packaging and supply stock staged for three times your normal daily volume at every site?\"},\n    o:[[\"Stocked, with a buffer for the whole weekend\",2],[\"Enough for a normal week\",1],[\"We reorder as we go\",0]],\n    tip:\"Check your most-used box size first. Running out of one size stops a line faster than running out of ten others.\",\n    t0:[{s:\"Calculate supplies: normal daily volume, times three, times four days, plus a cushion.\",e:\"Calculate supply needs per site: normal daily volume, times three, times four days, plus a cushion.\",d:15},\n        {s:\"Order thermal labels and your top two box sizes first. They're the hardest to improvise.\",d:13},\n        {s:\"Stage supplies at every pack station before the Nov. 24 freeze.\",e:\"Stage supplies at every line and shift before the Nov. 24 freeze.\",d:3}],\n    t1:[{s:\"Top up thermal labels and your two most-used box sizes.\",d:11},\n        {s:\"Stage supplies at every pack station before the Nov. 24 freeze.\",e:\"Stage supplies at every line and shift before the Nov. 24 freeze.\",d:3}]},\n   {id:\"carriers\", area:\"car\", label:\"Carriers\",\n    q:{smb:\"If your main carrier hits capacity limits or adds surcharges mid-week, what's your backup?\", ent:\"If your primary carrier hits capacity limits or adds surcharges mid-week, how fast can you shift volume?\"},\n    o:[[\"Multiple carriers connected, with rate shopping picking the best option\",2],[\"One backup carrier, switched manually\",1],[\"We only use one carrier\",0]],\n    tip:\"A backup carrier you've never shipped with isn't a backup. Send a test label now.\",\n    t0:[{s:\"Connect at least two more carriers, such as UPS\u00ae, USPS\u00ae, FedEx\u00ae, or a regional option.\",e:\"Add backup carrier contracts and regional options so you can shift 20% or more of volume without a rebuild.\",d:16},\n        {s:\"Turn on rate shopping so every order compares live rates automatically.\",d:14},\n        {s:\"Ship a test label with each carrier to confirm accounts, pickups, and printing all work.\",d:10},\n        {s:\"Confirm pickup schedules and cutoff times for BFCM weekend with every carrier.\",e:\"Share volume forecasts with carrier reps and confirm capacity, pickup windows, and cutoff times for BFCM weekend.\",d:7}],\n    t1:[{s:\"Add a third carrier and send a test label to confirm it's ready.\",d:12},\n        {s:\"Confirm pickup schedules and cutoff times for BFCM weekend with every carrier.\",e:\"Share volume forecasts with carrier reps and confirm capacity, pickup windows, and cutoff times for BFCM weekend.\",d:7}]},\n   {id:\"auto\", area:\"spd\", label:\"Automation\",\n    q:{smb:\"How many orders get a carrier, service, and package without anyone touching them?\", ent:\"What share of orders get carrier, service, package, and warehouse assigned with zero human touch?\"},\n    o:[[\"Most of them\u2014rules handle it\",2],[\"About half\",1],[\"Almost none\u2014we decide order by order\",0]],\n    tip:\"Aim for people touching exceptions, not orders. That's the shift that makes 3x volume feel normal.\",\n    t0:[{s:\"Write rules for your top three order types: carrier, service level, package, and insurance.\",e:\"Write rules for your top order profiles: warehouse routing, carrier, service level, package, and insurance.\",d:14},\n        {s:\"Auto-tag orders that need a human, like high-value, PO box, or international.\",d:10},\n        {s:\"Test your rules against 20 real recent orders and fix whatever misfires.\",e:\"Test your rules against a full day of recent orders and fix whatever misfires.\",d:7}],\n    t1:[{s:\"Add rules for the edge cases that still land in someone's queue.\",d:10},\n        {s:\"Test your rules against 20 real recent orders and fix whatever misfires.\",e:\"Test your rules against a full day of recent orders and fix whatever misfires.\",d:7}]},\n   {id:\"speed\", area:\"spd\", label:\"Throughput\",\n    q:{smb:\"Could your team create labels for three times a normal day without panicking?\", ent:\"Can your stations, lines, and shifts absorb three times a normal day without a bottleneck?\"},\n    o:[[\"Yes\u2014we batch print and we've tested our stations\",2],[\"Probably, but we've never tested it\",1],[\"We print one label at a time\",0]],\n    tip:\"Rehearse with real order data. A mock surge finds the slow handoff while it's still cheap to fix.\",\n    t0:[{s:\"Switch to batch label creation. Print by carrier or zone instead of order by order.\",e:\"Move every line to batch label creation, grouped by carrier, zone, or dock.\",d:14},\n        {s:\"Run a mock surge: batch 200 test orders through your stations and time each step.\",e:\"Run a mock surge across every shift and line, then fix the slowest handoff.\",d:9},\n        {s:\"Assign a role for every person on BFCM weekend: pick, pack, label, and exceptions.\",e:\"Publish shift rosters with named leads for pick, pack, label, and exceptions.\",d:4}],\n    t1:[{s:\"Run a mock surge: batch 200 test orders through your stations and time each step.\",e:\"Run a mock surge across every shift and line, then fix the slowest handoff.\",d:9},\n        {s:\"Assign a role for every person on BFCM weekend: pick, pack, label, and exceptions.\",e:\"Publish shift rosters with named leads for pick, pack, label, and exceptions.\",d:4}]},\n   {id:\"comms\", area:\"cx\", label:\"Customer updates\",\n    q:{smb:\"Will customers get tracking and delay updates without having to ask?\", ent:\"Do customers get branded tracking and proactive delay updates automatically, across every channel?\"},\n    o:[[\"Yes\u2014branded tracking plus proactive delay emails\",2],[\"Tracking emails only\",1],[\"Customers email us to find out\",0]],\n    tip:\"A delay email sent before the customer asks builds trust. Sent after, it's an apology.\",\n    t0:[{s:\"Turn on branded tracking notifications so every shipment sends updates automatically.\",d:14},\n        {s:\"Write your delay message now. Draft it before you need it.\",d:10},\n        {s:\"Publish last-order-by dates for holiday delivery on your site and at checkout.\",d:6}],\n    t1:[{s:\"Write your delay message now. Draft it before you need it.\",d:10},\n        {s:\"Publish last-order-by dates for holiday delivery on your site and at checkout.\",d:6}]},\n   {id:\"returns\", area:\"cx\", label:\"Returns\",\n    q:{smb:\"Is your returns process ready for the wave that follows the sales?\", ent:\"Is your returns workflow ready for the post-BFCM wave across every channel and site?\"},\n    o:[[\"Self-serve returns portal with labels generated automatically\",2],[\"Returns by email, manual labels\",1],[\"No defined process yet\",0]],\n    tip:\"Treat returns as a retention moment. A painless return makes the next order easier.\",\n    t0:[{s:\"Set up a self-serve returns portal with rules for label and refund type.\",e:\"Set up a self-serve returns portal with rules for routing returns to the right site.\",d:14},\n        {s:\"Publish your holiday returns window and policy before Nov. 20.\",d:9},\n        {s:\"Name an owner for returns the week of Dec. 1.\",e:\"Staff and name a lead for the returns dock the week of Dec. 1.\",d:3}],\n    t1:[{s:\"Publish your holiday returns window and policy before Nov. 20.\",d:9},\n        {s:\"Name an owner for returns the week of Dec. 1.\",e:\"Staff and name a lead for the returns dock the week of Dec. 1.\",d:3}]},\n   {id:\"plan\", area:\"plan\", label:\"Contingency\",\n    q:{smb:\"If something breaks on Black Friday, like a carrier delay, a system issue, or weather, who does what?\", ent:\"If something breaks on Black Friday, from a carrier outage to a site-level system issue, who owns each response?\"},\n    o:[[\"A written plan with an owner and a backup\",2],[\"We'd figure it out together\",1],[\"We haven't thought about it\",0]],\n    tip:\"Plans get used when they fit on one page.\",\n    t0:[{s:\"Write a one-page runbook: your top five failure scenarios, an owner, and a first action for each.\",d:9},\n        {s:\"Build a contact sheet: carrier reps, platform support, packaging supplier, and key staff.\",d:7},\n        {s:\"Schedule a 15-minute stand-up for every morning from Nov. 27 through Dec. 1.\",d:3}],\n    t1:[{s:\"Name a backup owner for each scenario in your plan.\",d:7},\n        {s:\"Schedule a 15-minute stand-up for every morning from Nov. 27 through Dec. 1.\",d:3}]}\n  ];\n  var FALLBACK = [\n    {s:\"Run one more mock surge with real order data, and time it.\",d:8},\n    {s:\"Confirm carrier pickups and cutoffs one last time.\",d:3},\n    {s:\"Brief the whole team on roles, escalation paths, and the morning stand-up schedule.\",d:2}\n  ];\n  var PHASES = [\n    {key:\"a\", name:\"Lock the foundations\", min:12, note:\"Systems and stock\"},\n    {key:\"b\", name:\"Stress-test everything\", min:6, note:\"Rehearse and verify\"},\n    {key:\"c\", name:\"Final freeze\", min:0, note:\"No new changes after Nov. 24\"}\n  ];\n  \/* ---------- state ---------- *\/\n  var tier = null, vol = \"\", step = -1, ans = {}, submitted = false, shown = false, ctx = null;\n  var $q = $(\"bfcm-quizCard\"), $r = $(\"bfcm-results\");\n  function esc(s){ return String(s).replace(\/[&<>\"]\/g, function(c){return {\"&\":\"&amp;\",\"<\":\"&lt;\",\">\":\"&gt;\",'\"':\"&quot;\"}[c];}); }\n  function renderTier(){\n    $q.innerHTML =\n      '<div class=\"area\">Step 1<\/div>' +\n      '<div class=\"q\">About how many packages do you ship each month?<\/div>' +\n      '<div class=\"tiers\">' +\n      '<button class=\"opt\" data-t=\"smb\" data-b=\"50 to 1,000\">50 to 1,000<small>Growing fast and tired of doing it by hand<\/small><\/button>' +\n      '<button class=\"opt\" data-t=\"smb\" data-b=\"1,000 to 10,000\">1,000 to 10,000<small>Scaling up and watching every dollar<\/small><\/button>' +\n      '<button class=\"opt\" data-t=\"ent\" data-b=\"More than 10,000\">More than 10,000<small>High volume, multiple sites, little room for error<\/small><\/button>' +\n      '<\/div>';\n    [].forEach.call($q.querySelectorAll(\".opt\"), function(b){\n      b.onclick = function(){ tier = b.getAttribute(\"data-t\"); vol = b.getAttribute(\"data-b\"); step = 0; renderQ(); };\n    });\n  }\n  function renderQ(){\n    var q = Q[step], sel = ans[q.id];\n    var dots = Q.map(function(_,i){ return '<i class=\"'+(i<=step?'on':'')+'\"><\/i>'; }).join(\"\");\n    var opts = q.o.map(function(o,i){\n      return '<button class=\"opt'+(sel===o[1]?' sel':'')+'\" data-v=\"'+o[1]+'\">'+esc(o[0])+'<\/button>';\n    }).join(\"\");\n    $q.innerHTML =\n      '<div class=\"dots\">'+dots+'<\/div>' +\n      '<div class=\"area\">'+(step+1)+' of '+Q.length+' \u00b7 '+esc(q.label)+'<\/div>' +\n      '<div class=\"q\">'+esc(q.q[tier])+'<\/div>' +\n      '<div class=\"opts\">'+opts+'<\/div>' +\n      '<div class=\"nav\"><button class=\"btn ghost\" id=\"back\">Back<\/button>' +\n      '<button class=\"btn\" id=\"next\"'+(sel===undefined?' disabled':'')+'>'+(step===Q.length-1?'See My Plan':'Next')+'<\/button><\/div>';\n    [].forEach.call($q.querySelectorAll(\".opt\"), function(b){\n      b.onclick = function(){\n        ans[q.id] = +b.getAttribute(\"data-v\");\n        [].forEach.call($q.querySelectorAll(\".opt\"), function(x){ x.classList.remove(\"sel\"); });\n        b.classList.add(\"sel\");\n        $(\"next\").disabled = false;\n      };\n    });\n    $(\"back\").onclick = function(){ if(step===0){ step=-1; renderTier(); } else { step--; renderQ(); } };\n    $(\"next\").onclick = function(){ if(step<Q.length-1){ step++; renderQ(); } else { showResults(); } };\n  }\n  function showResults(){\n    $q.style.display = \"none\";\n    $r.style.display = \"block\";\n    $(\"bfcm-after\").style.display = \"block\";\n    shown = false;\n    $(\"bfcm-intro\").style.display = \"none\";\n    var tot = 0, maxTot = 0, byArea = {};\n    Object.keys(AREAS).forEach(function(k){ byArea[k] = 0; });\n    Q.forEach(function(q){ byArea[q.area] += ans[q.id]; tot += ans[q.id]; maxTot += 2; });\n    var pct = Math.round(tot\/maxTot*100);\n    var level = pct >= 75 ? {n:\"Game-day ready\", low:false, t:\"You're in good shape. Use the time you have to stress-test, not rebuild.\"}\n              : pct >= 40 ? {n:\"Warming up\", low:false, t:\"The foundation's there. A few gaps could cost you on the day, and every one is fixable.\"}\n              : {n:\"Scramble mode\", low:true, t:\"That's okay. It's not too late, but the order matters. Start with the first task in your plan today.\"};\n    var timeLine = toBF > 0 ? \"You have \" + toBF + (toBF===1?\" day\":\" days\") + \" until Black Friday.\" :\n                   toBF === 0 ? \"Black Friday is today.\" : \"Black Friday 2026 has passed. Use this plan to get ahead of next year.\";\n    var C = 2*Math.PI*60, off = C*(1-pct\/100);\n    var weakest = null, weakP = 101, areaStr = [];\n    var bars = Object.keys(AREAS).map(function(k){\n      var p = Math.round(byArea[k]\/AREAS[k].max*100);\n      areaStr.push(AREAS[k].name + \" \" + p + \"%\");\n      if(p < weakP){ weakP = p; weakest = AREAS[k].name; }\n      return '<div class=\"bar\"><span>'+esc(AREAS[k].name)+'<\/span><div class=\"track\"><div class=\"fill'+(p<50?' low':'')+'\" style=\"width:0\" data-w=\"'+p+'\"><\/div><\/div><b>'+p+'%<\/b><\/div>';\n    }).join(\"\");\n\n    var tasks = [];\n    Q.forEach(function(q){\n      var list = ans[q.id]===0 ? q.t0 : (ans[q.id]===1 ? q.t1 : []);\n      list.forEach(function(t){ tasks.push({text:(tier===\"ent\" && t.e)?t.e:t.s, d:t.d, area:q.label, pr:ans[q.id]}); });\n    });\n    if(!tasks.length){ FALLBACK.forEach(function(t){ tasks.push({text:t.s,d:t.d,area:\"Stress-test\",pr:2}); }); }\n    tasks.sort(function(a,b){ return b.d - a.d || a.pr - b.pr; });\n    var planHtml = PHASES.map(function(ph, pi){\n      var hi = pi===0 ? 99 : PHASES[pi-1].min - 1;\n      var items = tasks.filter(function(t){ return t.d >= ph.min && t.d <= hi; });\n      if(!items.length) return \"\";\n      return '<div class=\"phase\"><h3>'+esc(ph.name)+' <span>'+esc(ph.note)+'<\/span><\/h3>' +\n        items.map(function(t){\n          var dd = dueDate(t.d), over = dd < today;\n          return '<label class=\"task\"><input type=\"checkbox\"><div><span class=\"tt\">'+esc(t.text)+'<\/span>' +\n            '<span class=\"due\">'+esc(t.area)+' \u00b7 '+(over?'<b style=\"color:var(--warn)\">Overdue. Start today.<\/b>':'Finish by '+fmt(dd))+'<\/span><\/div><\/label>';\n        }).join(\"\") + '<\/div>';\n    }).join(\"\");\n    var tipQs = Q.filter(function(q){ return ans[q.id] < 2; });\n    if(!tipQs.length) tipQs = Q.slice(0,3);\n    var tipsHtml = '<h2>Tips to close your gaps<\/h2>' +\n      tipQs.map(function(q){ return '<p class=\"pro\"><b>Tip ('+esc(q.label)+'):<\/b> '+esc(q.tip)+'<\/p>'; }).join(\"\");\n\n    ctx = {pct:pct, level:level.n, weakest:weakest, areas:areaStr.join(\"; \"), tasks:tasks, planHtml:planHtml, tipsHtml:tipsHtml,\n           answers:Q.map(function(q){ return q.id+\":\"+ans[q.id]; }).join(\",\")};\n\n    $r.innerHTML =\n      '<div class=\"top\"><div class=\"ring\"><svg width=\"150\" height=\"150\" viewBox=\"0 0 150 150\"><circle cx=\"75\" cy=\"75\" r=\"60\" fill=\"none\" stroke=\"var(--line)\" stroke-width=\"13\"\/>' +\n      '<circle id=\"arc\" cx=\"75\" cy=\"75\" r=\"60\" fill=\"none\" stroke=\"'+(level.low?'var(--warn)':'var(--accent)')+'\" stroke-width=\"13\" stroke-linecap=\"round\" stroke-dasharray=\"'+C+'\" stroke-dashoffset=\"'+C+'\" style=\"transition:stroke-dashoffset 1s ease\"\/><\/svg>' +\n      '<b><span>'+pct+'%<small>ready<\/small><\/span><\/b><\/div>' +\n      '<div style=\"flex:1;min-width:240px\"><span class=\"badge'+(level.low?' low':'')+'\">'+esc(level.n)+'<\/span>' +\n      '<h2 style=\"margin-top:10px\">Your BFCM readiness<\/h2><p>'+esc(level.t)+' '+esc(timeLine)+'<\/p><\/div><\/div>' +\n      '<div class=\"bars\">'+bars+'<\/div>' +\n      '<p class=\"note\" id=\"bfcm-note\">This is your high-level score. Select See My Holiday Plan to get your free full breakdown.<\/p>' +\n      '<div class=\"actions\"><button class=\"btn\" id=\"bfcm-open\" type=\"button\">See My Holiday Plan<\/button><button class=\"btn ghost\" id=\"redo\">Retake Quiz<\/button><\/div>';\n    setTimeout(function(){\n      $(\"arc\").style.strokeDashoffset = off;\n      [].forEach.call($r.querySelectorAll(\".fill\"), function(f){ f.style.width = f.getAttribute(\"data-w\")+\"%\"; });\n    }, 60);\n    $(\"redo\").onclick = function(){\n      ans = {}; tier = null; vol = \"\"; step = -1; shown = false; ctx = null;\n      closeModal();\n      $r.style.display = \"none\"; $(\"bfcm-unlocked\").style.display = \"none\";\n      $(\"bfcm-gut\").style.display = \"none\"; $(\"bfcm-after\").style.display = \"none\";\n      $(\"bfcm-intro\").style.display = \"block\";\n      $q.style.display = \"block\"; renderTier();\n      $(\"bfcm-quiz\").scrollIntoView({behavior:\"smooth\"});\n    };\n\n    var lock = '<svg width=\"20\" height=\"20\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" aria-hidden=\"true\"><rect x=\"5\" y=\"11\" width=\"14\" height=\"9\" rx=\"2\"\/><path d=\"M8 11V8a4 4 0 0 1 8 0v3\"\/><\/svg>';\n    function row(t){ return '<div class=\"lockrow\">'+lock+'<div class=\"ghostbars\"><b>'+esc(t)+'<\/b><i><\/i><i><\/i><\/div><\/div>'; }\n    $(\"bfcm-locked\").innerHTML =\n      row(tipQs.length+\" tips to close your biggest gaps\") +\n      row(\"Your plan: \"+tasks.length+\" dated tasks, in order\") +\n      row(\"The gut check: how to know you're ready\");\n\n    if(submitted){ unlock(false); }\n    else { setHidden(); if(CFG.autoOpen){ setTimeout(function(){ openModal(false); }, 800); } }\n    $r.scrollIntoView({behavior:\"smooth\", block:\"start\"});\n  }\n\n  function unlock(scroll){\n    if(!ctx || shown) return;\n    shown = true; submitted = true;\n    closeModal();\n    var u = $(\"bfcm-unlocked\");\n    var op = $(\"bfcm-open\"); if(op) op.style.display = \"none\";\n    var nt = $(\"bfcm-note\"); if(nt) nt.style.display = \"none\";\n    var cm = slot.querySelector(\".gform_confirmation_message\");\n    var okHtml = cm && cm.innerHTML.trim() ? cm.innerHTML : \"<strong>You're in.<\/strong> Your tips, dated plan, and gut check are unlocked below.\";\n    u.innerHTML = '<div class=\"okmsg\">'+okHtml+'<\/div>' + ctx.tipsHtml +\n      '<h2 style=\"margin-top:34px\">Your plan, in order<\/h2>' +\n      '<p>Built from your answers and sorted by deadline. Check things off as you go.<\/p>' +\n      '<div class=\"prog\"><div id=\"pbar\"><\/div><\/div><div id=\"ptxt\" style=\"font-size:14px;color:var(--muted)\"><\/div>' +\n      ctx.planHtml +\n      '<div class=\"actions\"><button class=\"btn\" id=\"copy\">Copy Checklist<\/button><\/div>';\n    u.style.display = \"block\";\n    $(\"bfcm-gut\").style.display = \"block\";\n    var tasks = ctx.tasks, pct = ctx.pct, done = 0;\n    function upd(){\n      $(\"pbar\").style.width = (tasks.length ? done\/tasks.length*100 : 0)+\"%\";\n      $(\"ptxt\").textContent = done+\" of \"+tasks.length+\" tasks done\";\n    }\n    upd();\n    [].forEach.call(u.querySelectorAll(\".task input\"), function(cb){\n      cb.onchange = function(){\n        cb.closest(\".task\").classList.toggle(\"done\", cb.checked);\n        done += cb.checked ? 1 : -1; upd();\n      };\n    });\n    $(\"copy\").onclick = function(){\n      var txt = \"BFCM readiness plan (\"+pct+\"% ready)\\n\\n\" + tasks.map(function(t){ return \"[ ] \"+t.text+\" (by \"+fmt(dueDate(t.d))+\")\"; }).join(\"\\n\");\n      var btn = this;\n      try { navigator.clipboard.writeText(txt).then(function(){ btn.textContent = \"Copied\"; setTimeout(function(){ btn.textContent=\"Copy Checklist\"; },1800); }, function(){ btn.textContent=\"Copy not available\"; }); }\n      catch(e){ btn.textContent = \"Copy not available\"; }\n    };\n    if(scroll !== false) u.scrollIntoView({behavior:\"smooth\", block:\"start\"});\n  }\n\n  \/* ---------- Gravity Forms hookup ---------- *\/\n  var slot = $(\"bfcm-gform\");\n  var modal = $(\"bfcm-modal\"), lastFocus = null;\n  function openModal(focus){\n    if(!ctx) return;\n    setHidden();\n    modal.classList.add(\"open\");\n    var rect = modal.getBoundingClientRect();\n    if(rect.top > window.innerHeight * 0.5){\n      try { window.scrollBy({top: rect.top - window.innerHeight * 0.3, behavior: \"smooth\"}); } catch(e){}\n    }\n    if(focus !== false){\n      lastFocus = document.activeElement;\n      var f = modal.querySelector(\"input:not([type=hidden]),select,textarea\") || modal.querySelector(\".modal-x\");\n      if(f && f.focus) f.focus({preventScroll:true});\n    }\n  }\n  function closeModal(){\n    if(!modal || !modal.classList.contains(\"open\")) return;\n    modal.classList.remove(\"open\");\n    if(lastFocus && lastFocus.focus) lastFocus.focus();\n  }\n  $r.addEventListener(\"click\", function(e){ var t = e.target; if(t && t.closest && t.closest('[id=\"bfcm-open\"]')) openModal(true); });\n  modal.querySelector(\".modal-x\").onclick = closeModal;\n  document.addEventListener(\"keydown\", function(e){ if(e.key === \"Escape\") closeModal(); });\n  function setHidden(){\n    if(!ctx) return;\n    var form = slot.querySelector(\"form\"); if(!form) return;\n    var vals = {\n      score: ctx.pct + \"%\",\n      level: ctx.level,\n      tier: tier === \"ent\" ? \"Enterprise\" : \"SMB\",\n      volume: vol,\n      weakest: ctx.weakest,\n      areas: ctx.areas,\n      answers: ctx.answers\n    };\n    Object.keys(vals).forEach(function(k){\n      var el = form.querySelector(\".bfcm-\"+k+\" input, input.bfcm-\"+k+\", .bfcm-\"+k+\" textarea, textarea.bfcm-\"+k);\n      if(el) el.value = vals[k];\n    });\n  }\n  function checkForm(){\n    if(slot.querySelector(\".gform_confirmation_message, .gform_confirmation_wrapper\")) unlock(true);\n    else setHidden();\n  }\n  if(window.MutationObserver){ new MutationObserver(checkForm).observe(slot, {childList:true, subtree:true}); }\n  if(window.jQuery){\n    jQuery(document).on(\"gform_confirmation_loaded\", function(e, id){ if(+id === CFG.formId) unlock(true); });\n    jQuery(document).on(\"gform_post_render\", function(e, id){ if(+id === CFG.formId) setHidden(); });\n  }\n  if(\/\\x5bgravityform\/i.test(slot.textContent)){\n    if(\/^https?:$\/.test(location.protocol)){\n      slot.innerHTML = '<p class=\"pro\"><b>Setup note:<\/b> the Gravity Forms shortcode did not render. Check the form ID and that the form is published.<\/p>';\n    } else {\n      slot.innerHTML = '<form class=\"demo-form\" novalidate><label>Full name<input type=\"text\" name=\"n\" autocomplete=\"name\"><\/label>' +\n        '<label>Work email<input type=\"email\" name=\"e\" autocomplete=\"email\"><\/label>' +\n        '<label>Company<input type=\"text\" name=\"c\" autocomplete=\"organization\"><\/label>' +\n        '<div><button type=\"submit\">See My Holiday Plan<\/button><\/div>' +\n        '<p style=\"font-size:13px;color:var(--muted);margin:0\">Preview only. On your site this is replaced by your Gravity Form.<\/p><\/form>';\n      slot.querySelector(\"form\").onsubmit = function(ev){\n        ev.preventDefault();\n        var em = slot.querySelector('input[name=\"e\"]').value;\n        if(!\/^\\S+@\\S+\\.\\S+$\/.test(em)){ slot.querySelector('input[name=\"e\"]').focus(); return; }\n        unlock(true);\n      };\n    }\n  }\n\n  renderTier();\n})();\n<\/script>\n","protected":false},"excerpt":{"rendered":"<p>Get your Black Friday and Cyber Monday readiness score, plus a dated plan to close your fulfillment gaps before the rush.<\/p>\n","protected":false},"author":184,"featured_media":116958,"template":"","categories":[],"tags":[],"ss_product":[],"ss_funnel_stage":[],"ss_business_type":[],"ss_industry":[],"ss_company_size":[],"ss_region":[],"ss_topic":[],"class_list":["post-116532","guides","type-guides","status-publish","has-post-thumbnail","hentry"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v28.3 (Yoast SEO v28.7) - https:\/\/yoast.com\/product\/yoast-seo-premium-wordpress\/ -->\n<title>Prepare for Black Friday and Cyber Monday Shipping - ShipStation<\/title>\n<meta name=\"description\" content=\"Take the Black Friday and Cyber Monday readiness quiz. Get your score, spot shipping and fulfillment gaps, and get a dated plan to fix them before its too late.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.shipstation.com\/en-gb\/guides\/the-black-friday-and-cyber-monday-game-plan\/\" \/>\n<meta property=\"og:locale\" content=\"en_GB\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"The Black Friday and Cyber Monday Game Plan\" \/>\n<meta property=\"og:description\" content=\"Take the Black Friday and Cyber Monday readiness quiz. Get your score, spot shipping and fulfillment gaps, and get a dated plan to fix them before its too late.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.shipstation.com\/en-gb\/guides\/the-black-friday-and-cyber-monday-game-plan\/\" \/>\n<meta property=\"og:site_name\" content=\"ShipStation\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/ShipStation\/\" \/>\n<meta property=\"article:modified_time\" content=\"2026-11-04T15:26:43+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.shipstation.com\/wp-content\/uploads\/2026\/11\/shipstation-thumbnail-guide-bfcm.webp\" \/>\n\t<meta property=\"og:image:width\" content=\"800\" \/>\n\t<meta property=\"og:image:height\" content=\"450\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/webp\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:site\" content=\"@shipstation\" \/>\n<meta name=\"twitter:label1\" content=\"Estimated reading time\" \/>\n\t<meta name=\"twitter:data1\" content=\"2 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"TechArticle\",\"@id\":\"https:\\\/\\\/www.shipstation.com\\\/en-gb\\\/guides\\\/the-black-friday-and-cyber-monday-game-plan\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.shipstation.com\\\/en-gb\\\/guides\\\/the-black-friday-and-cyber-monday-game-plan\\\/\"},\"author\":{\"name\":\"Todd Greenbaum\",\"@id\":\"https:\\\/\\\/www.shipstation.com\\\/#\\\/schema\\\/person\\\/5732117106a30e5c0d3f0f38c4c3e0f7\"},\"headline\":\"The Black Friday and Cyber Monday Game Plan\",\"datePublished\":\"2026-11-04T15:26:42+00:00\",\"dateModified\":\"2026-11-04T15:26:43+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/www.shipstation.com\\\/en-gb\\\/guides\\\/the-black-friday-and-cyber-monday-game-plan\\\/\"},\"wordCount\":323,\"publisher\":{\"@id\":\"https:\\\/\\\/www.shipstation.com\\\/#organization\"},\"image\":{\"@id\":\"https:\\\/\\\/www.shipstation.com\\\/en-gb\\\/guides\\\/the-black-friday-and-cyber-monday-game-plan\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.shipstation.com\\\/wp-content\\\/uploads\\\/2026\\\/11\\\/shipstation-thumbnail-guide-bfcm.webp\",\"inLanguage\":\"en-GB\"},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.shipstation.com\\\/en-gb\\\/guides\\\/the-black-friday-and-cyber-monday-game-plan\\\/\",\"url\":\"https:\\\/\\\/www.shipstation.com\\\/en-gb\\\/guides\\\/the-black-friday-and-cyber-monday-game-plan\\\/\",\"name\":\"Prepare for Black Friday and Cyber Monday Shipping - ShipStation\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.shipstation.com\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/www.shipstation.com\\\/en-gb\\\/guides\\\/the-black-friday-and-cyber-monday-game-plan\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/www.shipstation.com\\\/en-gb\\\/guides\\\/the-black-friday-and-cyber-monday-game-plan\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.shipstation.com\\\/wp-content\\\/uploads\\\/2026\\\/11\\\/shipstation-thumbnail-guide-bfcm.webp\",\"datePublished\":\"2026-11-04T15:26:42+00:00\",\"dateModified\":\"2026-11-04T15:26:43+00:00\",\"description\":\"Take the Black Friday and Cyber Monday readiness quiz. Get your score, spot shipping and fulfillment gaps, and get a dated plan to fix them before its too late.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.shipstation.com\\\/en-gb\\\/guides\\\/the-black-friday-and-cyber-monday-game-plan\\\/#breadcrumb\"},\"inLanguage\":\"en-GB\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.shipstation.com\\\/en-gb\\\/guides\\\/the-black-friday-and-cyber-monday-game-plan\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-GB\",\"@id\":\"https:\\\/\\\/www.shipstation.com\\\/en-gb\\\/guides\\\/the-black-friday-and-cyber-monday-game-plan\\\/#primaryimage\",\"url\":\"https:\\\/\\\/www.shipstation.com\\\/wp-content\\\/uploads\\\/2026\\\/11\\\/shipstation-thumbnail-guide-bfcm.webp\",\"contentUrl\":\"https:\\\/\\\/www.shipstation.com\\\/wp-content\\\/uploads\\\/2026\\\/11\\\/shipstation-thumbnail-guide-bfcm.webp\",\"width\":800,\"height\":450},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.shipstation.com\\\/en-gb\\\/guides\\\/the-black-friday-and-cyber-monday-game-plan\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/www.shipstation.com\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Guides\",\"item\":\"https:\\\/\\\/www.shipstation.com\\\/guides\\\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"The Black Friday and Cyber Monday Game Plan\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/www.shipstation.com\\\/#website\",\"url\":\"https:\\\/\\\/www.shipstation.com\\\/\",\"name\":\"ShipStation\",\"description\":\"The fulfillment engine behind hundreds of thousands of online sellers.\",\"publisher\":{\"@id\":\"https:\\\/\\\/www.shipstation.com\\\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/www.shipstation.com\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-GB\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/www.shipstation.com\\\/#organization\",\"name\":\"ShipStation\",\"url\":\"https:\\\/\\\/www.shipstation.com\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-GB\",\"@id\":\"https:\\\/\\\/www.shipstation.com\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/www.shipstation.com\\\/wp-content\\\/uploads\\\/2024\\\/10\\\/ShipStation-Lockup-DarkGreen-RGB.svg\",\"contentUrl\":\"https:\\\/\\\/www.shipstation.com\\\/wp-content\\\/uploads\\\/2024\\\/10\\\/ShipStation-Lockup-DarkGreen-RGB.svg\",\"width\":1550,\"height\":247,\"caption\":\"ShipStation\"},\"image\":{\"@id\":\"https:\\\/\\\/www.shipstation.com\\\/#\\\/schema\\\/logo\\\/image\\\/\"},\"sameAs\":[\"https:\\\/\\\/www.facebook.com\\\/ShipStation\\\/\",\"https:\\\/\\\/x.com\\\/shipstation\",\"https:\\\/\\\/www.linkedin.com\\\/company\\\/shipstation\",\"https:\\\/\\\/www.instagram.com\\\/shipstation\\\/\"],\"aggregateRating\":{\"@type\":\"AggregateRating\",\"ratingValue\":\"4.8\",\"reviewCount\":\"1200\"},\"description\":\"The fulfillment engine behind hundreds of thousands of online sellers, ShipStation combines order management, rate shopping, inventory, and returns all in one platform, delivering 15x more labels per hour and up to 90% shipping discounts through 200+ carriers.\",\"telephone\":\"(512) 886-4006\",\"numberOfEmployees\":{\"@type\":\"QuantitativeValue\",\"minValue\":\"1001\",\"maxValue\":\"5000\"}},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/www.shipstation.com\\\/#\\\/schema\\\/person\\\/5732117106a30e5c0d3f0f38c4c3e0f7\",\"name\":\"Todd Greenbaum\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-GB\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/900dc3223aa8c26c455cbcd9bd8d0479c93a2daf5a3024a82c4907aeeb34be2f?s=96&d=mm&r=g\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/900dc3223aa8c26c455cbcd9bd8d0479c93a2daf5a3024a82c4907aeeb34be2f?s=96&d=mm&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/900dc3223aa8c26c455cbcd9bd8d0479c93a2daf5a3024a82c4907aeeb34be2f?s=96&d=mm&r=g\",\"caption\":\"Todd Greenbaum\"}},{\"@type\":\"SoftwareApplication\",\"@id\":\"https:\\\/\\\/www.shipstation.com\\\/en-gb\\\/#software-application\",\"name\":\"ShipStation\",\"url\":\"https:\\\/\\\/www.shipstation.com\\\/en-gb\\\/\",\"applicationCategory\":\"BusinessApplication\",\"operatingSystem\":\"Web Browser\",\"aggregateRating\":{\"@type\":\"AggregateRating\",\"ratingValue\":\"4.8\",\"reviewCount\":\"1200\"}}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Prepare for Black Friday and Cyber Monday Shipping - ShipStation","description":"Take the Black Friday and Cyber Monday readiness quiz. Get your score, spot shipping and fulfillment gaps, and get a dated plan to fix them before its too late.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.shipstation.com\/en-gb\/guides\/the-black-friday-and-cyber-monday-game-plan\/","og_locale":"en_GB","og_type":"article","og_title":"The Black Friday and Cyber Monday Game Plan","og_description":"Take the Black Friday and Cyber Monday readiness quiz. Get your score, spot shipping and fulfillment gaps, and get a dated plan to fix them before its too late.","og_url":"https:\/\/www.shipstation.com\/en-gb\/guides\/the-black-friday-and-cyber-monday-game-plan\/","og_site_name":"ShipStation","article_publisher":"https:\/\/www.facebook.com\/ShipStation\/","article_modified_time":"2026-11-04T15:26:43+00:00","og_image":[{"width":800,"height":450,"url":"https:\/\/www.shipstation.com\/wp-content\/uploads\/2026\/11\/shipstation-thumbnail-guide-bfcm.webp","type":"image\/webp"}],"twitter_card":"summary_large_image","twitter_site":"@shipstation","twitter_misc":{"Estimated reading time":"2 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"TechArticle","@id":"https:\/\/www.shipstation.com\/en-gb\/guides\/the-black-friday-and-cyber-monday-game-plan\/#article","isPartOf":{"@id":"https:\/\/www.shipstation.com\/en-gb\/guides\/the-black-friday-and-cyber-monday-game-plan\/"},"author":{"name":"Todd Greenbaum","@id":"https:\/\/www.shipstation.com\/#\/schema\/person\/5732117106a30e5c0d3f0f38c4c3e0f7"},"headline":"The Black Friday and Cyber Monday Game Plan","datePublished":"2026-11-04T15:26:42+00:00","dateModified":"2026-11-04T15:26:43+00:00","mainEntityOfPage":{"@id":"https:\/\/www.shipstation.com\/en-gb\/guides\/the-black-friday-and-cyber-monday-game-plan\/"},"wordCount":323,"publisher":{"@id":"https:\/\/www.shipstation.com\/#organization"},"image":{"@id":"https:\/\/www.shipstation.com\/en-gb\/guides\/the-black-friday-and-cyber-monday-game-plan\/#primaryimage"},"thumbnailUrl":"https:\/\/www.shipstation.com\/wp-content\/uploads\/2026\/11\/shipstation-thumbnail-guide-bfcm.webp","inLanguage":"en-GB"},{"@type":"WebPage","@id":"https:\/\/www.shipstation.com\/en-gb\/guides\/the-black-friday-and-cyber-monday-game-plan\/","url":"https:\/\/www.shipstation.com\/en-gb\/guides\/the-black-friday-and-cyber-monday-game-plan\/","name":"Prepare for Black Friday and Cyber Monday Shipping - ShipStation","isPartOf":{"@id":"https:\/\/www.shipstation.com\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.shipstation.com\/en-gb\/guides\/the-black-friday-and-cyber-monday-game-plan\/#primaryimage"},"image":{"@id":"https:\/\/www.shipstation.com\/en-gb\/guides\/the-black-friday-and-cyber-monday-game-plan\/#primaryimage"},"thumbnailUrl":"https:\/\/www.shipstation.com\/wp-content\/uploads\/2026\/11\/shipstation-thumbnail-guide-bfcm.webp","datePublished":"2026-11-04T15:26:42+00:00","dateModified":"2026-11-04T15:26:43+00:00","description":"Take the Black Friday and Cyber Monday readiness quiz. Get your score, spot shipping and fulfillment gaps, and get a dated plan to fix them before its too late.","breadcrumb":{"@id":"https:\/\/www.shipstation.com\/en-gb\/guides\/the-black-friday-and-cyber-monday-game-plan\/#breadcrumb"},"inLanguage":"en-GB","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.shipstation.com\/en-gb\/guides\/the-black-friday-and-cyber-monday-game-plan\/"]}]},{"@type":"ImageObject","inLanguage":"en-GB","@id":"https:\/\/www.shipstation.com\/en-gb\/guides\/the-black-friday-and-cyber-monday-game-plan\/#primaryimage","url":"https:\/\/www.shipstation.com\/wp-content\/uploads\/2026\/11\/shipstation-thumbnail-guide-bfcm.webp","contentUrl":"https:\/\/www.shipstation.com\/wp-content\/uploads\/2026\/11\/shipstation-thumbnail-guide-bfcm.webp","width":800,"height":450},{"@type":"BreadcrumbList","@id":"https:\/\/www.shipstation.com\/en-gb\/guides\/the-black-friday-and-cyber-monday-game-plan\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.shipstation.com\/"},{"@type":"ListItem","position":2,"name":"Guides","item":"https:\/\/www.shipstation.com\/guides\/"},{"@type":"ListItem","position":3,"name":"The Black Friday and Cyber Monday Game Plan"}]},{"@type":"WebSite","@id":"https:\/\/www.shipstation.com\/#website","url":"https:\/\/www.shipstation.com\/","name":"ShipStation","description":"The fulfillment engine behind hundreds of thousands of online sellers.","publisher":{"@id":"https:\/\/www.shipstation.com\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.shipstation.com\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-GB"},{"@type":"Organization","@id":"https:\/\/www.shipstation.com\/#organization","name":"ShipStation","url":"https:\/\/www.shipstation.com\/","logo":{"@type":"ImageObject","inLanguage":"en-GB","@id":"https:\/\/www.shipstation.com\/#\/schema\/logo\/image\/","url":"https:\/\/www.shipstation.com\/wp-content\/uploads\/2024\/10\/ShipStation-Lockup-DarkGreen-RGB.svg","contentUrl":"https:\/\/www.shipstation.com\/wp-content\/uploads\/2024\/10\/ShipStation-Lockup-DarkGreen-RGB.svg","width":1550,"height":247,"caption":"ShipStation"},"image":{"@id":"https:\/\/www.shipstation.com\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/ShipStation\/","https:\/\/x.com\/shipstation","https:\/\/www.linkedin.com\/company\/shipstation","https:\/\/www.instagram.com\/shipstation\/"],"aggregateRating":{"@type":"AggregateRating","ratingValue":"4.8","reviewCount":"1200"},"description":"The fulfillment engine behind hundreds of thousands of online sellers, ShipStation combines order management, rate shopping, inventory, and returns all in one platform, delivering 15x more labels per hour and up to 90% shipping discounts through 200+ carriers.","telephone":"(512) 886-4006","numberOfEmployees":{"@type":"QuantitativeValue","minValue":"1001","maxValue":"5000"}},{"@type":"Person","@id":"https:\/\/www.shipstation.com\/#\/schema\/person\/5732117106a30e5c0d3f0f38c4c3e0f7","name":"Todd Greenbaum","image":{"@type":"ImageObject","inLanguage":"en-GB","@id":"https:\/\/secure.gravatar.com\/avatar\/900dc3223aa8c26c455cbcd9bd8d0479c93a2daf5a3024a82c4907aeeb34be2f?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/900dc3223aa8c26c455cbcd9bd8d0479c93a2daf5a3024a82c4907aeeb34be2f?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/900dc3223aa8c26c455cbcd9bd8d0479c93a2daf5a3024a82c4907aeeb34be2f?s=96&d=mm&r=g","caption":"Todd Greenbaum"}},{"@type":"SoftwareApplication","@id":"https:\/\/www.shipstation.com\/en-gb\/#software-application","name":"ShipStation","url":"https:\/\/www.shipstation.com\/en-gb\/","applicationCategory":"BusinessApplication","operatingSystem":"Web Browser","aggregateRating":{"@type":"AggregateRating","ratingValue":"4.8","reviewCount":"1200"}}]}},"ss_primary_terms":{},"_links":{"self":[{"href":"https:\/\/www.shipstation.com\/en-gb\/wp-json\/wp\/v2\/guides\/116532","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.shipstation.com\/en-gb\/wp-json\/wp\/v2\/guides"}],"about":[{"href":"https:\/\/www.shipstation.com\/en-gb\/wp-json\/wp\/v2\/types\/guides"}],"author":[{"embeddable":true,"href":"https:\/\/www.shipstation.com\/en-gb\/wp-json\/wp\/v2\/users\/184"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.shipstation.com\/en-gb\/wp-json\/wp\/v2\/media\/116958"}],"wp:attachment":[{"href":"https:\/\/www.shipstation.com\/en-gb\/wp-json\/wp\/v2\/media?parent=116532"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.shipstation.com\/en-gb\/wp-json\/wp\/v2\/categories?post=116532"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.shipstation.com\/en-gb\/wp-json\/wp\/v2\/tags?post=116532"},{"taxonomy":"ss_product","embeddable":true,"href":"https:\/\/www.shipstation.com\/en-gb\/wp-json\/wp\/v2\/ss_product?post=116532"},{"taxonomy":"ss_funnel_stage","embeddable":true,"href":"https:\/\/www.shipstation.com\/en-gb\/wp-json\/wp\/v2\/ss_funnel_stage?post=116532"},{"taxonomy":"ss_business_type","embeddable":true,"href":"https:\/\/www.shipstation.com\/en-gb\/wp-json\/wp\/v2\/ss_business_type?post=116532"},{"taxonomy":"ss_industry","embeddable":true,"href":"https:\/\/www.shipstation.com\/en-gb\/wp-json\/wp\/v2\/ss_industry?post=116532"},{"taxonomy":"ss_company_size","embeddable":true,"href":"https:\/\/www.shipstation.com\/en-gb\/wp-json\/wp\/v2\/ss_company_size?post=116532"},{"taxonomy":"ss_region","embeddable":true,"href":"https:\/\/www.shipstation.com\/en-gb\/wp-json\/wp\/v2\/ss_region?post=116532"},{"taxonomy":"ss_topic","embeddable":true,"href":"https:\/\/www.shipstation.com\/en-gb\/wp-json\/wp\/v2\/ss_topic?post=116532"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}