{"id":76,"date":"2026-09-03T08:03:47","date_gmt":"2026-09-03T08:03:47","guid":{"rendered":"https:\/\/ivfprep.guide\/articles\/implantation-cramp-location\/"},"modified":"2026-10-17T08:03:13","modified_gmt":"2026-10-17T08:03:13","slug":"implantation-cramp-location","status":"publish","type":"post","link":"https:\/\/ivfprep.guide\/articles\/implantation-cramp-location\/","title":{"rendered":"Where the Cramps Are, and Why the Map Is Wrong"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\"><strong>Cramp location does not tell you whether a transfer worked. There is no map linking left, right or centre to implantation, and the physiology of pelvic pain makes such a map unlikely to exist. What cramps can tell you is whether to ring your clinic today, which is a different question with a real answer.<\/strong><\/p>\n\n\n\n<div class=\"msq-audio\" data-article=\"implantation-cramp-location\" data-minutes=\"9\">\n<style>.msq-audio{margin:1.25em 0 1.75em;padding:16px 18px;background:#EEF3F8;border:1px solid #CBD8E6;border-radius:12px}\n.msq-audio-lead{margin:0 0 8px;font-size:.95em}.msq-audio audio{width:100%;margin:0 0 12px;display:block}\n.msq-toc-title{margin:0 0 6px;font-weight:700}.msq-toc ol{margin:0;padding:0;list-style:none}\n.msq-toc li{display:flex;gap:10px;align-items:center;padding:6px 6px;border-bottom:1px solid #CBD8E6;border-radius:8px}\n.msq-toc li:last-child{border-bottom:0}.msq-toc li.is-active{background:#fff}\n.msq-toc-play{flex:0 0 auto;width:30px;height:30px;border-radius:50%;border:0;background:#1F4E79;color:#fff;font:inherit;font-size:.72em;line-height:30px;padding:0;cursor:pointer}\n.msq-toc-play.is-playing{background:#B4531A}\n.msq-toc-time{flex:0 0 auto;min-width:3.1em;font-variant-numeric:tabular-nums;color:#4A5560;font-size:.9em}\n.msq-toc a{color:#1B1F24;text-decoration:none;line-height:1.35}.msq-toc li.is-active a{font-weight:700;color:#1F4E79}\n.msq-audio-note{margin:10px 0 0;font-size:.82em;color:#4A5560}\nh2.wp-block-heading[id]{scroll-margin-top:24px}\n.msq-hplay{display:inline-block;vertical-align:middle;width:26px;height:26px;margin:0 0 0 10px;border-radius:50%;border:0;background:#1F4E79;cursor:pointer;padding:0;position:relative;top:-2px}\n.msq-hplay::before{content:'\u25b6\ufe0e';display:block;color:#fff;font-size:11px;line-height:26px;text-align:center}\n.msq-hplay.is-playing{background:#B4531A}.msq-hplay.is-playing::before{content:'\u2016';font-size:13px;font-weight:700}\n.msq-bar{position:fixed;left:0;right:0;bottom:0;z-index:9000;display:flex;align-items:center;gap:10px;padding:8px 12px;padding-bottom:calc(8px + env(safe-area-inset-bottom));background:#FFFFFF;border-top:1px solid #CBD8E6;box-shadow:0 -4px 16px rgba(0,0,0,.08);font-size:.92em;color:#1B1F24;transition:transform .2s ease}\n.msq-bar.is-hidden{transform:translateY(130%)}\n.msq-bar-play{display:inline-flex;align-items:center;gap:8px;border:0;border-radius:999px;background:#1F4E79;color:#fff;font:inherit;font-weight:700;padding:8px 14px 8px 12px;cursor:pointer;white-space:nowrap}\n.msq-bar-play.is-playing{background:#B4531A}\n.msq-bar-icon::before{content:'\u25b6\ufe0e';font-size:12px}.msq-bar-play.is-playing .msq-bar-icon::before{content:'\u2016';font-size:14px;font-weight:700}\n.msq-bar-chapter{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}\n.msq-bar-time{flex:0 0 auto;font-variant-numeric:tabular-nums;color:#4A5560;font-size:.9em}\n.msq-bar-rate,.msq-bar-close{flex:0 0 auto;border:1px solid #CBD8E6;background:#fff;color:#1B1F24;font:inherit;font-size:.85em;line-height:1;border-radius:8px;padding:7px 9px;cursor:pointer}\n.msq-bar-close::before{content:'\u2715'}\n.msq-bar.msq-bar-pill{left:auto;right:14px;bottom:14px;padding:6px;padding-bottom:6px;border:1px solid #CBD8E6;border-radius:999px;box-shadow:0 6px 20px rgba(0,0,0,.15)}\n.msq-bar.msq-bar-pill .msq-bar-chapter,.msq-bar.msq-bar-pill .msq-bar-time,.msq-bar.msq-bar-pill .msq-bar-rate{display:none}\nbody.msq-has-bar{padding-bottom:76px}\n@media (max-width:600px){.msq-bar-time{display:none}.msq-bar{gap:8px;padding-left:10px;padding-right:10px}}\n.msq-s.msq-now{background:#EEF3F8;box-shadow:0 2px 0 #1F4E79;border-radius:2px}\ntr.msq-now td,tr.msq-now th{background:#EEF3F8;box-shadow:inset 0 -2px 0 #1F4E79}\n@media (hover:hover){.msq-s,tr[data-i]{cursor:pointer}.msq-s:hover{background:#EEF3F8}}<\/style>\n<script type=\"application\/ld+json\">{\"@context\":\"https:\/\/schema.org\",\"@type\":\"AudioObject\",\"@id\":\"https:\/\/ivfprep.guide\/articles\/implantation-cramp-location\/#audio\",\"name\":\"Where the Cramps Are, and Why the Map Is Wrong, read aloud\",\"description\":\"Synthetic voice reading of the article, recorded 25 September 2026.\",\"contentUrl\":\"https:\/\/ivfprep.guide\/articles\/wp-content\/uploads\/2026\/09\/implantation-cramp-location-audio-202609251511.mp3\",\"encodingFormat\":\"audio\/mpeg\",\"duration\":\"PT9M24S\",\"uploadDate\":\"2026-09-25\",\"inLanguage\":\"en-GB\",\"isAccessibleForFree\":true,\"mainEntityOfPage\":\"https:\/\/ivfprep.guide\/articles\/implantation-cramp-location\/\",\"hasPart\":[{\"@type\":\"Clip\",\"name\":\"Where the Cramps Are, and Why the Map Is Wrong\",\"startOffset\":0,\"endOffset\":64},{\"@type\":\"Clip\",\"name\":\"Does the side you feel cramps on tell you anything?\",\"startOffset\":64,\"endOffset\":105,\"url\":\"https:\/\/ivfprep.guide\/articles\/implantation-cramp-location\/#does-the-side-you-feel-cramps-on-tell-you-anything\"},{\"@type\":\"Clip\",\"name\":\"Why does the location feel so specific when it is not?\",\"startOffset\":105,\"endOffset\":160,\"url\":\"https:\/\/ivfprep.guide\/articles\/implantation-cramp-location\/#why-does-the-location-feel-so-specific-when-it-is-not\"},{\"@type\":\"Clip\",\"name\":\"What is actually causing cramps in the two week wait?\",\"startOffset\":160,\"endOffset\":275,\"url\":\"https:\/\/ivfprep.guide\/articles\/implantation-cramp-location\/#what-is-actually-causing-cramps-in-the-two-week-wait\"},{\"@type\":\"Clip\",\"name\":\"When did implantation actually happen, and would there be anything to feel?\",\"startOffset\":275,\"endOffset\":321,\"url\":\"https:\/\/ivfprep.guide\/articles\/implantation-cramp-location\/#when-did-implantation-actually-happen-and-would-there-be-any\"},{\"@type\":\"Clip\",\"name\":\"Which cramps are worth a phone call today?\",\"startOffset\":321,\"endOffset\":459,\"url\":\"https:\/\/ivfprep.guide\/articles\/implantation-cramp-location\/#which-cramps-are-worth-a-phone-call-today\"},{\"@type\":\"Clip\",\"name\":\"Why do the forum maps look so convincing?\",\"startOffset\":459,\"endOffset\":524,\"url\":\"https:\/\/ivfprep.guide\/articles\/implantation-cramp-location\/#why-do-the-forum-maps-look-so-convincing\"},{\"@type\":\"Clip\",\"name\":\"What can you do with the waiting instead?\",\"startOffset\":524,\"endOffset\":564,\"url\":\"https:\/\/ivfprep.guide\/articles\/implantation-cramp-location\/#what-can-you-do-with-the-waiting-instead\"}],\"contentSize\":\"3.9 MB\"}<\/script>\n<p class=\"msq-audio-lead\"><strong>Listen to this article<\/strong>, about 9 minutes. A synthetic voice reads the article and announces each section title as it begins; tables are read row by row and the questions at the end are left out.<\/p>\n<audio class=\"msq-audio-player\" controls preload=\"metadata\" src=\"https:\/\/ivfprep.guide\/articles\/wp-content\/uploads\/2026\/09\/implantation-cramp-location-audio-202609251511.mp3\"><\/audio>\n<nav class=\"msq-toc\" aria-label=\"In this article\"><p class=\"msq-toc-title\">In this article<\/p>\n<ol>\n<li data-start=\"0.0\"><button type=\"button\" class=\"msq-toc-play\" data-start=\"0.0\" aria-label=\"Play from: Where the Cramps Are, and Why the Map Is Wrong\">&#x25B6;&#xFE0E;<\/button><span class=\"msq-toc-time\">0:00<\/span><a href=\"#top\">Where the Cramps Are, and Why the Map Is Wrong<\/a><\/li>\n<li data-start=\"63.58\"><button type=\"button\" class=\"msq-toc-play\" data-start=\"63.58\" aria-label=\"Play from: Does the side you feel cramps on tell you anything?\">&#x25B6;&#xFE0E;<\/button><span class=\"msq-toc-time\">1:04<\/span><a href=\"#does-the-side-you-feel-cramps-on-tell-you-anything\">Does the side you feel cramps on tell you anything?<\/a><\/li>\n<li data-start=\"104.84\"><button type=\"button\" class=\"msq-toc-play\" data-start=\"104.84\" aria-label=\"Play from: Why does the location feel so specific when it is not?\">&#x25B6;&#xFE0E;<\/button><span class=\"msq-toc-time\">1:45<\/span><a href=\"#why-does-the-location-feel-so-specific-when-it-is-not\">Why does the location feel so specific when it is not?<\/a><\/li>\n<li data-start=\"160.1\"><button type=\"button\" class=\"msq-toc-play\" data-start=\"160.1\" aria-label=\"Play from: What is actually causing cramps in the two week wait?\">&#x25B6;&#xFE0E;<\/button><span class=\"msq-toc-time\">2:40<\/span><a href=\"#what-is-actually-causing-cramps-in-the-two-week-wait\">What is actually causing cramps in the two week wait?<\/a><\/li>\n<li data-start=\"275.08\"><button type=\"button\" class=\"msq-toc-play\" data-start=\"275.08\" aria-label=\"Play from: When did implantation actually happen, and would there be anything to feel?\">&#x25B6;&#xFE0E;<\/button><span class=\"msq-toc-time\">4:35<\/span><a href=\"#when-did-implantation-actually-happen-and-would-there-be-any\">When did implantation actually happen, and would there be anything to feel?<\/a><\/li>\n<li data-start=\"321.06\"><button type=\"button\" class=\"msq-toc-play\" data-start=\"321.06\" aria-label=\"Play from: Which cramps are worth a phone call today?\">&#x25B6;&#xFE0E;<\/button><span class=\"msq-toc-time\">5:21<\/span><a href=\"#which-cramps-are-worth-a-phone-call-today\">Which cramps are worth a phone call today?<\/a><\/li>\n<li data-start=\"458.68\"><button type=\"button\" class=\"msq-toc-play\" data-start=\"458.68\" aria-label=\"Play from: Why do the forum maps look so convincing?\">&#x25B6;&#xFE0E;<\/button><span class=\"msq-toc-time\">7:39<\/span><a href=\"#why-do-the-forum-maps-look-so-convincing\">Why do the forum maps look so convincing?<\/a><\/li>\n<li data-start=\"524.38\"><button type=\"button\" class=\"msq-toc-play\" data-start=\"524.38\" aria-label=\"Play from: What can you do with the waiting instead?\">&#x25B6;&#xFE0E;<\/button><span class=\"msq-toc-time\">8:44<\/span><a href=\"#what-can-you-do-with-the-waiting-instead\">What can you do with the waiting instead?<\/a><\/li>\n<\/ol><\/nav>\n<p class=\"msq-audio-note\">Recorded 25 September 2026 from the article as published that day. Press a chapter to jump there; the highlighted line is what is playing. A play button sits beside every section heading, and once you scroll past this player a bar at the bottom of the screen keeps the controls in reach. Tap or click any sentence to hear the reading start from there.<\/p>\n<script>var MSQ_SENT = [[0.0,\"h\",\"wherethecrampsareandwhyt\",36],[2.28,\"p\",\"cramplocationdoesnottell\",49],[5.28,\"p\",\"thereisnomaplinkingleftr\",106],[13.28,\"p\",\"whatcrampscantellyouiswh\",90],[18.72,\"p\",\"onthispagewhypainfromthe\",223],[35.96,\"p\",\"ifyouarelyingstillattwoi\",137],[44.16,\"p\",\"themapyouaretryingtobuil\",37],[46.48,\"p\",\"thispageexplainswhywhati\",96],[52.88,\"p\",\"nothinghereisareadingofy\",70],[57.12,\"p\",\"yourclinicknowsyourproto\",63],[61.52,\"p\",\"thissiteknowsnoneofthem\",23],[63.58,\"h\",\"doesthesideyoufeelcramps\",41],[65.62,\"p\",\"nothereisnoestablishedre\",110],[72.74,\"p\",\"forumsarefullofpeoplecou\",42],[75.42,\"p\",\"clinicsarenotandthegapbe\",69],[80.02,\"p\",\"partofthereasonisanatomi\",27],[81.82,\"p\",\"ablastocystisafractionof\",93],[88.14,\"p\",\"nothingatthatscalehasbee\",188],[99.5,\"p\",\"theotherreasonisthatpain\",77],[104.84,\"h\",\"whydoesthelocationfeelso\",43],[107.76,\"p\",\"painfromtheorgansinsidey\",124],[116.04,\"p\",\"thatisthedefiningfeature\",53],[119.88,\"p\",\"thereceptorsaresparsecom\",194],[131.32,\"p\",\"thereisasecondpointthatm\",42],[133.56,\"p\",\"abdominalorgansareinnerv\",149],[143.0,\"p\",\"soacentrallowachetellsyo\",154],[153.04,\"p\",\"thisiswhytheconfidentmap\",59],[156.72,\"p\",\"theydescribeaprecisionth\",50],[160.1,\"h\",\"whatisactuallycausingcra\",43],[162.78,\"p\",\"usuallysomethingwithnobe\",41],[164.98,\"p\",\"thelistbelowisnotexhaust\",60],[169.34,\"p\",\"everyitemonitisdocumente\",95],[174.82,\"t\",\"progesteronelutealsuppor\",293],[196.42,\"t\",\"thetransferprocedureitse\",207],[211.7,\"t\",\"ovariesafterstimulationi\",262],[231.42,\"t\",\"ordinarybowelchanges\",195],[244.46,\"t\",\"implantation\",131],[255.02,\"p\",\"progesteronedeservesitso\",126],[263.74,\"p\",\"wehavewrittenseparatelya\",98],[269.26,\"p\",\"themedicationthatmakesth\",85],[275.08,\"h\",\"whendidimplantationactua\",62],[278.6,\"p\",\"inivfthetimelineisnotthe\",56],[282.32,\"p\",\"fertilisationhappenedint\",143],[291.2,\"p\",\"whatremainsisimplantatio\",89],[298.12,\"p\",\"thewindowvarieswithwhatw\",88],[303.96,\"p\",\"whatnocliniccantellyouis\",99],[310.12,\"p\",\"theabsenceofadocumenteds\",64],[314.12,\"p\",\"itdoesmeanthatifyoufeeln\",106],[321.06,\"h\",\"whichcrampsareworthaphon\",34],[323.14,\"p\",\"thisisthequestionthathas\",83],[328.74,\"p\",\"noneofthefollowingtellsy\",35],[330.46,\"p\",\"theyareaboutyoursafetywh\",34],[332.42,\"p\",\"nhsguidanceonectopicpreg\",191],[345.7,\"p\",\"itadvisescontactingagpor\",88],[352.94,\"p\",\"asharpsuddenandintenseab\",182],[366.02,\"p\",\"whetherectopicpregnancyi\",103],[372.66,\"p\",\"in553577artpregnanciesin\",150],[384.62,\"p\",\"otherseriesarecommonlyqu\",91],[390.3,\"p\",\"thatisnotalikelihoodabou\",37],[392.54,\"p\",\"itisthereasononesidedpai\",59],[396.62,\"t\",\"milddiffuselowcomesandgo\",113],[406.22,\"t\",\"lowonesidedtummypainpart\",149],[418.46,\"t\",\"paininthetipoftheshoulde\",89],[425.54,\"t\",\"sharpsuddenintensepainwi\",155],[437.22,\"t\",\"increasingabdominalswell\",200],[451.22,\"p\",\"outsidetheunitedkingdomt\",73],[456.02,\"p\",\"noclinicwillthinkyouover\",31],[458.68,\"h\",\"whydotheforummapslooksoc\",33],[460.96,\"p\",\"becauseofwhoposts\",17],[462.16,\"p\",\"someonewhofeltadistinctt\",82],[467.12,\"p\",\"sodoesthepersonwhosetwin\",106],[473.32,\"p\",\"thepeoplewhofeltnothingw\",100],[479.0,\"p\",\"weputanumberonthatskewby\",133],[489.52,\"p\",\"sothearchiveyouarereadin\",83],[494.44,\"p\",\"itisarecordofwhatwasmemo\",44],[497.16,\"p\",\"everysymptommapbuiltfrom\",72],[502.0,\"p\",\"wegothroughthesameproble\",148],[510.72,\"p\",\"noneofthismeansyourcramp\",37],[513.08,\"p\",\"theyarerealsensationswit\",35],[515.44,\"p\",\"itmeansthecausesaremostl\",145],[524.38,\"h\",\"whatcanyoudowiththewaiti\",33],[526.1,\"p\",\"verylittlehonestlyandtha\",80],[531.42,\"p\",\"theresultisalreadydeterm\",67],[535.78,\"p\",\"testingearlydoesnotchang\",109],[543.26,\"p\",\"whatyoucandoiswritedowna\",129],[550.66,\"p\",\"notbecausegradingitissil\",66],[554.54,\"p\",\"thisarticleisgeneralinfo\",109],[561.3,\"p\",\"speaktoyourdoctoraboutyo\",38]];\n(function(){\n  function init(){\n  var root = document.querySelector('.msq-audio'); if (!root) { return; }\n  var audio = root.querySelector('audio'), items = Array.prototype.slice.call(root.querySelectorAll('.msq-toc li'));\n  var starts = items.map(function(li){ return parseFloat(li.getAttribute('data-start')) || 0; });\n  var names = items.map(function(li){ return li.querySelector('a').textContent; });\n  var anchors = items.map(function(li){ var h = li.querySelector('a').getAttribute('href') || ''; return (h.charAt(0) === '#' && h !== '#top') ? document.getElementById(h.slice(1)) : null; });\n  var article = root.getAttribute('data-article') || location.pathname, minutes = root.getAttribute('data-minutes') || '';\n  var marks = {}, started = false, pausedAt = -1, closed = false, ended = false;\n  var RATES = [1, 1.25, 1.5], rate = 1;\n  try { var saved = parseFloat(localStorage.getItem('msq-audio-rate')); if (RATES.indexOf(saved) >= 0) { rate = saved; } } catch (e) {}\n  audio.playbackRate = rate;\n  function track(name, extra){ try { if (typeof gtag === 'function') { var p = { article: article }; for (var k in extra) { p[k] = extra[k]; } gtag('event', name, p); } } catch (e) {} }\n  function current(){ var t = audio.currentTime, idx = 0; for (var i = 0; starts.length > i; i += 1) { if (t + 0.25 >= starts[i]) { idx = i; } } return idx; }\n  function onScreen(){\n    var line = window.innerHeight \/ 3, idx = 0;\n    for (var i = 0; anchors.length > i; i += 1) { var el = anchors[i]; if (el && line >= el.getBoundingClientRect().top) { idx = i; } }\n    return idx;\n  }\n  function fmt(s){ s = Math.max(0, Math.round(s || 0)); var m = Math.floor(s \/ 60), r = s % 60; return m + ':' + (10 > r ? '0' : '') + r; }\n  function play(from, source){\n    if (from !== null) { audio.currentTime = from; }\n    var p = audio.play(); if (p && p.catch) { p.catch(function(){}); }\n    track(from === null ? 'audio_resume' : 'audio_chapter', { chapter: names[current()], start: Math.round(audio.currentTime), source: source });\n  }\n  var hbtns = anchors.map(function(el, i){\n    if (!el) { return null; }\n    var b = document.createElement('button'); b.type = 'button'; b.className = 'msq-hplay'; b.setAttribute('aria-label', 'Play this section: ' + names[i]);\n    b.addEventListener('click', function(){\n      if (!audio.paused && current() === i) { audio.pause(); track('audio_pause', { source: 'heading' }); return; }\n      play(starts[i], 'heading');\n    });\n    el.appendChild(b); return b;\n  });\n  var bar = document.createElement('div'); bar.className = 'msq-bar msq-bar-pill is-hidden'; bar.setAttribute('role', 'region'); bar.setAttribute('aria-label', 'Audio player');\n  var playBtn = document.createElement('button'); playBtn.type = 'button'; playBtn.className = 'msq-bar-play';\n  var icon = document.createElement('span'); icon.className = 'msq-bar-icon'; icon.setAttribute('aria-hidden', 'true');\n  var label = document.createElement('span'); label.className = 'msq-bar-label';\n  playBtn.appendChild(icon); playBtn.appendChild(label);\n  var chap = document.createElement('span'); chap.className = 'msq-bar-chapter';\n  var clock = document.createElement('span'); clock.className = 'msq-bar-time';\n  var rateBtn = document.createElement('button'); rateBtn.type = 'button'; rateBtn.className = 'msq-bar-rate'; rateBtn.setAttribute('aria-label', 'Playback speed');\n  var closeBtn = document.createElement('button'); closeBtn.type = 'button'; closeBtn.className = 'msq-bar-close'; closeBtn.setAttribute('aria-label', 'Close the audio bar');\n  bar.appendChild(playBtn); bar.appendChild(chap); bar.appendChild(clock); bar.appendChild(rateBtn); bar.appendChild(closeBtn);\n  document.body.appendChild(bar);\n  function showRate(){ rateBtn.textContent = (rate === 1 ? '1' : String(rate)) + 'x'; }\n  showRate();\n  rateBtn.addEventListener('click', function(){\n    rate = RATES[(RATES.indexOf(rate) + 1) % RATES.length]; audio.playbackRate = rate; showRate();\n    try { localStorage.setItem('msq-audio-rate', String(rate)); } catch (e) {}\n    track('audio_rate', { rate: rate });\n  });\n  closeBtn.addEventListener('click', function(){\n    closed = true; if (!audio.paused) { audio.pause(); } paint(); track('audio_bar_close', {});\n  });\n  function mode(){\n    if (!audio.paused) { return 'pause'; }\n    if (ended) { return 'again'; }\n    if (!started) { return 'listen'; }\n    return (pausedAt === onScreen()) ? 'resume' : 'section';\n  }\n  playBtn.addEventListener('click', function(){\n    var m = mode();\n    if (m === 'pause') { audio.pause(); track('audio_pause', { source: 'bar' }); return; }\n    if (m === 'again') { ended = false; play(0, 'bar'); return; }\n    if (m === 'resume') { play(null, 'bar'); return; }\n    play(starts[onScreen()], 'bar');\n  });\n  function paint(){\n    var idx = current(), playing = !audio.paused, m = mode();\n    items.forEach(function(li, i){\n      var on = (i === idx) && playing, b = li.querySelector('.msq-toc-play'), a = li.querySelector('a');\n      li.classList.toggle('is-active', on); b.classList.toggle('is-playing', on);\n      b.textContent = on ? '\u2016' : '\u25b6\ufe0e';\n      b.setAttribute('aria-label', (on ? 'Pause: ' : 'Play from: ') + a.textContent);\n    });\n    hbtns.forEach(function(b, i){ if (b) { var on = (i === idx) && playing; b.classList.toggle('is-playing', on); b.setAttribute('aria-label', (on ? 'Pause this section: ' : 'Play this section: ') + names[i]); } });\n    playBtn.classList.toggle('is-playing', playing);\n    label.textContent = m === 'pause' ? 'Pause' : m === 'again' ? 'Play again' : m === 'resume' ? 'Resume' : m === 'section' ? 'Play this section' : 'Listen, ' + minutes + ' min';\n    playBtn.setAttribute('aria-label', label.textContent);\n    chap.textContent = started ? names[(playing || m === 'resume') ? idx : onScreen()] : '';\n    clock.textContent = started ? fmt(audio.currentTime) + ' \/ ' + fmt(audio.duration) : '';\n    bar.classList.toggle('msq-bar-pill', !started);\n    var show = !closed && (started || 0 > root.getBoundingClientRect().bottom);\n    bar.classList.toggle('is-hidden', !show);\n    document.body.classList.toggle('msq-has-bar', show);\n  }\n  root.addEventListener('click', function(e){\n    var b = e.target.closest ? e.target.closest('.msq-toc-play') : null; if (!b) { return; }\n    var li = b.parentNode, s = parseFloat(b.getAttribute('data-start')) || 0;\n    if (!audio.paused && current() === items.indexOf(li)) { audio.pause(); track('audio_pause', { source: 'index' }); return; }\n    play(s, 'index');\n  });\n  audio.addEventListener('play', function(){ ended = false; closed = false; if (!started) { started = true; track('audio_play', { minutes: Math.round((audio.duration || 0) \/ 60) }); } paint(); });\n  audio.addEventListener('pause', function(){ pausedAt = current(); paint(); });\n  audio.addEventListener('timeupdate', function(){\n    paint();\n    if (audio.duration > 0) {\n      var pct = Math.floor(audio.currentTime \/ audio.duration * 100);\n      [25, 50, 75].forEach(function(m){ if (pct >= m && !marks[m]) { marks[m] = true; track('audio_progress', { percent: m }); } });\n    }\n  });\n  audio.addEventListener('ended', function(){ ended = true; track('audio_complete', {}); paint(); });\n  var ticking = false;\n  function onScroll(){ if (ticking) { return; } ticking = true; setTimeout(function(){ ticking = false; paint(); }, 80); }\n  window.addEventListener('scroll', onScroll, { passive: true }); window.addEventListener('resize', onScroll);\n  paint();\n  }\n  if (document.readyState === 'loading') { document.addEventListener('DOMContentLoaded', init); } else { init(); }\n})();\n\n(function(){\n  function start(){\n    var root = document.querySelector('.msq-audio'), audio = root ? root.querySelector('audio') : null;\n    var map = (typeof MSQ_SENT !== 'undefined') ? MSQ_SENT : [];\n    if (!root || !audio || !map.length) { return; }\n    var scope = root.closest('main') || root.closest('article') || root.closest('.entry-content') || document.body;\n    var SKIP = '.msq-audio,.msq,.msq-tool,.msq-end,.msq-bar,script,style,noscript,figcaption,#rank-math-faq,.rank-math-block,nav,header,footer';\n    function norm(s){ return s.toLowerCase().replace(\/[^a-z0-9]+\/g, ''); }\n    var nodes = [], stream = '', walker = document.createTreeWalker(scope, NodeFilter.SHOW_TEXT, null), n;\n    while ((n = walker.nextNode())) {\n      var el = n.parentElement; if (!el || el.closest(SKIP)) { continue; }\n      var raw = n.nodeValue, keep = [], norms = '';\n      for (var i = 0; raw.length > i; i += 1) { var c = raw.charAt(i).toLowerCase(); if (\/[a-z0-9]\/.test(c)) { keep.push(i); norms += c; } }\n      if (!norms) { continue; }\n      nodes.push({ node: n, a: stream.length, b: stream.length + norms.length, keep: keep });\n      stream += norms;\n    }\n    var segs = [], cursor = 0, lastRow = null;\n    map.forEach(function(m, idx){\n      var kind = m[1], f = m[2], len = m[3];\n      if (kind === 't') {\n        var rows = scope.querySelectorAll('tr'), after = !lastRow;\n        for (var r = 0; rows.length > r; r += 1) {\n          var tr = rows[r];\n          if (!after) { if (tr === lastRow) { after = true; } continue; }\n          var cell = tr.querySelector('td,th');\n          if (cell && norm(cell.textContent).indexOf(f) === 0) { tr.setAttribute('data-i', idx); lastRow = tr; break; }\n        }\n        return;\n      }\n      var p = stream.indexOf(f, cursor); if (0 > p) { return; }\n      segs.push({ i: idx, a: p, b: Math.min(p + len, stream.length) }); cursor = p + len;\n    });\n    var si = 0;\n    nodes.forEach(function(nd){\n      var frag = document.createDocumentFragment(), raw = nd.node.nodeValue, rawPos = 0, any = false;\n      for (var k = si; segs.length > k; k += 1) {\n        var sg = segs[k]; if (sg.a >= nd.b) { break; } if (nd.a >= sg.b) { continue; }\n        var s = Math.max(sg.a, nd.a), e = Math.min(sg.b, nd.b);\n        var rs = nd.keep[s - nd.a], re2 = nd.keep[e - nd.a - 1] + 1;\n        if (rs > rawPos) { frag.appendChild(document.createTextNode(raw.slice(rawPos, rs))); }\n        var span = document.createElement('span'); span.className = 'msq-s'; span.setAttribute('data-i', sg.i); span.textContent = raw.slice(rs, re2);\n        frag.appendChild(span); rawPos = re2; any = true;\n        if (sg.b > nd.b) { break; }\n      }\n      while (segs.length > si && nd.b >= segs[si].b) { si += 1; }\n      if (!any) { return; }\n      if (raw.length > rawPos) { frag.appendChild(document.createTextNode(raw.slice(rawPos))); }\n      nd.node.parentNode.replaceChild(frag, nd.node);\n    });\n    var starts = map.map(function(m){ return m[0]; }), curIdx = -1, lastUser = 0, timer = null, autoUntil = 0, dragging = false;\n    function idxAt(t){ var lo = 0, hi = starts.length; while (hi > lo + 1) { var mid = (lo + hi) >> 1; if (t + 0.15 >= starts[mid]) { lo = mid; } else { hi = mid; } } return (t + 0.15 >= starts[0]) ? lo : -1; }\n    function setNow(i){\n      if (i === curIdx) { return; }\n      Array.prototype.forEach.call(scope.querySelectorAll('.msq-now'), function(el){ el.classList.remove('msq-now'); });\n      curIdx = i; if (0 > i) { return; }\n      var els = scope.querySelectorAll('[data-i=\"' + i + '\"]'); if (!els.length) { return; }\n      Array.prototype.forEach.call(els, function(el){ el.classList.add('msq-now'); });\n      var r = els[0].getBoundingClientRect(), now = Date.now();\n      if (!dragging && now > lastUser + 2500 && (80 > r.top || r.bottom > window.innerHeight - 140)) {\n        var reduce = window.matchMedia && window.matchMedia('(prefers-reduced-motion: reduce)').matches;\n        autoUntil = now + (reduce ? 400 : 1600);\n        els[0].scrollIntoView({ block: 'center', behavior: reduce ? 'auto' : 'smooth' });\n      }\n    }\n    function tick(){ if (!audio.paused) { setNow(idxAt(audio.currentTime)); } }\n    function userScrolled(){ lastUser = Date.now(); }\n    ['wheel', 'touchmove', 'keydown'].forEach(function(ev){ window.addEventListener(ev, userScrolled, { passive: true }); });\n    window.addEventListener('scroll', function(){ if (Date.now() > autoUntil) { userScrolled(); } }, { passive: true });\n    window.addEventListener('mousedown', function(e){ if (e.clientX >= document.documentElement.clientWidth) { dragging = true; userScrolled(); } }, { passive: true });\n    window.addEventListener('mouseup', function(){ if (dragging) { dragging = false; userScrolled(); } }, { passive: true });\n    audio.addEventListener('play', function(){ if (timer) { clearInterval(timer); } timer = setInterval(tick, 150); tick(); });\n    audio.addEventListener('pause', function(){ if (timer) { clearInterval(timer); timer = null; } });\n    scope.addEventListener('click', function(e){\n      if (e.target.closest('a, button, input, select, textarea, label, summary, .msq, .msq-tool, .msq-end, .msq-audio, .msq-bar')) { return; }\n      var sel = window.getSelection ? String(window.getSelection()) : '';\n      if (sel && sel.trim()) { return; }\n      var el = e.target.closest('[data-i]'); if (!el) { return; }\n      var i = parseInt(el.getAttribute('data-i'), 10); if (isNaN(i)) { return; }\n      if (!audio.paused && i === curIdx) { return; }\n      lastUser = Date.now();\n      audio.currentTime = starts[i];\n      var p = audio.play(); if (p && p.catch) { p.catch(function(){}); }\n      try { if (typeof gtag === 'function') { gtag('event', 'audio_chapter', { article: location.pathname, source: 'sentence', start: Math.round(starts[i]) }); } } catch (err) {}\n    });\n    audio.addEventListener('seeked', tick);\n    audio.addEventListener('ended', function(){ setNow(-1); });\n  }\n  if (document.readyState === 'loading') { document.addEventListener('DOMContentLoaded', start); } else { start(); }\n})();<\/script>\n<\/div>\n\n\n\n<p class=\"msq-hook wp-block-paragraph\">On this page: why pain from the pelvic organs cannot be located the way the forum maps claim, the five documented causes of two week wait cramps, the NHS list of one sided pain that needs a call today, and the 38 forum accounts in which 21 reported a positive and three a negative.<\/p>\n\n\n\n<div class=\"msq\" id=\"ms-quiz\" data-slug=\"implantation-cramp-location\" data-category=\"the two week wait\" data-list=\"1\">\n<style>.msq,.msq-hook,.msq-box,.msq-end,.msq-tool{--msq-accent:#1F4E79;--msq-accent-text:#FFFFFF;--msq-line:#CBD8E6;--msq-warn:#B4531A;--msq-muted:#4A5560;--msq-tint:#EEF3F8;--msq-base:#FFFFFF}\n.msq{margin:1.25em 0 1.75em}\n.msq-hook{border-left:3px solid var(--msq-accent);padding:6px 14px;color:var(--msq-muted);font-size:.97em}\n.msq-box{background:var(--msq-tint);border:1px solid var(--msq-line);border-radius:12px;padding:0}\n.msq-box>summary{cursor:pointer;list-style:none;padding:14px 18px;font-weight:700;color:var(--msq-accent)}\n.msq-box>summary::-webkit-details-marker{display:none}\n.msq-box>summary::before{content:\"+\";display:inline-block;width:1.1em;font-weight:800}\n.msq-box[open]>summary::before{content:\"\\00d7\"}\n.msq-body{padding:2px 18px 18px}\n.msq-intro{margin:0 0 12px;font-size:.95em;color:var(--msq-muted)}\n.msq-list{margin:0;padding:0;list-style:none}\n.msq-q{margin:0 0 18px;padding:0}\n.msq-question{font-weight:700;margin:0 0 8px}\n.msq-options{display:flex;flex-direction:column;gap:8px}\n.msq-opt{text-align:left;background:var(--msq-base);border:1px solid var(--msq-line);border-radius:8px;padding:10px 12px;font:inherit;font-size:.95em;color:inherit;cursor:pointer;line-height:1.35}\n.msq-opt:hover{border-color:var(--msq-accent)}\n.msq-opt[disabled]{cursor:default}\n.msq-opt.is-right{border-color:var(--msq-accent);background:var(--msq-line);font-weight:700}\n.msq-opt.is-wrong{border-color:var(--msq-warn);color:var(--msq-warn)}\n.msq-explain{margin:8px 0 0;font-size:.92em;padding:10px 12px;border-left:3px solid var(--msq-accent);background:var(--msq-base);border-radius:0 8px 8px 0}\n.msq-explain[hidden]{display:none}\n.msq-verdict{font-weight:700}\n.msq-result{margin-top:14px;padding:14px 16px;background:var(--msq-base);border:1px solid var(--msq-line);border-radius:10px}\n.msq-result[hidden]{display:none}\n.msq-result h3{margin:0 0 6px;font-size:1.1em}\n.msq-result p{margin:0 0 8px}\n.msq-jump{margin:0 0 8px;padding-left:1.2em}\n.msq-form{margin-top:10px;display:flex;flex-wrap:wrap;gap:8px;align-items:center}\n.msq-form input[type=email]{flex:1 1 220px;padding:10px 12px;border:1px solid var(--msq-muted);border-radius:8px;font:inherit;background:#fff}\n.msq-btn{background:var(--msq-accent);color:var(--msq-accent-text);border:0;border-radius:8px;padding:11px 18px;font:inherit;font-weight:700;cursor:pointer}\n.msq-btn:hover{filter:brightness(.92)}\n.msq-btn[disabled]{opacity:.7;cursor:default}\n.msq-no{font-size:.9em;color:var(--msq-muted);margin-left:4px}\n.msq-privacy{margin:6px 0 0;font-size:.82em;color:var(--msq-muted);flex-basis:100%}\n.msq-hp{position:absolute;left:-5000px;width:1px;height:1px;overflow:hidden}\n.msq-msg{margin:8px 0 0;font-size:.92em}\n.msq-end{margin:1.5em 0;padding:18px;border:1px solid var(--msq-accent);border-radius:12px;text-align:center;background:var(--msq-tint)}\n.msq-end p{margin:0 0 12px}\n.msq-end .msq-body{text-align:left;padding:16px 0 0}\n.msq-end .msq-start-test[hidden]{display:none}\n.msq-tool{margin:1.5em 0;padding:18px 20px;background:var(--msq-tint);border:1px solid var(--msq-line);border-radius:12px}\n.msq-tool h3{margin:0 0 6px;font-size:1.15em}\n.msq-tool p{margin:0 0 10px}\n.msq-tool .msq-note{font-size:.85em;color:var(--msq-muted);margin:10px 0 0}\n.msq-check label{display:flex;gap:10px;align-items:flex-start;padding:9px 0;border-bottom:1px solid var(--msq-line);cursor:pointer;line-height:1.4}\n.msq-check label:last-of-type{border-bottom:0}\n.msq-check input{margin-top:5px;flex:0 0 auto;width:18px;height:18px;accent-color:var(--msq-accent)}\n.msq-check-count{font-weight:700;margin:10px 0 0}\n.msq-verdict-box{margin:12px 0 0;padding:10px 14px;border-radius:8px;background:var(--msq-base);border-left:3px solid var(--msq-warn)}\n.msq-verdict-box[hidden]{display:none}\n.msq-calc{display:grid;grid-template-columns:1fr 1fr;gap:10px 16px}\n.msq-calc label{display:flex;flex-direction:column;gap:4px;font-size:.92em}\n.msq-calc input,.msq-calc select{padding:8px 10px;border:1px solid var(--msq-muted);border-radius:8px;font:inherit;background:#fff}\n.msq-calc-out{grid-column:1 \/ -1;margin-top:6px;padding:12px 14px;background:var(--msq-base);border-radius:8px;border:1px solid var(--msq-line)}\n.msq-calc-out strong{font-size:1.15em}\n.msq-choose label{display:block;padding:9px 12px;margin:0 0 8px;background:var(--msq-base);border:1px solid var(--msq-line);border-radius:8px;cursor:pointer}\n.msq-choose input{margin-right:8px;accent-color:var(--msq-accent)}\n.msq-choice-result{margin-top:10px;padding:12px 14px;background:var(--msq-base);border-left:3px solid var(--msq-accent);border-radius:0 8px 8px 0}\n.msq-choice-result[hidden]{display:none}\n@media (max-width:600px){.msq-calc{grid-template-columns:1fr}}\nh2.wp-block-heading[id]{scroll-margin-top:24px}<\/style>\n<noscript><style>.msq-explain{display:block !important}<\/style><\/noscript>\n<details class=\"msq-box\">\n<summary>Think you already know this? Five questions, one minute.<\/summary>\n<div class=\"msq-body\">\n<p class=\"msq-intro\">Every answer is on this page. Answer from what you know now; the page fills in the rest.<\/p>\n<ol class=\"msq-list\">\n<li class=\"msq-q\" data-q=\"1\" data-answer=\"b\" data-title=\"Does the side you feel cramps on tell you anything?\" data-section=\"#does-the-side-you-feel-cramps-on-tell-you-anything\">\n<p class=\"msq-question\">1. What relationship has been established between the side you feel cramps on and where an embryo has implanted?<\/p>\n<div class=\"msq-options\" role=\"group\" aria-label=\"Question 1 options\"><button type=\"button\" class=\"msq-opt\" data-opt=\"a\">Left means the left tube<\/button><button type=\"button\" class=\"msq-opt\" data-opt=\"b\">None has been established<\/button><button type=\"button\" class=\"msq-opt\" data-opt=\"c\">Right sided cramps mean twins<\/button><\/div>\n<p class=\"msq-explain\" hidden><span class=\"msq-verdict\"><\/span>A blastocyst is a fraction of a millimetre across, and no test separates a cramp caused by implantation from a cramp caused by anything else in the same few centimetres of pelvis. <a class=\"msq-section\" href=\"#does-the-side-you-feel-cramps-on-tell-you-anything\">Read the section<\/a><\/p>\n<\/li>\n<li class=\"msq-q\" data-q=\"2\" data-answer=\"b\" data-title=\"Why does the location feel so specific when it is not?\" data-section=\"#why-does-the-location-feel-so-specific-when-it-is-not\">\n<p class=\"msq-question\">2. How do reviews of its neurophysiology describe pain from the abdominal organs?<\/p>\n<div class=\"msq-options\" role=\"group\" aria-label=\"Question 2 options\"><button type=\"button\" class=\"msq-opt\" data-opt=\"a\">Sharp and precisely located<\/button><button type=\"button\" class=\"msq-opt\" data-opt=\"b\">Dull, aching and poorly localised, often felt near the midline<\/button><button type=\"button\" class=\"msq-opt\" data-opt=\"c\">Always confined to one side<\/button><\/div>\n<p class=\"msq-explain\" hidden><span class=\"msq-verdict\"><\/span>The organs are innervated from both sides and their signals converge with those from skin and muscle in the spinal cord, so the brain often places the pain somewhere other than where it started. <a class=\"msq-section\" href=\"#why-does-the-location-feel-so-specific-when-it-is-not\">Read the section<\/a><\/p>\n<\/li>\n<li class=\"msq-q\" data-q=\"3\" data-answer=\"a\" data-title=\"What is actually causing cramps in the two week wait?\" data-section=\"#what-is-actually-causing-cramps-in-the-two-week-wait\">\n<p class=\"msq-question\">3. What does the product information for progesterone pessaries list as common effects during luteal phase support?<\/p>\n<div class=\"msq-options\" role=\"group\" aria-label=\"Question 3 options\"><button type=\"button\" class=\"msq-opt\" data-opt=\"a\">Abdominal distension, abdominal pain and constipation<\/button><button type=\"button\" class=\"msq-opt\" data-opt=\"b\">Hair loss<\/button><button type=\"button\" class=\"msq-opt\" data-opt=\"c\">Nothing at all<\/button><\/div>\n<p class=\"msq-explain\" hidden><span class=\"msq-verdict\"><\/span>Common there means at least 1 in 100 people and fewer than 1 in 10, and the medication that makes the wait possible produces much of what people try to read during it. <a class=\"msq-section\" href=\"#what-is-actually-causing-cramps-in-the-two-week-wait\">Read the section<\/a><\/p>\n<\/li>\n<li class=\"msq-q\" data-q=\"4\" data-answer=\"b\" data-title=\"Which cramps are worth a phone call today?\" data-section=\"#which-cramps-are-worth-a-phone-call-today\">\n<p class=\"msq-question\">4. Which combination does NHS guidance treat as an emergency needing 999 or accident and emergency?<\/p>\n<div class=\"msq-options\" role=\"group\" aria-label=\"Question 4 options\"><button type=\"button\" class=\"msq-opt\" data-opt=\"a\">A mild, diffuse, low ache that comes and goes<\/button><button type=\"button\" class=\"msq-opt\" data-opt=\"b\">Sharp, sudden, intense abdominal pain with dizziness, fainting, nausea or looking very pale<\/button><button type=\"button\" class=\"msq-opt\" data-opt=\"c\">Bloating after a meal<\/button><\/div>\n<p class=\"msq-explain\" hidden><span class=\"msq-verdict\"><\/span>Per <a href=\"https:\/\/www.nhs.uk\/conditions\/ectopic-pregnancy\/\" target=\"_blank\" rel=\"noopener\">NHS guidance on ectopic pregnancy<\/a>, which also lists low one sided pain with bleeding or brown discharge, and pain in the tip of the shoulder, as reasons to contact a GP or NHS 111. <a class=\"msq-section\" href=\"#which-cramps-are-worth-a-phone-call-today\">Read the section<\/a><\/p>\n<\/li>\n<li class=\"msq-q\" data-q=\"5\" data-answer=\"a\" data-title=\"Why do the forum maps look so convincing?\" data-section=\"#why-do-the-forum-maps-look-so-convincing\">\n<p class=\"msq-question\">5. Of the 38 dated forum accounts of two week wait cramping read for this site, how many reported a negative result?<\/p>\n<div class=\"msq-options\" role=\"group\" aria-label=\"Question 5 options\"><button type=\"button\" class=\"msq-opt\" data-opt=\"a\">Three<\/button><button type=\"button\" class=\"msq-opt\" data-opt=\"b\">Nineteen<\/button><button type=\"button\" class=\"msq-opt\" data-opt=\"c\">Thirty<\/button><\/div>\n<p class=\"msq-explain\" hidden><span class=\"msq-verdict\"><\/span>Twenty one reported a positive result and fourteen gave no outcome at all, which makes the archive a record of what was memorable enough to type out, not of what happens in the two week wait. <a class=\"msq-section\" href=\"#why-do-the-forum-maps-look-so-convincing\">Read the section<\/a><\/p>\n<\/li>\n<\/ol>\n<div class=\"msq-result\" hidden><\/div>\n<\/div>\n<\/details>\n<script>(function(){\n  if (window.__msqInit) { return; }\n  window.__msqInit = true;\n  var root = document.getElementById('ms-quiz');\n  if (!root) { return; }\n  var meta = { slug: root.getAttribute('data-slug'), category: root.getAttribute('data-category'),\n               list: root.getAttribute('data-list') || '1' };\n  function qs(el, s){ return el.querySelector(s); }\n  function qsa(el, s){ return Array.prototype.slice.call(el.querySelectorAll(s)); }\n  function track(name, params){\n    try { if (typeof gtag === 'function') { var p = params || {}; p.article = meta.slug; gtag('event', name, p); } } catch (e) {}\n  }\n  function jumpList(missed){\n    if (!missed.length) { return ''; }\n    return '<ul class=\"msq-jump\">' + missed.map(function(q){\n      return '<li><a href=\"' + q.getAttribute('data-section') + '\">' + q.getAttribute('data-title') + '<\/a><\/li>';\n    }).join('') + '<\/ul>';\n  }\n  function emailForm(){\n    return '<div class=\"msq-sub\"><p><strong>Get the next one.<\/strong> We publish new articles on ' + meta.category\n      + ' most weeks and recheck this page on Sundays. Email me when a new article goes up or this page changes.<\/p>'\n      + '<form class=\"msq-form\" method=\"post\" action=\"\/mail\/form.php\" novalidate>'\n      + '<input type=\"hidden\" name=\"list\" value=\"' + meta.list + '\">'\n      + '<input type=\"hidden\" name=\"name\" value=\"\">'\n      + '<label class=\"msq-hp\" aria-hidden=\"true\">Leave this empty<input type=\"text\" name=\"website\" tabindex=\"-1\" autocomplete=\"off\"><\/label>'\n      + '<input type=\"email\" name=\"email\" placeholder=\"you@example.com\" required aria-label=\"Email address\" autocomplete=\"email\">'\n      + '<button type=\"submit\" class=\"msq-btn\">Email me the updates<\/button>'\n      + '<a href=\"#\" class=\"msq-no\">No thanks<\/a>'\n      + '<p class=\"msq-privacy\">We store your email and this page\\'s topic, nothing else. Unsubscribe any time.<\/p>'\n      + '<\/form><p class=\"msq-msg\" aria-live=\"polite\"><\/p><\/div>';\n  }\n  \/* The autoresponder always answers 200 with its own page. A \".msg.err\" box means the\n     address was rejected, \"You're subscribed\" means accepted, and a redirect only happens\n     after a successful subscribe. Same reading as the landing pages on the other sites. *\/\n  function sendForm(form){\n    return fetch(form.getAttribute('action'), { method: 'POST', body: new FormData(form), credentials: 'same-origin', redirect: 'manual' })\n      .then(function(res){\n        if (res.type === 'opaqueredirect') { return { status: 'ok' }; }\n        if (res.status === 404) { return { status: 'notlive' }; }\n        if (!res.ok) { throw new Error('HTTP ' + res.status); }\n        return res.text().then(function(t){\n          var doc = new DOMParser().parseFromString(t, 'text\/html');\n          var err = doc.querySelector('.msg.err');\n          if (err) {\n            var m = err.textContent.trim();\n            if (\/something went wrong\/i.test(m)) { throw new Error(m); }\n            return { status: 'rejected', message: m };\n          }\n          if (\/you.re subscribed\/i.test(doc.body.textContent)) { return { status: 'ok' }; }\n          return { status: 'unknown' };\n        });\n      });\n  }\n  function wireForm(sub){\n    var form = qs(sub, '.msq-form'), msg = qs(sub, '.msq-msg');\n    qs(form, '.msq-no').addEventListener('click', function(e){\n      e.preventDefault();\n      sub.innerHTML = '<p class=\"msq-msg\">No problem. The Sunday refresh keeps this page current either way.<\/p>';\n      track('quiz_email', { result: 'declined' });\n    });\n    form.addEventListener('submit', function(e){\n      e.preventDefault();\n      var input = qs(form, 'input[name=email]'), btn = qs(form, '.msq-btn');\n      var email = input.value.trim(); input.value = email;\n      if (!\/^[^\\s@]+@[^\\s@]+\\.[^\\s@]+$\/.test(email)) { msg.textContent = 'That email does not look right.'; return; }\n      btn.disabled = true; btn.textContent = 'Sending';\n      function reset(){ btn.disabled = false; btn.textContent = 'Email me the updates'; }\n      sendForm(form).then(function(r){\n        if (r.status === 'ok' || r.status === 'unknown') {\n          sub.innerHTML = '<p class=\"msq-msg\"><strong>Done.<\/strong> We will email you when the next article on ' + meta.category\n            + ' goes up and when this page changes. If a confirmation email arrives, click it.<\/p>';\n          track('quiz_email', { result: r.status });\n          if (r.status === 'ok') { track('generate_lead', { method: 'quiz' }); }\n        } else if (r.status === 'notlive') {\n          msg.textContent = 'Sign up is not switched on yet for this site. Nothing was stored.'; reset();\n          track('quiz_email', { result: 'notlive' });\n        } else {\n          msg.textContent = r.message || 'Please check the email address and try again.'; reset();\n          track('quiz_email', { result: 'rejected' });\n        }\n      }).catch(function(){\n        msg.textContent = 'Could not reach the sign up service just now. Nothing was stored.'; reset();\n        track('quiz_email', { result: 'error' });\n      });\n    });\n  }\n  function finish(container, mode, score, total, missed){\n    var result = qs(container, '.msq-result');\n    track('quiz_complete', { mode: mode, score: score, total: total });\n    var h;\n    if (mode === 'pre') {\n      h = '<h3>You knew ' + score + ' of ' + total + ' before reading.<\/h3>';\n      h += (score === total) ? '<p>All of them. Read on anyway; the sections below carry the detail behind each answer.<\/p>'\n                             : '<p>The rest is below. Jump straight to what you missed:<\/p>' + jumpList(missed);\n      try { sessionStorage.setItem('msq-pre-' + meta.slug, String(score)); } catch (e) {}\n    } else {\n      var pre = null;\n      try { pre = sessionStorage.getItem('msq-pre-' + meta.slug); } catch (e) {}\n      h = '<h3>You got ' + score + ' of ' + total + '.<\/h3>';\n      if (pre !== null) { h += '<p>Before reading you had ' + pre + ' of ' + total + '.<\/p>'; }\n      if (missed.length) { h += '<p>Worth a second look:<\/p>' + jumpList(missed); }\n      h += emailForm();\n    }\n    result.innerHTML = h; result.hidden = false;\n    if (mode !== 'pre') { wireForm(qs(result, '.msq-sub')); }\n    result.scrollIntoView({ behavior: 'smooth', block: 'nearest' });\n  }\n  function setup(container, mode){\n    var qEls = qsa(container, '.msq-q'), answered = 0, score = 0, missed = [];\n    qEls.forEach(function(q){\n      var answer = q.getAttribute('data-answer'), opts = qsa(q, '.msq-opt'), explain = qs(q, '.msq-explain');\n      q.removeAttribute('data-done'); explain.hidden = true; qs(explain, '.msq-verdict').textContent = '';\n      opts.forEach(function(b){ b.disabled = false; b.classList.remove('is-right', 'is-wrong'); });\n      opts.forEach(function(b){\n        b.addEventListener('click', function(){\n          if (q.getAttribute('data-done')) { return; }\n          q.setAttribute('data-done', '1');\n          var ok = b.getAttribute('data-opt') === answer;\n          opts.forEach(function(o){ o.disabled = true; if (o.getAttribute('data-opt') === answer) { o.classList.add('is-right'); } });\n          if (ok) { score += 1; } else { b.classList.add('is-wrong'); missed.push(q); }\n          qs(explain, '.msq-verdict').textContent = ok ? 'Right. ' : 'Not quite. ';\n          explain.hidden = false;\n          answered += 1;\n          track('quiz_answer', { mode: mode, question: q.getAttribute('data-q'), correct: ok ? 1 : 0 });\n          if (answered === qEls.length) { finish(container, mode, score, qEls.length, missed); }\n        });\n      });\n    });\n  }\n  var box = qs(root, '.msq-box');\n  setup(root, 'pre');\n  if (box) { box.addEventListener('toggle', function(){ if (box.open) { track('quiz_open', { mode: 'pre' }); } }); }\n  \/* The end block sits far below this script, so it does not exist yet while this runs\n     during parsing. A delegated listener finds it at click time. *\/\n  document.addEventListener('click', function(e){\n    var startBtn = (e.target && e.target.closest) ? e.target.closest('.msq-start-test') : null;\n    if (!startBtn) { return; }\n    var end = startBtn.closest('.msq-end');\n    if (!end) { return; }\n    var mount = qs(end, '.msq-mount');\n    var clone = qs(root, '.msq-body').cloneNode(true);\n    var intro = qs(clone, '.msq-intro');\n    if (intro) { intro.textContent = 'The same five questions, now that you have read the page.'; }\n    var res = qs(clone, '.msq-result'); if (res) { res.hidden = true; res.innerHTML = ''; }\n    mount.innerHTML = ''; mount.appendChild(clone);\n    setup(mount, 'test');\n    startBtn.hidden = true;\n    track('quiz_open', { mode: 'test' });\n    mount.scrollIntoView({ behavior: 'smooth', block: 'start' });\n    var first = qs(mount, '.msq-opt'); if (first) { first.focus({ preventScroll: true }); }\n  });\n  \/* Shared tool behaviour: checklists remember their ticks on this device, and a chooser\n     shows the result for the option picked. Calculators carry their own small script. *\/\n  function initTools(){\n    qsa(document, '.msq-check').forEach(function(box){\n      var key = 'msq-check-' + meta.slug + '-' + (box.getAttribute('data-id') || 'x');\n      var boxes = qsa(box, 'input[type=checkbox]'), count = qs(box, '.msq-check-count');\n      var yes = qs(box, '.msq-verdict-yes'), no = qs(box, '.msq-verdict-no');\n      var saved = {};\n      try { saved = JSON.parse(localStorage.getItem(key) || '{}'); } catch (e) {}\n      boxes.forEach(function(cb, i){ if (saved[i]) { cb.checked = true; } });\n      function refresh(){\n        var n = boxes.filter(function(cb){ return cb.checked; }).length, state = {};\n        boxes.forEach(function(cb, i){ if (cb.checked) { state[i] = 1; } });\n        try { localStorage.setItem(key, JSON.stringify(state)); } catch (e) {}\n        if (count) { count.textContent = n + ' of ' + boxes.length + (box.getAttribute('data-verb') || ' done'); }\n        if (yes && no) { yes.hidden = n === 0; no.hidden = n !== 0; }\n      }\n      boxes.forEach(function(cb){ cb.addEventListener('change', function(){ refresh(); track('tool_check', { tool: box.getAttribute('data-id') }); }); });\n      refresh();\n    });\n    qsa(document, '.msq-choose').forEach(function(box){\n      var results = qsa(box, '.msq-choice-result');\n      qsa(box, 'input[type=radio]').forEach(function(r){\n        r.addEventListener('change', function(){\n          results.forEach(function(el){ el.hidden = el.getAttribute('data-for') !== r.value; });\n          track('tool_choose', { tool: box.getAttribute('data-id'), choice: r.value });\n        });\n      });\n    });\n  }\n  \/\/ read progress: how far down the article the reader has scrolled, fired once per quarter\n  (function(){\n    var art = root.closest('article') || root.parentNode, fired = {};\n    function check(){\n      var top = art.getBoundingClientRect().top + window.pageYOffset, h = art.offsetHeight || 1;\n      var seen = (window.pageYOffset + window.innerHeight - top) \/ h * 100;\n      [25, 50, 75, 100].forEach(function(m){ if (seen >= m && !fired[m]) { fired[m] = true; track('read_progress', { percent: m }); } });\n    }\n    window.addEventListener('scroll', check, { passive: true }); window.addEventListener('load', check);\n  })();\n  if (document.readyState === 'loading') { document.addEventListener('DOMContentLoaded', initTools); } else { initTools(); }\n})();<\/script>\n<\/div>\n\n\n\n<p class=\"wp-block-paragraph\">If you are lying still at two in the morning working out whether the ache is more on the left than it was an hour ago, you are doing something reasonable and unproductive. The map you are trying to build does not exist. This page explains why, what is far more likely to be causing the cramps, and which pain patterns are worth a phone call.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Nothing here is a reading of your symptoms, because a website cannot do that honestly. Your clinic knows your protocol, your scan, your medication and your history. This site knows none of them.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"does-the-side-you-feel-cramps-on-tell-you-anything\">Does the side you feel cramps on tell you anything?<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">No. There is no established relationship between which side of your lower abdomen aches and where, or whether, an embryo has implanted. Forums are full of people counting twinges by side. Clinics are not, and the gap between those two facts is the whole subject of this page.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Part of the reason is anatomical. A blastocyst is a fraction of a millimetre across, and the endometrium it settles into is a few millimetres thick. Nothing at that scale has been shown to produce a sensation you could locate, and there is no test that separates a cramp caused by implantation from a cramp caused by anything else happening in the same few centimetres of pelvis.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">The other reason is that pain from internal organs does not work the way people assume it does.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1200\" height=\"627\" src=\"https:\/\/ivfprep.guide\/articles\/wp-content\/uploads\/2026\/09\/implantation-cramp-location-2.jpg\" alt=\"Hand holding a mug on a blanket beside a book while waiting out cramps after embryo transfer\" class=\"wp-image-74\" srcset=\"https:\/\/ivfprep.guide\/articles\/wp-content\/uploads\/2026\/09\/implantation-cramp-location-2.jpg 1200w, https:\/\/ivfprep.guide\/articles\/wp-content\/uploads\/2026\/09\/implantation-cramp-location-2-300x157.jpg 300w, https:\/\/ivfprep.guide\/articles\/wp-content\/uploads\/2026\/09\/implantation-cramp-location-2-1024x535.jpg 1024w, https:\/\/ivfprep.guide\/articles\/wp-content\/uploads\/2026\/09\/implantation-cramp-location-2-768x401.jpg 768w\" sizes=\"auto, (max-width: 1200px) 100vw, 1200px\" \/><figcaption class=\"wp-block-image__caption\">Cramping is common in this fortnight, and common in cycles with every outcome.<\/figcaption><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"why-does-the-location-feel-so-specific-when-it-is-not\">Why does the location feel so specific when it is not?<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Pain from the organs inside your abdomen is called visceral pain, and reviews of its neurophysiology describe it as dull, aching and poorly localised. That is the defining feature, not a description of unusual cases. The receptors are sparse compared with skin, and the signals converge in the spinal cord with signals arriving from skin and muscle in the same segments, which is why the brain often places the pain somewhere other than where it started.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">There is a second point that matters directly here. Abdominal organs are innervated bilaterally, from both sides, which is why visceral pain is typically felt near the midline even when the organ itself is not sitting in the midline. So a central low ache tells you almost nothing about which part of anything is involved, and a sensation that feels convincingly one sided may be referred there rather than arising there.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">This is why the confident maps on forums fall apart when you push on them. They describe a precision the nervous system does not offer. The same borrowed precision turns up in the phrase lightning crotch, which forums now apply to sharp two week wait twinges even though it is <a href=\"https:\/\/ivfprep.guide\/articles\/lightning-crotch-implantation\/\">a third trimester term for nerve pain, not an implantation sign<\/a>.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"what-is-actually-causing-cramps-in-the-two-week-wait\">What is actually causing cramps in the two week wait?<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Usually something with no bearing on the outcome. The list below is not exhaustive and it is not a diagnosis of your own case. Every item on it is documented, and together they account for much of what people spend the fortnight interpreting.<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table><thead><tr><th>Possible cause<\/th><th>What the source actually says<\/th><\/tr><\/thead><tbody><tr><td>Progesterone luteal support<\/td><td>The summary of product characteristics for progesterone pessaries lists abdominal distension, abdominal pain and constipation as common effects when the pessaries are used for luteal phase support in assisted reproduction. Common there means at least 1 in 100 people and fewer than 1 in 10.<\/td><\/tr><tr><td>The transfer procedure itself<\/td><td>NHS trust patient information describes a full bladder as necessary for the ultrasound view during transfer, alongside a speculum and a soft catheter. Discomfort afterwards is ordinary.<\/td><\/tr><tr><td>Ovaries after stimulation, in fresh cycles<\/td><td>NHS trust leaflets describe mild ovarian hyperstimulation syndrome as abdominal swelling, abdominal discomfort and feeling sick, caused by enlarged ovaries and retained fluid. This applies to fresh cycles rather than to frozen transfers.<\/td><\/tr><tr><td>Ordinary bowel changes<\/td><td>Constipation appears in the same product information as a common effect, and a constipated gut produces cramping that is easy to attribute elsewhere when you are watching closely.<\/td><\/tr><tr><td>Implantation<\/td><td>Possible, and undetectable. No method exists for telling this apart from the four rows above while it is happening.<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">Progesterone deserves its own note, because it is the most common explanation for two week wait sensations and the one people are least likely to credit. We have written separately about <a href=\"https:\/\/ivfprep.guide\/articles\/discharge-during-implantation\/\">what progesterone support does to discharge<\/a>, and the same logic applies to cramping. The medication that makes the wait possible also produces much of what you are trying to read during it. Back ache gets the same treatment, and the labels say less about it than people expect, as the page checking <a href=\"https:\/\/ivfprep.guide\/articles\/lower-back-ache-implantation\/\">lower back ache implantation claims against the evidence<\/a> sets out.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"when-did-implantation-actually-happen-and-would-there-be-any\">When did implantation actually happen, and would there be anything to feel?<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">In IVF the timeline is not the one general pregnancy sites describe. Fertilisation happened in the laboratory, days before your transfer, so the familiar articles about feeling conception are answering a question that does not apply to you. What remains is implantation, which begins after transfer and unfolds over a period rather than at a moment.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">The window varies with what was transferred and when, and your clinic can tell you where your own cycle sits. What no clinic can tell you is what implantation felt like, because nobody has demonstrated that it feels like anything. The absence of a documented sensation is not proof that nobody ever feels one. It does mean that if you feel nothing at all you have learned nothing at all, which is the <a href=\"https:\/\/ivfprep.guide\/articles\/successful-implantation-without-bleeding\/\">quietest and most useful fact on this site<\/a>. Duration has the same problem as location: the one to three days quoted for <a href=\"https:\/\/ivfprep.guide\/articles\/how-long-do-implantation-cramps-last\/\">how long implantation cramps last<\/a> traces back to no study at all.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1200\" height=\"627\" src=\"https:\/\/ivfprep.guide\/articles\/wp-content\/uploads\/2026\/09\/implantation-cramp-location-3.jpg\" alt=\"Quiet bedroom in morning light, where two week wait cramps are usually noticed most at night\" class=\"wp-image-75\" srcset=\"https:\/\/ivfprep.guide\/articles\/wp-content\/uploads\/2026\/09\/implantation-cramp-location-3.jpg 1200w, https:\/\/ivfprep.guide\/articles\/wp-content\/uploads\/2026\/09\/implantation-cramp-location-3-300x157.jpg 300w, https:\/\/ivfprep.guide\/articles\/wp-content\/uploads\/2026\/09\/implantation-cramp-location-3-1024x535.jpg 1024w, https:\/\/ivfprep.guide\/articles\/wp-content\/uploads\/2026\/09\/implantation-cramp-location-3-768x401.jpg 768w\" sizes=\"auto, (max-width: 1200px) 100vw, 1200px\" \/><figcaption class=\"wp-block-image__caption\">Sensations feel loudest at night, when nothing else is competing for attention.<\/figcaption><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"which-cramps-are-worth-a-phone-call-today\">Which cramps are worth a phone call today?<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">This is the question that has an answer, and it is a threshold question rather than an interpretation. None of the following tells you the result. They are about your safety while you wait.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><a href=\"https:\/\/www.nhs.uk\/conditions\/ectopic-pregnancy\/\" target=\"_blank\" rel=\"noopener\">NHS guidance on ectopic pregnancy<\/a> lists tummy pain low down on one side among the symptoms that develop, alongside vaginal bleeding or a brown watery discharge, pain in the tip of the shoulder, and discomfort when going to the toilet. It advises contacting a GP or NHS 111 with a combination of those symptoms in someone who might be pregnant. A sharp, sudden and intense abdominal pain together with dizziness, fainting, nausea or looking very pale is treated as an emergency needing 999 or accident and emergency, because it can mean a fallopian tube has ruptured.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Whether ectopic pregnancy is more common after IVF than after natural conception is less settled than it is usually stated. In 553,577 ART pregnancies in the United States, <a href=\"https:\/\/pmc.ncbi.nlm.nih.gov\/articles\/PMC4315158\/\" target=\"_blank\" rel=\"noopener\">Perkins and colleagues<\/a> found an ectopic rate of 1.7 percent and called it similar to the general population figure of around 2 percent. Other series are commonly quoted at up to around 5 percent, and higher in groups with tubal factor infertility. That is not a likelihood about your own cycle. It is the reason one sided pain gets escalated rather than interpreted.<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table><thead><tr><th>Pattern<\/th><th>How guidance treats it<\/th><\/tr><\/thead><tbody><tr><td>Mild, diffuse, low, comes and goes<\/td><td>Very common in the two week wait, and not a route to any conclusion about the outcome.<\/td><\/tr><tr><td>Low one sided tummy pain, particularly with bleeding or brown watery discharge<\/td><td>On the NHS list of possible ectopic pregnancy symptoms. Contact a GP or NHS 111.<\/td><\/tr><tr><td>Pain in the tip of the shoulder<\/td><td>On the same NHS list, and worth reporting even on its own.<\/td><\/tr><tr><td>Sharp, sudden, intense pain with dizziness, fainting or looking very pale<\/td><td>Treated as an emergency. 999 or accident and emergency, not a call to the clinic in the morning.<\/td><\/tr><tr><td>Increasing abdominal swelling, breathlessness, passing very little urine, extreme thirst<\/td><td>Features NHS trust leaflets describe in more severe ovarian hyperstimulation syndrome. Contact the clinic without waiting.<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">Outside the United Kingdom the phone numbers differ but the advice keeps the same shape. No clinic will think you overreacted.<\/p>\n\n\n\n<div class=\"msq-tool msq-check\" data-id=\"clinic-call-notes\" data-verb=\" noted\">\n<h3>What to have ready before you ring the clinic<\/h3>\n<p>The threshold question has an answer and your clinic gives it. This is what they will ask, so that the call is short and useful. It is not a way of deciding whether to call: if you are unsure, call.<\/p>\n<label><input type=\"checkbox\">When the pain started and whether it is getting worse<\/label>\n<label><input type=\"checkbox\">Whether it is central or one sided, and whether the side has changed<\/label>\n<label><input type=\"checkbox\">Any bleeding or brown watery discharge, and when<\/label>\n<label><input type=\"checkbox\">Any pain in the tip of the shoulder<\/label>\n<label><input type=\"checkbox\">Any dizziness, fainting, nausea or looking very pale<\/label>\n<label><input type=\"checkbox\">Any swelling, breathlessness, passing very little urine or extreme thirst<\/label>\n<label><input type=\"checkbox\">Which medications you have taken today and at what times<\/label>\n<p class=\"msq-check-count\"><\/p>\n<p class=\"msq-note\">A list of what to tell them, not a reading of what the pain means. Ticks are saved on this device only.<\/p>\n<\/div>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"why-do-the-forum-maps-look-so-convincing\">Why do the forum maps look so convincing?<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Because of who posts. Someone who felt a distinct twinge on the left and later had a positive result writes it up in detail. So does the person whose twinge came to nothing, but that second post gets read as bad luck rather than as evidence against the map. The people who felt nothing worth mentioning and simply went to work post nothing at all, and there are a great many of them. We put a number on that skew by reading <a href=\"https:\/\/ivfprep.guide\/articles\/implantation-cramping-reddit\/\">38 dated forum accounts of cramping in the two week wait<\/a>, of which 21 reported a positive result and only three a negative one.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">So the archive you are reading at two in the morning is not a record of what happens in the two week wait. It is a record of what was memorable enough to type out. Every symptom map built from it inherits that bias, and none of them carry a denominator. We go through the same problem in more detail in <a href=\"https:\/\/ivfprep.guide\/articles\/signs-of-implantation\/\">our piece on what the signs of implantation actually show<\/a>, and the same asymmetry is why <a href=\"https:\/\/ivfprep.guide\/articles\/implantation-bleeding-clots\/\">bleeding cannot settle the question either<\/a>.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">None of this means your cramps are imaginary. They are real sensations with real causes. It means the causes are mostly knowable and the outcome is not, and telling those two things apart is the only way to get through a fortnight like this with your judgement intact.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1600\" height=\"900\" src=\"https:\/\/ivfprep.guide\/articles\/wp-content\/uploads\/2026\/09\/implantation-cramp-location-chart.png\" alt=\"Bar chart of 38 forum accounts of implantation cramp location and timing, 21 positive, three negative, 14 with no outcome\" class=\"wp-image-261\" srcset=\"https:\/\/ivfprep.guide\/articles\/wp-content\/uploads\/2026\/09\/implantation-cramp-location-chart.png 1600w, https:\/\/ivfprep.guide\/articles\/wp-content\/uploads\/2026\/09\/implantation-cramp-location-chart-300x169.png 300w, https:\/\/ivfprep.guide\/articles\/wp-content\/uploads\/2026\/09\/implantation-cramp-location-chart-1024x576.png 1024w, https:\/\/ivfprep.guide\/articles\/wp-content\/uploads\/2026\/09\/implantation-cramp-location-chart-768x432.png 768w, https:\/\/ivfprep.guide\/articles\/wp-content\/uploads\/2026\/09\/implantation-cramp-location-chart-1536x864.png 1536w\" sizes=\"auto, (max-width: 1600px) 100vw, 1600px\" \/><figcaption class=\"wp-block-image__caption\">A record of what was memorable enough to type out, not of what happens in the two week wait, and none of the maps built from it carries a denominator. Source: the dated accounts read for this site&#8217;s page on implantation cramping threads.<\/figcaption><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"what-can-you-do-with-the-waiting-instead\">What can you do with the waiting instead?<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Very little, honestly, and that is worth saying plainly rather than filling the space with advice. The result is already determined by the time most people start counting twinges. Testing early does not change it, and it brings its own problem after IVF, which we cover in <a href=\"https:\/\/ivfprep.guide\/articles\/home-pregnancy-test-after-ivf\/\">the article on trigger shots and home tests<\/a>.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">What you can do is write down anything you would want to tell your clinic, keep the number where you can find it at three in the morning, and stop grading the ache. Not because grading it is silly, but because there is no scale to grade it against.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"frequently-asked-questions\">Frequently asked questions<\/h2>\n\n\n<div id=\"rank-math-faq\" class=\"rank-math-block\">\n<div class=\"rank-math-list \">\n<div id=\"faq-q-1\" class=\"rank-math-list-item\">\n<h3 class=\"rank-math-question \">Does left side cramping after embryo transfer mean anything different from right side?<\/h3>\n<div class=\"rank-math-answer \">\n\n<p>No established difference exists. Pain from abdominal organs is described in the neurophysiology literature as poorly localised, and those organs are supplied by nerves from both sides, so sensation is often felt near the midline or referred away from its source. Which side you notice is not information about where an embryo is.<\/p>\n\n<\/div>\n<\/div>\n<div id=\"faq-q-2\" class=\"rank-math-list-item\">\n<h3 class=\"rank-math-question \">Can you feel implantation happening?<\/h3>\n<div class=\"rank-math-answer \">\n\n<p>Nobody has demonstrated that implantation produces a distinguishable sensation. A blastocyst is a fraction of a millimetre across and the process unfolds over days rather than at a moment. Many people feel cramping in the two week wait, and there is no way to attribute any of it to implantation while it is happening.<\/p>\n\n<\/div>\n<\/div>\n<div id=\"faq-q-3\" class=\"rank-math-list-item\">\n<h3 class=\"rank-math-question \">Are cramps a good sign or a bad sign after a transfer?<\/h3>\n<div class=\"rank-math-answer \">\n\n<p>Neither, and any source telling you otherwise is guessing. Cramping is reported in cycles with every outcome, and its most commonly documented causes in this fortnight are progesterone support, the transfer procedure and ordinary bowel changes. Its presence or absence does not move things in either direction.<\/p>\n\n<\/div>\n<\/div>\n<div id=\"faq-q-4\" class=\"rank-math-list-item\">\n<h3 class=\"rank-math-question \">Could my progesterone be causing the cramping?<\/h3>\n<div class=\"rank-math-answer \">\n\n<p>It is a documented possibility. The summary of product characteristics for progesterone pessaries lists abdominal pain, abdominal distension and constipation as common effects when they are used for luteal phase support in assisted reproduction. Only your clinic can say what applies to you, and nothing here is guidance to change anything about your medication.<\/p>\n\n<\/div>\n<\/div>\n<div id=\"faq-q-5\" class=\"rank-math-list-item\">\n<h3 class=\"rank-math-question \">When should one sided pain go to a doctor rather than a forum?<\/h3>\n<div class=\"rank-math-answer \">\n\n<p>NHS guidance lists tummy pain low down on one side among possible symptoms of ectopic pregnancy, particularly alongside bleeding, brown watery discharge or pain in the tip of the shoulder, and advises contacting a GP or NHS 111. Sharp, sudden, intense pain with dizziness or fainting is treated as a 999 emergency.<\/p>\n\n<\/div>\n<\/div>\n<div id=\"faq-q-6\" class=\"rank-math-list-item\">\n<h3 class=\"rank-math-question \">If I have no cramps at all, has the transfer failed?<\/h3>\n<div class=\"rank-math-answer \">\n\n<p>No conclusion follows from that either. People with no symptoms whatsoever are the group least likely to post about the experience, so forums systematically underrepresent them. Absence of sensation is not evidence of absence of implantation, and it is not evidence for it.<\/p>\n\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n\n\n<div class=\"msq-end\" id=\"ms-quiz-end\">\n<p><strong>Finished the page?<\/strong> The same five questions from the top, to see what stuck.<\/p>\n<button type=\"button\" class=\"msq-btn msq-start-test\">Test Your Understanding of This Article<\/button>\n<div class=\"msq-mount\"><\/div>\n<\/div>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<p class=\"wp-block-paragraph\"><em>This article is general information, not medical advice, and is not a substitute for care from a qualified healthcare professional. Speak to your doctor about your own situation.<\/em><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Forums map cramps by side and by centre. Pelvic pain does not work that way. Here is what is actually causing the ache, and the few patterns worth ringing the clinic about.<\/p>\n","protected":false},"author":1,"featured_media":73,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":"","rank_math_title":"Implantation Cramps Location: Why the Side Tells You Nothing","rank_math_description":"Cramp location does not show where or whether an embryo implanted. Why pelvic pain is poorly localised, what is really causing it, and which pain needs a call.","rank_math_focus_keyword":"implantation cramps location","rank_math_canonical_url":"","rank_math_breadcrumb_title":"","rank_math_facebook_title":"","rank_math_facebook_description":"","rank_math_facebook_image":"","rank_math_twitter_title":"","rank_math_twitter_description":"","rank_math_twitter_image":"","rank_math_pillar_content":"","rank_math_robots":[],"rank_math_advanced_robots":[]},"categories":[2],"tags":[],"class_list":["post-76","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-two-week-wait"],"_links":{"self":[{"href":"https:\/\/ivfprep.guide\/articles\/wp-json\/wp\/v2\/posts\/76","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/ivfprep.guide\/articles\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/ivfprep.guide\/articles\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/ivfprep.guide\/articles\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/ivfprep.guide\/articles\/wp-json\/wp\/v2\/comments?post=76"}],"version-history":[{"count":13,"href":"https:\/\/ivfprep.guide\/articles\/wp-json\/wp\/v2\/posts\/76\/revisions"}],"predecessor-version":[{"id":651,"href":"https:\/\/ivfprep.guide\/articles\/wp-json\/wp\/v2\/posts\/76\/revisions\/651"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/ivfprep.guide\/articles\/wp-json\/wp\/v2\/media\/73"}],"wp:attachment":[{"href":"https:\/\/ivfprep.guide\/articles\/wp-json\/wp\/v2\/media?parent=76"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/ivfprep.guide\/articles\/wp-json\/wp\/v2\/categories?post=76"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/ivfprep.guide\/articles\/wp-json\/wp\/v2\/tags?post=76"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}