{"id":345,"date":"2026-06-30T11:17:21","date_gmt":"2026-06-30T11:17:21","guid":{"rendered":"https:\/\/sigmadesk.app\/blog\/?p=345"},"modified":"2026-06-30T11:27:19","modified_gmt":"2026-06-30T11:27:19","slug":"cp-and-cpk-difference","status":"publish","type":"post","link":"https:\/\/sigmadesk.app\/blog\/cp-and-cpk-difference\/","title":{"rendered":"Cp and Cpk: What&#8217;s the Difference? Explained"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\">Process capability indices, Cp and Cpk, are two of the most commonly reported numbers in quality engineering. They&#8217;re calculated from the same underlying measurement data but they answer two different questions, and confusing them can lead to the wrong conclusion about whether a process is actually capable.<\/p>\n\n\n\n<figure class=\"wp-block-embed is-type-video is-provider-youtube wp-block-embed-youtube wp-embed-aspect-16-9 wp-has-aspect-ratio\"><div class=\"wp-block-embed__wrapper\">\n<iframe loading=\"lazy\" title=\"Cp and Cpk: What&amp;apos;s the Difference? (Clearly Explained with a Real Example)\" width=\"660\" height=\"371\" src=\"https:\/\/www.youtube.com\/embed\/xhf357qx-iQ?feature=oembed\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" allowfullscreen><\/iframe>\n<\/div><\/figure>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<p class=\"wp-block-paragraph\">This article focuses specifically on the distinction between Cp and Cpk, so if you need a fuller introduction and more comprehensive look to the process capability, that&#8217;s better you start with complete guide on <a href=\"https:\/\/sigmadesk.app\/blog\/process-capability-analysis\/\">Process Capability<\/a>. Here, the goal is to make the difference between these two indices unambiguous.<\/p>\n\n\n\n<h2 class=\"wp-block-heading has-text-align-center\" style=\"font-size:26px\">What Cp Measures<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Cp measures how wide your specification range is compared to how much your process actually varies.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">The logic comes directly from the normal distribution. For a stable process, six standard deviations, that is, \u00b1 3 sigma around the mean, are expected to contain approximately 99.7% of all output. Cp simply compares the width of your specification limits against that six sigma spread.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Cp = (USL \u2212 LSL) \/ 6\u03c3<\/strong><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">The numerator, upper specification limit minus lower specification limit, is how wide your tolerance is. The denominator, six sigma, is how wide your process actually spreads. Reading the result is straightforward:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>If Cp is less than 1, the process spread is wider than the specification. Some defects are unavoidable, regardless of where the process is centered.<\/li>\n\n\n\n<li>If Cp is greater than 1, the process variation fits inside the specification, with room to spare.<\/li>\n<\/ul>\n\n\n\n<div style=\"width:100%;height:280px;\"><canvas id=\"sd-cp\"><\/canvas><\/div>\n<div style=\"display:flex;gap:20px;margin-top:12px;font-size:13px;font-family:system-ui,sans-serif;color:#666;flex-wrap:wrap;justify-content:center;\">\n  <span style=\"display:flex;align-items:center;gap:6px;\"><span style=\"width:28px;border-top:2px dashed #e34948;display:inline-block;\"><\/span>USL \/ LSL<\/span>\n  <span style=\"display:flex;align-items:center;gap:6px;\"><span style=\"width:28px;border-top:2px dashed #1baf7a;display:inline-block;\"><\/span>Mean (X\u0304)<\/span>\n  <span style=\"display:flex;align-items:center;gap:6px;\"><span style=\"width:16px;height:12px;background:rgba(42,120,214,0.20);border:2px solid #2a78d6;display:inline-block;border-radius:2px;\"><\/span>Process distribution<\/span>\n<\/div>\n<p style=\"margin-top:10px;font-size:13px;font-family:system-ui,sans-serif;color:#888;font-style:italic;text-align:center;\">Cp = 1.67 \u2014 Centered process; the natural spread sits comfortably within both specification limits<\/p>\n<script>\n(function(){\n  function init(){\n    var LSL=49.5,USL=50.5,mu=50.0,sig=0.10,yMax=5.0;\n    function pdf(x){return Math.exp(-0.5*Math.pow((x-mu)\/sig,2))\/(sig*Math.sqrt(2*Math.PI));}\n    var pts=[];for(var i=0;i<=100;i++){var x=49.0+2.0*i\/100;pts.push({x:+(x.toFixed(3)),y:+(pdf(x).toFixed(5))});}\n    function vLine(xv,col){return{showLine:true,data:[{x:xv,y:0},{x:xv,y:yMax*0.90}],borderColor:col,borderWidth:1.5,borderDash:[5,5],pointRadius:0,fill:false,tension:0};}\n    var lp={id:'lbl_cp',afterDraw:function(c){\n      var ctx=c.ctx,xs=c.scales.x,t=c.chartArea.top+13;\n      ctx.save();ctx.font='bold 11px system-ui,sans-serif';ctx.textAlign='center';\n      ctx.fillStyle='#e34948';ctx.fillText('LSL',xs.getPixelForValue(LSL),t);ctx.fillText('USL',xs.getPixelForValue(USL),t);\n      ctx.fillStyle='#1baf7a';ctx.fillText('X\\u0304',xs.getPixelForValue(mu),t);\n      ctx.restore();\n    }};\n    new Chart(document.getElementById('sd-cp'),{\n      type:'scatter',plugins:[lp],\n      data:{datasets:[\n        {showLine:true,data:pts,borderColor:'#2a78d6',borderWidth:2.5,backgroundColor:'rgba(42,120,214,0.18)',fill:'origin',pointRadius:0,tension:0.35},\n        vLine(LSL,'#e34948'),vLine(USL,'#e34948'),vLine(mu,'#1baf7a')\n      ]},\n      options:{responsive:true,maintainAspectRatio:false,\n        plugins:{legend:{display:false},tooltip:{enabled:false}},\n        scales:{\n          x:{type:'linear',min:49.0,max:51.0,ticks:{color:'#888',font:{size:11},stepSize:0.5,callback:function(v){return v.toFixed(1);}},grid:{color:'#eee'}},\n          y:{display:false,min:0,max:yMax}\n        }\n      }\n    });\n  }\n  if(!window._cjsQ)window._cjsQ=[];\n  if(window.Chart){init();return;}\n  window._cjsQ.push(init);\n  if(!window._cjsLoading){\n    window._cjsLoading=true;\n    var s=document.createElement('script');\n    s.src='https:\/\/cdnjs.cloudflare.com\/ajax\/libs\/Chart.js\/4.4.1\/chart.umd.js';\n    s.onload=function(){(window._cjsQ||[]).forEach(function(f){f();});window._cjsQ=[];};\n    document.head.appendChild(s);\n  }\n})();\n<\/script>\n\n\n\n<p class=\"wp-block-paragraph\">That's useful information, but Cp has a built-in blind spot: it assumes the process is perfectly centered. It has no way of knowing whether the mean is sitting comfortably in the middle of the tolerance or drifting toward one of the limits. In theory, a process could already be producing defects while Cp still reports a healthy number, because Cp only ever describes the best-case scenario.<\/p>\n\n\n\n<h2 class=\"wp-block-heading has-text-align-center\" style=\"font-size:26px\">What Cpk Measures<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Cpk closes the gap that Cp leaves open. Instead of assuming the process is centered, it accounts for where the mean actually sits relative to the specification limits.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Cpk = min [ (USL \u2212 \u03bc) \/ 3\u03c3, (\u03bc \u2212 LSL) \/ 3\u03c3 ]<\/strong><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">The concept is straightforward even though the formula looks denser. Cpk checks two distances: how far the process mean is from the upper limit, and how far it is from the lower limit. It then takes the smaller of the two. The side closest to a limit is the side most likely to produce defects, so that side is the one that defines the process's real, current capability.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Two consequences follow directly from this:<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>In the best case, a perfectly centered process, Cpk equals Cp.<\/li>\n\n\n\n<li>As the process drifts off-center, Cpk drops below Cp.<\/li>\n<\/ol>\n\n\n\n<div style=\"width:100%;height:280px;\"><canvas id=\"sd-cpk\"><\/canvas><\/div>\n<div style=\"display:flex;gap:20px;margin-top:12px;font-size:13px;font-family:system-ui,sans-serif;color:#666;flex-wrap:wrap;justify-content:center;\">\n  <span style=\"display:flex;align-items:center;gap:6px;\"><span style=\"width:28px;border-top:2px dashed #e34948;display:inline-block;\"><\/span>USL \/ LSL<\/span>\n  <span style=\"display:flex;align-items:center;gap:6px;\"><span style=\"width:28px;border-top:2px dashed #1baf7a;display:inline-block;\"><\/span>Mean (X\u0304)<\/span>\n  <span style=\"display:flex;align-items:center;gap:6px;\"><span style=\"width:16px;height:12px;background:rgba(42,120,214,0.20);border:2px solid #2a78d6;display:inline-block;border-radius:2px;\"><\/span>Process distribution<\/span>\n<\/div>\n<p style=\"margin-top:10px;font-size:13px;font-family:system-ui,sans-serif;color:#888;font-style:italic;text-align:center;\">Cpk = 0.67 \u2014 The same process spread, but the mean has drifted toward the lower specification limit<\/p>\n<script>\n(function(){\n  function init(){\n    var LSL=49.5,USL=50.5,mu=49.70,sig=0.10,yMax=5.0;\n    function pdf(x){return Math.exp(-0.5*Math.pow((x-mu)\/sig,2))\/(sig*Math.sqrt(2*Math.PI));}\n    var pts=[];for(var i=0;i<=100;i++){var x=49.0+2.0*i\/100;pts.push({x:+(x.toFixed(3)),y:+(pdf(x).toFixed(5))});}\n    function vLine(xv,col){return{showLine:true,data:[{x:xv,y:0},{x:xv,y:yMax*0.90}],borderColor:col,borderWidth:1.5,borderDash:[5,5],pointRadius:0,fill:false,tension:0};}\n    var lp={id:'lbl_cpk',afterDraw:function(c){\n      var ctx=c.ctx,xs=c.scales.x,t=c.chartArea.top+13;\n      ctx.save();ctx.font='bold 11px system-ui,sans-serif';ctx.textAlign='center';\n      ctx.fillStyle='#e34948';ctx.fillText('LSL',xs.getPixelForValue(LSL),t);ctx.fillText('USL',xs.getPixelForValue(USL),t);\n      ctx.fillStyle='#1baf7a';ctx.fillText('X\\u0304',xs.getPixelForValue(mu),t);\n      ctx.restore();\n    }};\n    new Chart(document.getElementById('sd-cpk'),{\n      type:'scatter',plugins:[lp],\n      data:{datasets:[\n        {showLine:true,data:pts,borderColor:'#2a78d6',borderWidth:2.5,backgroundColor:'rgba(42,120,214,0.18)',fill:'origin',pointRadius:0,tension:0.35},\n        vLine(LSL,'#e34948'),vLine(USL,'#e34948'),vLine(mu,'#1baf7a')\n      ]},\n      options:{responsive:true,maintainAspectRatio:false,\n        plugins:{legend:{display:false},tooltip:{enabled:false}},\n        scales:{\n          x:{type:'linear',min:49.0,max:51.0,ticks:{color:'#888',font:{size:11},stepSize:0.5,callback:function(v){return v.toFixed(1);}},grid:{color:'#eee'}},\n          y:{display:false,min:0,max:yMax}\n        }\n      }\n    });\n  }\n  if(!window._cjsQ)window._cjsQ=[];\n  if(window.Chart){init();return;}\n  window._cjsQ.push(init);\n  if(!window._cjsLoading){\n    window._cjsLoading=true;\n    var s=document.createElement('script');\n    s.src='https:\/\/cdnjs.cloudflare.com\/ajax\/libs\/Chart.js\/4.4.1\/chart.umd.js';\n    s.onload=function(){(window._cjsQ||[]).forEach(function(f){f();});window._cjsQ=[];};\n    document.head.appendChild(s);\n  }\n})();\n<\/script>\n\n\n\n<p class=\"wp-block-paragraph\">Mathematically, <strong>Cp \u2265 Cpk<\/strong> always holds. That makes sense once you see what each index represents: Cp describes the best case, and Cpk describes reality.<\/p>\n\n\n\n<h2 class=\"wp-block-heading has-text-align-center\" style=\"font-size:26px\">Why Track Both Cp and Cpk Instead of Just Cpk?<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">A natural question follows: if Cpk already accounts for centering, why bother with Cp at all?<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">The cleanest way to hold the distinction in your head is this: <strong>Cp measures potential capability, and Cpk measures actual capability.<\/strong><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">With Cpk alone, you can't tell whether your process has the potential to be capable in the first place. The relationship between the two numbers is what carries the diagnostic value:<\/p>\n\n\n\n<h3 class=\"wp-block-heading has-text-align-center\" style=\"font-size:22px\"><strong>Good Cp, bad Cpk<\/strong><\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">The variation itself is fine, but the process is off-center. This is generally the better problem to have, because re-centering the mean is often a faster, lower-cost adjustment than reducing variation. It may be as simple as a machine offset, a setpoint correction, or a calibration fix.<\/p>\n\n\n\n<div style=\"width:100%;height:280px;\"><canvas id=\"sd-cpk2\"><\/canvas><\/div>\n<div style=\"display:flex;gap:20px;margin-top:12px;font-size:13px;font-family:system-ui,sans-serif;color:#666;flex-wrap:wrap;justify-content:center;\">\n  <span style=\"display:flex;align-items:center;gap:6px;\"><span style=\"width:28px;border-top:2px dashed #e34948;display:inline-block;\"><\/span>USL \/ LSL<\/span>\n  <span style=\"display:flex;align-items:center;gap:6px;\"><span style=\"width:28px;border-top:2px dashed #1baf7a;display:inline-block;\"><\/span>Mean (X\u0304)<\/span>\n  <span style=\"display:flex;align-items:center;gap:6px;\"><span style=\"width:16px;height:12px;background:rgba(42,120,214,0.20);border:2px solid #2a78d6;display:inline-block;border-radius:2px;\"><\/span>Process distribution<\/span>\n<\/div>\n<p style=\"margin-top:10px;font-size:13px;font-family:system-ui,sans-serif;color:#888;font-style:italic;text-align:center;\">Cp = 1.67, Cpk = 0.67 \u2014 Tight process, off-center mean. The spread itself is fine; the fix is recentering, not reducing variation<\/p>\n<script>\n(function(){\n  function init(){\n    var LSL=49.5,USL=50.5,mu=49.70,sig=0.10,yMax=5.0;\n    function pdf(x){return Math.exp(-0.5*Math.pow((x-mu)\/sig,2))\/(sig*Math.sqrt(2*Math.PI));}\n    var pts=[];for(var i=0;i<=100;i++){var x=49.0+2.0*i\/100;pts.push({x:+(x.toFixed(3)),y:+(pdf(x).toFixed(5))});}\n    function vLine(xv,col){return{showLine:true,data:[{x:xv,y:0},{x:xv,y:yMax*0.90}],borderColor:col,borderWidth:1.5,borderDash:[5,5],pointRadius:0,fill:false,tension:0};}\n    var lp={id:'lbl_cpk2',afterDraw:function(c){\n      var ctx=c.ctx,xs=c.scales.x,t=c.chartArea.top+13;\n      ctx.save();ctx.font='bold 11px system-ui,sans-serif';ctx.textAlign='center';\n      ctx.fillStyle='#e34948';ctx.fillText('LSL',xs.getPixelForValue(LSL),t);ctx.fillText('USL',xs.getPixelForValue(USL),t);\n      ctx.fillStyle='#1baf7a';ctx.fillText('X\\u0304',xs.getPixelForValue(mu),t);\n      ctx.restore();\n    }};\n    new Chart(document.getElementById('sd-cpk2'),{\n      type:'scatter',plugins:[lp],\n      data:{datasets:[\n        {showLine:true,data:pts,borderColor:'#2a78d6',borderWidth:2.5,backgroundColor:'rgba(42,120,214,0.18)',fill:'origin',pointRadius:0,tension:0.35},\n        vLine(LSL,'#e34948'),vLine(USL,'#e34948'),vLine(mu,'#1baf7a')\n      ]},\n      options:{responsive:true,maintainAspectRatio:false,\n        plugins:{legend:{display:false},tooltip:{enabled:false}},\n        scales:{\n          x:{type:'linear',min:49.0,max:51.0,ticks:{color:'#888',font:{size:11},stepSize:0.5,callback:function(v){return v.toFixed(1);}},grid:{color:'#eee'}},\n          y:{display:false,min:0,max:yMax}\n        }\n      }\n    });\n  }\n  if(!window._cjsQ)window._cjsQ=[];\n  if(window.Chart){init();return;}\n  window._cjsQ.push(init);\n  if(!window._cjsLoading){\n    window._cjsLoading=true;\n    var s=document.createElement('script');\n    s.src='https:\/\/cdnjs.cloudflare.com\/ajax\/libs\/Chart.js\/4.4.1\/chart.umd.js';\n    s.onload=function(){(window._cjsQ||[]).forEach(function(f){f();});window._cjsQ=[];};\n    document.head.appendChild(s);\n  }\n})();\n<\/script>\n\n\n\n<h3 class=\"wp-block-heading has-text-align-center\" style=\"font-size:22px\"><strong>Bad Cp<\/strong><\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">The variation itself is too large. Even with perfect centering, the process cannot consistently fit inside the specification. This points to a deeper improvement effort, since reducing variation is typically harder and slower than recentering a process that's already tight.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><\/p>\n\n\n\n<div style=\"width:100%;height:280px;\"><canvas id=\"sd-cpbad\"><\/canvas><\/div>\n<div style=\"display:flex;gap:20px;margin-top:12px;font-size:13px;font-family:system-ui,sans-serif;color:#666;flex-wrap:wrap;justify-content:center;\">\n  <span style=\"display:flex;align-items:center;gap:6px;\"><span style=\"width:28px;border-top:2px dashed #e34948;display:inline-block;\"><\/span>USL \/ LSL<\/span>\n  <span style=\"display:flex;align-items:center;gap:6px;\"><span style=\"width:28px;border-top:2px dashed #1baf7a;display:inline-block;\"><\/span>Mean (X\u0304)<\/span>\n  <span style=\"display:flex;align-items:center;gap:6px;\"><span style=\"width:16px;height:12px;background:rgba(42,120,214,0.20);border:2px solid #2a78d6;display:inline-block;border-radius:2px;\"><\/span>Process distribution<\/span>\n<\/div>\n<p style=\"margin-top:10px;font-size:13px;font-family:system-ui,sans-serif;color:#888;font-style:italic;text-align:center;\">Cp = 0.80, Cpk = 0.80 \u2014 Centered process, but the natural spread is too wide for the specification limits<\/p>\n<script>\n(function(){\n  function init(){\n    var LSL=49.5,USL=50.5,mu=50.0,sig=0.208,yMax=2.4;\n    function pdf(x){return Math.exp(-0.5*Math.pow((x-mu)\/sig,2))\/(sig*Math.sqrt(2*Math.PI));}\n    var pts=[];for(var i=0;i<=100;i++){var x=49.0+2.0*i\/100;pts.push({x:+(x.toFixed(3)),y:+(pdf(x).toFixed(5))});}\n    function vLine(xv,col){return{showLine:true,data:[{x:xv,y:0},{x:xv,y:yMax*0.90}],borderColor:col,borderWidth:1.5,borderDash:[5,5],pointRadius:0,fill:false,tension:0};}\n    var lp={id:'lbl_cpbad',afterDraw:function(c){\n      var ctx=c.ctx,xs=c.scales.x,t=c.chartArea.top+13;\n      ctx.save();ctx.font='bold 11px system-ui,sans-serif';ctx.textAlign='center';\n      ctx.fillStyle='#e34948';ctx.fillText('LSL',xs.getPixelForValue(LSL),t);ctx.fillText('USL',xs.getPixelForValue(USL),t);\n      ctx.fillStyle='#1baf7a';ctx.fillText('X\\u0304',xs.getPixelForValue(mu),t);\n      ctx.restore();\n    }};\n    new Chart(document.getElementById('sd-cpbad'),{\n      type:'scatter',plugins:[lp],\n      data:{datasets:[\n        {showLine:true,data:pts,borderColor:'#2a78d6',borderWidth:2.5,backgroundColor:'rgba(42,120,214,0.18)',fill:'origin',pointRadius:0,tension:0.35},\n        vLine(LSL,'#e34948'),vLine(USL,'#e34948'),vLine(mu,'#1baf7a')\n      ]},\n      options:{responsive:true,maintainAspectRatio:false,\n        plugins:{legend:{display:false},tooltip:{enabled:false}},\n        scales:{\n          x:{type:'linear',min:49.0,max:51.0,ticks:{color:'#888',font:{size:11},stepSize:0.5,callback:function(v){return v.toFixed(1);}},grid:{color:'#eee'}},\n          y:{display:false,min:0,max:yMax}\n        }\n      }\n    });\n  }\n  if(!window._cjsQ)window._cjsQ=[];\n  if(window.Chart){init();return;}\n  window._cjsQ.push(init);\n  if(!window._cjsLoading){\n    window._cjsLoading=true;\n    var s=document.createElement('script');\n    s.src='https:\/\/cdnjs.cloudflare.com\/ajax\/libs\/Chart.js\/4.4.1\/chart.umd.js';\n    s.onload=function(){(window._cjsQ||[]).forEach(function(f){f();});window._cjsQ=[];};\n    document.head.appendChild(s);\n  }\n})();\n<\/script>\n\n\n\n<p class=\"wp-block-paragraph\">Cp and Cpk work as a pair, not as substitutes for one another. Cpk tells you whether the process is meeting requirements today. Cp, read alongside it, tells you whether a shortfall is a centering problem or a variation problem, which is exactly the information you need before deciding where to direct improvement efforts.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Process capability indices, Cp and Cpk, are two of the most commonly reported numbers in quality engineering. They&#8217;re calculated from the same underlying measurement data but they answer two different questions, and confusing them can lead to the wrong conclusion about whether a process is actually capable. This article focuses specifically on the distinction between [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_coblocks_attr":"","_coblocks_dimensions":"","_coblocks_responsive_height":"","_coblocks_accordion_ie_support":"","hide_page_title":"","footnotes":""},"categories":[1],"tags":[],"class_list":["post-345","post","type-post","status-publish","format-standard","hentry","category-educational"],"_links":{"self":[{"href":"https:\/\/sigmadesk.app\/blog\/wp-json\/wp\/v2\/posts\/345","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/sigmadesk.app\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/sigmadesk.app\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/sigmadesk.app\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/sigmadesk.app\/blog\/wp-json\/wp\/v2\/comments?post=345"}],"version-history":[{"count":7,"href":"https:\/\/sigmadesk.app\/blog\/wp-json\/wp\/v2\/posts\/345\/revisions"}],"predecessor-version":[{"id":353,"href":"https:\/\/sigmadesk.app\/blog\/wp-json\/wp\/v2\/posts\/345\/revisions\/353"}],"wp:attachment":[{"href":"https:\/\/sigmadesk.app\/blog\/wp-json\/wp\/v2\/media?parent=345"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/sigmadesk.app\/blog\/wp-json\/wp\/v2\/categories?post=345"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/sigmadesk.app\/blog\/wp-json\/wp\/v2\/tags?post=345"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}