{"id":477,"date":"2026-10-08T08:25:48","date_gmt":"2026-10-08T08:25:48","guid":{"rendered":"https:\/\/ivfprep.guide\/articles\/?p=477"},"modified":"2026-10-08T08:30:24","modified_gmt":"2026-10-08T08:30:24","slug":"basal-temperature-implantation","status":"publish","type":"post","link":"https:\/\/ivfprep.guide\/articles\/basal-temperature-implantation\/","title":{"rendered":"Basal Temperature Implantation Dip: Why IVF Charts Mislead"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\"><strong>A basal temperature implantation dip cannot tell anyone whether a transfer has worked. In the largest chart analysis, the one day dip turned up on only 1.6 per cent of more than 1.5 million charts, pregnant and not pregnant alike. After IVF, prescribed progesterone holds the temperature up, so the chart largely follows the medication.<\/strong><\/p>\n\n\n\n<div class=\"msq-audio\" data-article=\"basal-temperature-implantation\" data-minutes=\"10\">\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\/basal-temperature-implantation\/#audio\",\"name\":\"Basal Temperature Implantation Dip: Why IVF Charts Mislead, read aloud\",\"description\":\"Synthetic voice reading of the article, recorded 8 October 2026.\",\"contentUrl\":\"https:\/\/ivfprep.guide\/articles\/wp-content\/uploads\/2026\/10\/basal-temperature-implantation-audio-202610081400.mp3\",\"encodingFormat\":\"audio\/mpeg\",\"duration\":\"PT10M7S\",\"uploadDate\":\"2026-10-08\",\"inLanguage\":\"en-GB\",\"isAccessibleForFree\":true,\"mainEntityOfPage\":\"https:\/\/ivfprep.guide\/articles\/basal-temperature-implantation\/\",\"hasPart\":[{\"@type\":\"Clip\",\"name\":\"Basal Temperature Implantation Dip: Why IVF Charts Mislead\",\"startOffset\":0,\"endOffset\":40},{\"@type\":\"Clip\",\"name\":\"What is the implantation dip on a basal temperature chart?\",\"startOffset\":40,\"endOffset\":114,\"url\":\"https:\/\/ivfprep.guide\/articles\/basal-temperature-implantation\/#what-is-the-implantation-dip-on-a-basal-temperature-chart\"},{\"@type\":\"Clip\",\"name\":\"What does the largest chart analysis actually show?\",\"startOffset\":114,\"endOffset\":220,\"url\":\"https:\/\/ivfprep.guide\/articles\/basal-temperature-implantation\/#what-does-the-largest-chart-analysis-actually-show\"},{\"@type\":\"Clip\",\"name\":\"Why does progesterone after a transfer change the chart?\",\"startOffset\":220,\"endOffset\":376,\"url\":\"https:\/\/ivfprep.guide\/articles\/basal-temperature-implantation\/#why-does-progesterone-after-a-transfer-change-the-chart\"},{\"@type\":\"Clip\",\"name\":\"How reliable was a temperature chart even before IVF?\",\"startOffset\":376,\"endOffset\":431,\"url\":\"https:\/\/ivfprep.guide\/articles\/basal-temperature-implantation\/#how-reliable-was-a-temperature-chart-even-before-ivf\"},{\"@type\":\"Clip\",\"name\":\"What do people who took their temperature after transfer report?\",\"startOffset\":431,\"endOffset\":523,\"url\":\"https:\/\/ivfprep.guide\/articles\/basal-temperature-implantation\/#what-do-people-who-took-their-temperature-after-transfer-rep\"},{\"@type\":\"Clip\",\"name\":\"When is a temperature reading a reason to call the clinic?\",\"startOffset\":523,\"endOffset\":607,\"url\":\"https:\/\/ivfprep.guide\/articles\/basal-temperature-implantation\/#when-is-a-temperature-reading-a-reason-to-call-the-clinic\"}],\"contentSize\":\"4.2 MB\"}<\/script>\n<p class=\"msq-audio-lead\"><strong>Listen to this article<\/strong>, about 10 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\/10\/basal-temperature-implantation-audio-202610081400.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: Basal Temperature Implantation Dip: Why IVF Charts Mislead\">&#x25B6;&#xFE0E;<\/button><span class=\"msq-toc-time\">0:00<\/span><a href=\"#top\">Basal Temperature Implantation Dip: Why IVF Charts Mislead<\/a><\/li>\n<li data-start=\"39.82\"><button type=\"button\" class=\"msq-toc-play\" data-start=\"39.82\" aria-label=\"Play from: What is the implantation dip on a basal temperature chart?\">&#x25B6;&#xFE0E;<\/button><span class=\"msq-toc-time\">0:40<\/span><a href=\"#what-is-the-implantation-dip-on-a-basal-temperature-chart\">What is the implantation dip on a basal temperature chart?<\/a><\/li>\n<li data-start=\"114.08\"><button type=\"button\" class=\"msq-toc-play\" data-start=\"114.08\" aria-label=\"Play from: What does the largest chart analysis actually show?\">&#x25B6;&#xFE0E;<\/button><span class=\"msq-toc-time\">1:54<\/span><a href=\"#what-does-the-largest-chart-analysis-actually-show\">What does the largest chart analysis actually show?<\/a><\/li>\n<li data-start=\"219.98\"><button type=\"button\" class=\"msq-toc-play\" data-start=\"219.98\" aria-label=\"Play from: Why does progesterone after a transfer change the chart?\">&#x25B6;&#xFE0E;<\/button><span class=\"msq-toc-time\">3:40<\/span><a href=\"#why-does-progesterone-after-a-transfer-change-the-chart\">Why does progesterone after a transfer change the chart?<\/a><\/li>\n<li data-start=\"376.0\"><button type=\"button\" class=\"msq-toc-play\" data-start=\"376.0\" aria-label=\"Play from: How reliable was a temperature chart even before IVF?\">&#x25B6;&#xFE0E;<\/button><span class=\"msq-toc-time\">6:16<\/span><a href=\"#how-reliable-was-a-temperature-chart-even-before-ivf\">How reliable was a temperature chart even before IVF?<\/a><\/li>\n<li data-start=\"431.18\"><button type=\"button\" class=\"msq-toc-play\" data-start=\"431.18\" aria-label=\"Play from: What do people who took their temperature after transfer report?\">&#x25B6;&#xFE0E;<\/button><span class=\"msq-toc-time\">7:11<\/span><a href=\"#what-do-people-who-took-their-temperature-after-transfer-rep\">What do people who took their temperature after transfer report?<\/a><\/li>\n<li data-start=\"523.16\"><button type=\"button\" class=\"msq-toc-play\" data-start=\"523.16\" aria-label=\"Play from: When is a temperature reading a reason to call the clinic?\">&#x25B6;&#xFE0E;<\/button><span class=\"msq-toc-time\">8:43<\/span><a href=\"#when-is-a-temperature-reading-a-reason-to-call-the-clinic\">When is a temperature reading a reason to call the clinic?<\/a><\/li>\n<\/ol><\/nav>\n<p class=\"msq-audio-note\">Recorded 8 October 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\",\"basaltemperatureimplanta\",50],[4.08,\"p\",\"abasaltemperatureimplant\",73],[8.56,\"p\",\"inthelargestchartanalysi\",112],[17.28,\"p\",\"afterivfprescribedproges\",88],[23.44,\"p\",\"onthispagewhatthe15milli\",226],[39.82,\"h\",\"whatistheimplantationdip\",48],[43.1,\"p\",\"basalbodytemperatureisyo\",108],[50.14,\"p\",\"inanaturalcycleitrunslow\",176],[61.58,\"p\",\"thestatpearlsreviewofovu\",126],[72.3,\"p\",\"theimplantationdipisthei\",144],[82.1,\"p\",\"itisatidystory\",14],[83.34,\"p\",\"italsolinesupnicelywitht\",175],[96.94,\"p\",\"liningupnicelyisnotthesa\",83],[103.1,\"p\",\"ourpageonwhattheevidence\",90],[108.54,\"p\",\"herethequestionisnarrowe\",72],[114.08,\"h\",\"whatdoesthelargestcharta\",43],[116.6,\"p\",\"thefigurethatthedippages\",139],[125.4,\"p\",\"itdefinesthedipstrictlya\",77],[131.48,\"p\",\"threenumbersmatterandthe\",61],[135.36,\"t\",\"chartsshowingthedipatall\",117],[148.64,\"t\",\"howmuchmoreoftenitappear\",152],[162.2,\"t\",\"averagedayofthediponpreg\",156],[174.44,\"t\",\"doesthedipappearonnonpre\",138],[184.8,\"p\",\"that798percentisthenumbe\",82],[191.28,\"p\",\"itisarelativecomparisona\",148],[202.96,\"p\",\"theanalysisdoesnotsaywha\",103],[209.36,\"p\",\"theotherquietdetailiswho\",62],[213.56,\"p\",\"nothingintheanalysissays\",82],[219.98,\"h\",\"whydoesprogesteroneafter\",47],[222.82,\"p\",\"afteranembryotransfermos\",80],[227.7,\"p\",\"theeuropeanfertilitysoci\",161],[239.62,\"p\",\"whichproductwhichroutean\",85],[246.26,\"p\",\"hereiswhythatmattersfort\",31],[247.9,\"p\",\"inamedicatedfrozentransf\",219],[264.82,\"p\",\"inafreshcycletheovariesa\",75],[269.98,\"p\",\"eitherwaythehormonethatr\",83],[274.94,\"p\",\"ourcomparisonofmedicated\",87],[280.62,\"p\",\"thereisnowadirectmeasure\",34],[282.62,\"p\",\"inastudypublishedinfebru\",202],[296.58,\"p\",\"theyfoundastrongrelation\",95],[301.42,\"p\",\"inotherwordsthetemperatu\",53],[304.54,\"p\",\"itwasasmallstudywithaded\",126],[313.02,\"t\",\"naturalcyclenotreatment\",132],[323.58,\"t\",\"freshivftransfer\",148],[334.14,\"t\",\"medicatedfrozentransfer\",140],[344.7,\"t\",\"naturalormodifiednatural\",184],[358.42,\"p\",\"soahighsteadychartaftera\",69],[363.22,\"p\",\"aonedaydropcanfollowares\",87],[369.62,\"p\",\"noneofthoseisamessagefro\",94],[376.0,\"h\",\"howreliablewasatemperatu\",44],[379.36,\"p\",\"basaltemperaturechartsha\",107],[385.68,\"p\",\"inastudyinthebritishmedi\",114],[394.24,\"p\",\"bothgroupssortedabout80p\",71],[398.92,\"p\",\"butthedayofovulationwasp\",194],[413.12,\"p\",\"theauthorsconcludedthatp\",123],[420.72,\"p\",\"thatisatoolstrugglingtop\",49],[423.92,\"p\",\"askingittospotanembryoat\",103],[431.18,\"h\",\"whatdopeoplewhotooktheir\",54],[434.38,\"p\",\"wereadthreeaccountsfromp\",106],[442.46,\"p\",\"threeisasmallnumberandth\",57],[446.7,\"p\",\"inamumsnetthreadstartedi\",199],[460.02,\"p\",\"thethreaddoesnotsayhowth\",89],[464.98,\"p\",\"onanolderivfcathreadfrom\",107],[473.58,\"p\",\"temperaturesswungupanddo\",150],[483.66,\"p\",\"theirconclusionwasthatth\",62],[487.14,\"p\",\"areplyonanotherivfcathre\",54],[491.78,\"p\",\"alongtimecharterskippedt\",107],[499.18,\"p\",\"theydescribeafrightenedp\",85],[503.9,\"p\",\"wheretheaccountsagreewit\",100],[510.22,\"p\",\"wheretheycannothelpnoneo\",67],[514.78,\"p\",\"peoplewhosechartsdidnoth\",119],[523.16,\"h\",\"whenisatemperaturereadin\",47],[526.4,\"p\",\"basaltemperatureandfever\",42],[528.8,\"p\",\"abasalreadingsitsinanarr\",66],[533.16,\"p\",\"afeverissomethingelsethe\",168],[544.68,\"p\",\"ifyouhaveatemperatureof3\",109],[553.88,\"p\",\"dothesameforheavybleedin\",69],[559.04,\"p\",\"donotstoporchangeanymedi\",45],[562.24,\"p\",\"yourclinicknowsyourproto\",57],[566.24,\"p\",\"foreverythingelsethehone\",108],[572.64,\"p\",\"ourguidetotestingathomea\",138],[583.24,\"p\",\"puttingthethermometerina\",43],[585.36,\"p\",\"itisdecliningtoletamedic\",58],[588.88,\"p\",\"thispageisgeneralinforma\",52],[592.28,\"p\",\"speaktoyourfertilityclin\",88],[597.32,\"p\",\"thisarticleisgeneralinfo\",109],[604.2,\"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: what the 1.5 million chart implantation dip analysis really reports, a table of where the progesterone comes from in each type of transfer cycle, a 2025 study showing temperature tracks progesterone, and three forum accounts from people who charted through IVF.<\/p>\n\n\n\n<div class=\"msq\" id=\"ms-quiz\" data-slug=\"basal-temperature-implantation\" data-category=\"signs and symptoms\" 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=\"What is the implantation dip on a basal temperature chart?\" data-section=\"#what-is-the-implantation-dip-on-a-basal-temperature-chart\">\n<p class=\"msq-question\">1. Why does basal temperature normally rise after ovulation?<\/p>\n<div class=\"msq-options\" role=\"group\" aria-label=\"Question 1 options\"><button type=\"button\" class=\"msq-opt\" data-opt=\"a\">Because the embryo gives off heat<\/button><button type=\"button\" class=\"msq-opt\" data-opt=\"b\">Because progesterone raises the body&#8217;s temperature set point<\/button><button type=\"button\" class=\"msq-opt\" data-opt=\"c\">Because of the lining of the womb thickening<\/button><\/div>\n<p class=\"msq-explain\" hidden><span class=\"msq-verdict\"><\/span>Progesterone from the corpus luteum raises basal temperature by an estimated 0.5 to 1 degree Fahrenheit (<a href=\"https:\/\/www.ncbi.nlm.nih.gov\/books\/NBK546686\/\" target=\"_blank\" rel=\"noopener\">StatPearls review<\/a>). <a class=\"msq-section\" href=\"#what-is-the-implantation-dip-on-a-basal-temperature-chart\">Read the section<\/a><\/p>\n<\/li>\n<li class=\"msq-q\" data-q=\"2\" data-answer=\"a\" data-title=\"What does the largest chart analysis actually show?\" data-section=\"#what-does-the-largest-chart-analysis-actually-show\">\n<p class=\"msq-question\">2. In Fertility Friend&#8217;s analysis of more than 1.5 million charts, what share showed the one day implantation dip?<\/p>\n<div class=\"msq-options\" role=\"group\" aria-label=\"Question 2 options\"><button type=\"button\" class=\"msq-opt\" data-opt=\"a\">1.6 per cent<\/button><button type=\"button\" class=\"msq-opt\" data-opt=\"b\">23 per cent<\/button><button type=\"button\" class=\"msq-opt\" data-opt=\"c\">79.8 per cent<\/button><\/div>\n<p class=\"msq-explain\" hidden><span class=\"msq-verdict\"><\/span>The dip appeared on 1.6 per cent of all charts; 79.8 per cent is a relative comparison between groups, not a share of charts (<a href=\"https:\/\/www.fertilityfriend.com\/Faqs\/Implantation-dip-study.html\" target=\"_blank\" rel=\"noopener\">Fertility Friend analysis<\/a>). <a class=\"msq-section\" href=\"#what-does-the-largest-chart-analysis-actually-show\">Read the section<\/a><\/p>\n<\/li>\n<li class=\"msq-q\" data-q=\"3\" data-answer=\"a\" data-title=\"Why does progesterone after a transfer change the chart?\" data-section=\"#why-does-progesterone-after-a-transfer-change-the-chart\">\n<p class=\"msq-question\">3. In the 2025 study of 18 patients in hormone assisted transfer cycles, what did overnight temperature track?<\/p>\n<div class=\"msq-options\" role=\"group\" aria-label=\"Question 3 options\"><button type=\"button\" class=\"msq-opt\" data-opt=\"a\">The blood progesterone level<\/button><button type=\"button\" class=\"msq-opt\" data-opt=\"b\">The size of the embryo<\/button><button type=\"button\" class=\"msq-opt\" data-opt=\"c\">The pregnancy test result<\/button><\/div>\n<p class=\"msq-explain\" hidden><span class=\"msq-verdict\"><\/span>The study found a strong relationship between overnight temperature and blood progesterone, best matched by the previous night&#8217;s reading (<a href=\"https:\/\/pmc.ncbi.nlm.nih.gov\/articles\/PMC11792532\/\" target=\"_blank\" rel=\"noopener\">Knowles and colleagues, 2025<\/a>). <a class=\"msq-section\" href=\"#why-does-progesterone-after-a-transfer-change-the-chart\">Read the section<\/a><\/p>\n<\/li>\n<li class=\"msq-q\" data-q=\"4\" data-answer=\"a\" data-title=\"How reliable was a temperature chart even before IVF?\" data-section=\"#how-reliable-was-a-temperature-chart-even-before-ivf\">\n<p class=\"msq-question\">4. In the 1977 study of 60 charts, for roughly what share was the day of ovulation predicted correctly?<\/p>\n<div class=\"msq-options\" role=\"group\" aria-label=\"Question 4 options\"><button type=\"button\" class=\"msq-opt\" data-opt=\"a\">About 34 per cent<\/button><button type=\"button\" class=\"msq-opt\" data-opt=\"b\">About 80 per cent<\/button><button type=\"button\" class=\"msq-opt\" data-opt=\"c\">About 95 per cent<\/button><\/div>\n<p class=\"msq-explain\" hidden><span class=\"msq-verdict\"><\/span>About 80 per cent were sorted correctly as ovulatory or not, but the day itself was right for only about 34 per cent (<a href=\"https:\/\/pmc.ncbi.nlm.nih.gov\/articles\/PMC1606197\/\" target=\"_blank\" rel=\"noopener\">Lenton, Weston and Cooke, 1977<\/a>). <a class=\"msq-section\" href=\"#how-reliable-was-a-temperature-chart-even-before-ivf\">Read the section<\/a><\/p>\n<\/li>\n<li class=\"msq-q\" data-q=\"5\" data-answer=\"b\" data-title=\"When is a temperature reading a reason to call the clinic?\" data-section=\"#when-is-a-temperature-reading-a-reason-to-call-the-clinic\">\n<p class=\"msq-question\">5. At what reading does the NHS define a high temperature in adults?<\/p>\n<div class=\"msq-options\" role=\"group\" aria-label=\"Question 5 options\"><button type=\"button\" class=\"msq-opt\" data-opt=\"a\">37C or above<\/button><button type=\"button\" class=\"msq-opt\" data-opt=\"b\">38C or above<\/button><button type=\"button\" class=\"msq-opt\" data-opt=\"c\">40C or above<\/button><\/div>\n<p class=\"msq-explain\" hidden><span class=\"msq-verdict\"><\/span>The NHS defines a high temperature as 38C or above, and notes someone feeling hot or shivery may have one below that (<a href=\"https:\/\/www.nhs.uk\/symptoms\/fever-in-adults\/\" target=\"_blank\" rel=\"noopener\">NHS high temperature in adults<\/a>). <a class=\"msq-section\" href=\"#when-is-a-temperature-reading-a-reason-to-call-the-clinic\">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) { var skipFirst = box.hasAttribute('data-default-open'); box.addEventListener('toggle', function(){ if (!box.open) { return; } if (skipFirst) { skipFirst = false; return; } 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<h2 class=\"wp-block-heading\" id=\"what-is-the-implantation-dip-on-a-basal-temperature-chart\">What is the implantation dip on a basal temperature chart?<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Basal body temperature is your resting temperature, taken first thing in the morning before you sit up, talk or reach for the kettle. In a natural cycle it runs lower before ovulation and then steps up afterwards, because progesterone from the corpus luteum, the small gland left behind when an egg is released, nudges the body&#8217;s thermostat upwards. The <a href=\"https:\/\/www.ncbi.nlm.nih.gov\/books\/NBK546686\/\" target=\"_blank\" rel=\"noopener\">StatPearls review of ovulation and basal body temperature<\/a> puts that rise at an estimated 0.5 to 1 degree Fahrenheit, roughly 0.3 to 0.6 degrees Celsius.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">The implantation dip is the idea that, a week or so after ovulation, the temperature drops for a single day and then climbs back up, and that this drop marks the embryo settling in. It is a tidy story. It also lines up nicely with the timing of implantation itself: in the classic urine study by Wilcox, Baird and Weinberg in the <a href=\"https:\/\/pubmed.ncbi.nlm.nih.gov\/10362823\/\" target=\"_blank\" rel=\"noopener\">New England Journal of Medicine in 1999<\/a>, hCG first appeared 6 to 12 days after ovulation. Lining up nicely is not the same as being caused by it, and that gap is what the rest of this page is about.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Our page on <a href=\"https:\/\/ivfprep.guide\/articles\/signs-of-implantation\/\">what the evidence says about signs of implantation after transfer<\/a> covers the wider symptom list. Here the question is narrower: what do the numbers say about this one squiggle on a chart?<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"what-does-the-largest-chart-analysis-actually-show\">What does the largest chart analysis actually show?<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">The figure that the dip pages lean on comes from the charting service Fertility Friend, which has published an <a href=\"https:\/\/www.fertilityfriend.com\/Faqs\/Implantation-dip-study.html\" target=\"_blank\" rel=\"noopener\">implantation dip analysis of more than 1.5 million charts<\/a>. It defines the dip strictly, as a significant one day drop between 5 and 12 days past ovulation. Three numbers matter, and the first one rarely makes it into the headlines.<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table><thead><tr><th>What the analysis reports<\/th><th>The figure<\/th><th>What it does and does not mean<\/th><\/tr><\/thead><tbody><tr><td>Charts showing the dip at all<\/td><td>1.6 per cent<\/td><td>Roughly 1 chart in 60. Most charts, pregnant or not, never show it.<\/td><\/tr><tr><td>How much more often it appears on pregnancy charts<\/td><td>79.8 per cent more likely<\/td><td>A comparison between two groups, not a 79.8 per cent chance of anything.<\/td><\/tr><tr><td>Average day of the dip on pregnancy charts<\/td><td>8.6 days past ovulation<\/td><td>Close to when implantation is thought to happen, which is where the story comes from.<\/td><\/tr><tr><td>Does the dip appear on non pregnancy charts?<\/td><td>Yes<\/td><td>The service says plainly that the pattern does not necessarily mean pregnancy.<\/td><\/tr><\/tbody><\/table><figcaption class=\"wp-element-caption\">Source: Fertility Friend implantation dip analysis, read on 8 October 2026. The service does not publish separate dip rates for pregnant and non pregnant charts.<\/figcaption><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">That 79.8 per cent is the number that gets passed around, and it is easy to misread at two in the morning. It is a relative comparison: a pattern that is rare in one group and rarer still in another can be &#8220;79.8 per cent more likely&#8221; in the first while still being absent from almost all of both. The analysis does not say what share of pregnant charts had a dip, so nobody can work backwards from it to the odds for one chart.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">The other quiet detail is who was charting: people tracking natural cycles. Nothing in the analysis says it included IVF, and an IVF chart measures something rather different.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"why-does-progesterone-after-a-transfer-change-the-chart\">Why does progesterone after a transfer change the chart?<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">After an embryo transfer, most clinics prescribe progesterone to support the lining of the womb. The European fertility society&#8217;s <a href=\"https:\/\/pmc.ncbi.nlm.nih.gov\/articles\/PMC7203749\/\" target=\"_blank\" rel=\"noopener\">ovarian stimulation guideline<\/a> strongly recommends progesterone as luteal phase support after IVF, so this is standard practice rather than an unusual extra. Which product, which route and for how long is a decision for each clinic, and this page does not go near it.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1376\" height=\"768\" src=\"https:\/\/ivfprep.guide\/articles\/wp-content\/uploads\/2026\/10\/bedside-thermometer-and-medication-for-basal-temperature-implantation.jpg\" alt=\"A digital thermometer and prescription bottle on a bedside table relate to basal temperature implantation tracking post-transfer.\" class=\"wp-image-475\" srcset=\"https:\/\/ivfprep.guide\/articles\/wp-content\/uploads\/2026\/10\/bedside-thermometer-and-medication-for-basal-temperature-implantation.jpg 1376w, https:\/\/ivfprep.guide\/articles\/wp-content\/uploads\/2026\/10\/bedside-thermometer-and-medication-for-basal-temperature-implantation-300x167.jpg 300w, https:\/\/ivfprep.guide\/articles\/wp-content\/uploads\/2026\/10\/bedside-thermometer-and-medication-for-basal-temperature-implantation-1024x572.jpg 1024w, https:\/\/ivfprep.guide\/articles\/wp-content\/uploads\/2026\/10\/bedside-thermometer-and-medication-for-basal-temperature-implantation-768x429.jpg 768w\" sizes=\"auto, (max-width: 1376px) 100vw, 1376px\" \/><figcaption class=\"wp-block-image__caption\">After a transfer, prescribed progesterone keeps the morning reading up whatever the outcome.<\/figcaption><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">Here is why that matters for the chart. In a medicated frozen transfer, the cycle is built with hormones and no egg is released, so there is no corpus luteum at all; a <a href=\"https:\/\/pmc.ncbi.nlm.nih.gov\/articles\/PMC11152424\/\" target=\"_blank\" rel=\"noopener\">2024 review of luteal support in embryo transfer cycles<\/a> describes the progesterone in those cycles as coming entirely from the prescription. In a fresh cycle the ovaries are also recovering from stimulation and producing their own. Either way, the hormone that raises basal temperature is partly or wholly arriving by prescription. Our comparison of <a href=\"https:\/\/ivfprep.guide\/articles\/medicated-vs-natural-fet\/\">medicated and natural frozen transfer cycles<\/a> explains the cycle types in more detail.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">There is now a direct measurement of this. In a study published in February 2025, <a href=\"https:\/\/pmc.ncbi.nlm.nih.gov\/articles\/PMC11792532\/\" target=\"_blank\" rel=\"noopener\">Knowles and colleagues monitored overnight temperature in 18 patients<\/a> having hormone assisted embryo transfer cycles at clinics in Spain, using a vaginal sensor, and compared it with blood progesterone. They found a strong relationship between the two, with the best match coming from the previous night&#8217;s temperature. In other words, the temperature tracked the progesterone level. It was a small study with a dedicated sensor rather than a bedside thermometer, but the point stands: what moves the line is the hormone in the bloodstream.<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table><thead><tr><th>Type of cycle<\/th><th>Where the progesterone comes from<\/th><th>What a high reading mostly reflects<\/th><\/tr><\/thead><tbody><tr><td>Natural cycle, no treatment<\/td><td>The corpus luteum after ovulation<\/td><td>That ovulation happened<\/td><\/tr><tr><td>Fresh IVF transfer<\/td><td>The ovaries after egg collection, plus prescribed progesterone<\/td><td>Both sources together<\/td><\/tr><tr><td>Medicated frozen transfer<\/td><td>Prescribed progesterone only; no corpus luteum forms<\/td><td>The medication<\/td><\/tr><tr><td>Natural or modified natural frozen transfer<\/td><td>The cycle&#8217;s own corpus luteum, sometimes with added progesterone<\/td><td>Ovulation, plus any added progesterone<\/td><\/tr><\/tbody><\/table><figcaption class=\"wp-element-caption\">Compiled from the StatPearls review of basal body temperature, the 2024 review of luteal support in embryo transfer cycles, and the ESHRE ovarian stimulation guideline.<\/figcaption><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">So a high, steady chart after a transfer is mostly a record of a medicine doing its job. A one day drop can follow a restless night, a cold bedroom, a reading taken an hour late or the timing of a dose. None of those is a message from the embryo, and none of them is a reason to change anything the clinic has prescribed.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"how-reliable-was-a-temperature-chart-even-before-ivf\">How reliable was a temperature chart even before IVF?<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Basal temperature charts have a modest record even for the job they were designed for, which is spotting ovulation after the fact. In a study in the <a href=\"https:\/\/pmc.ncbi.nlm.nih.gov\/articles\/PMC1606197\/\" target=\"_blank\" rel=\"noopener\">British Medical Journal in 1977<\/a>, Lenton, Weston and Cooke gave 60 temperature charts to gynaecologists and to non experts. Both groups sorted about 80 per cent correctly into cycles that did or did not ovulate. But the day of ovulation was predicted correctly for only about 34 per cent of the charts, and the lowest point on the chart lined up with the hormone surge in 43 per cent of normal cycles and 25 per cent of those from the infertility clinic.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">The authors concluded that predicting the day of ovulation from a temperature chart was unjustified, especially in women with fertility problems. That is a tool struggling to pin down a large hormonal event. Asking it to spot an embryo attaching, through a fog of prescribed hormones, is asking a lot of a thermometer from the chemist&#8217;s.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"what-do-people-who-took-their-temperature-after-transfer-rep\">What do people who took their temperature after transfer report?<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">We read three accounts from people who took their basal temperature during or after IVF, on Mumsnet and the Canadian forum IVF.ca. Three is a small number, and these are what people report, not findings.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1376\" height=\"768\" src=\"https:\/\/ivfprep.guide\/articles\/wp-content\/uploads\/2026\/10\/couple-discussing-basal-temperature-implantation-data.jpg\" alt=\"A supportive couple in their kitchen discusses their basal temperature implantation data during the wait.\" class=\"wp-image-476\" srcset=\"https:\/\/ivfprep.guide\/articles\/wp-content\/uploads\/2026\/10\/couple-discussing-basal-temperature-implantation-data.jpg 1376w, https:\/\/ivfprep.guide\/articles\/wp-content\/uploads\/2026\/10\/couple-discussing-basal-temperature-implantation-data-300x167.jpg 300w, https:\/\/ivfprep.guide\/articles\/wp-content\/uploads\/2026\/10\/couple-discussing-basal-temperature-implantation-data-1024x572.jpg 1024w, https:\/\/ivfprep.guide\/articles\/wp-content\/uploads\/2026\/10\/couple-discussing-basal-temperature-implantation-data-768x429.jpg 768w\" sizes=\"auto, (max-width: 1376px) 100vw, 1376px\" \/><figcaption class=\"wp-block-image__caption\">Charts that did nothing remarkable rarely get posted, so forums tell half the story.<\/figcaption><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">In <a href=\"https:\/\/www.mumsnet.com\/talk\/infertility\/4399502-ivf-2ww\" target=\"_blank\" rel=\"noopener\">a Mumsnet thread started in November 2021<\/a>, a poster five days after a day five transfer noticed a higher than usual morning reading and felt encouraged, then remembered that the progesterone they were taking raises temperature on its own. The thread does not say how that cycle ended, which is fitting, because the reading could not have said either.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">On <a href=\"https:\/\/ivf.ca\/forums\/topic\/22257-body-basal-temperature-after-ivf\/\" target=\"_blank\" rel=\"noopener\">an older IVF.ca thread<\/a>, from around 2010 going by the dates on the page, one poster described charting through several IVF cycles. Temperatures swung up and down in every cycle, including a pattern they had read as hopeful in a cycle that ended negative, and the same wild swings in a later cycle that ended positive. Their conclusion was that the hormones made temping impossible to rely on.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">A reply on <a href=\"https:\/\/ivf.ca\/forums\/topic\/12632-basal-body-temp-after-embryo-transfer\/\" target=\"_blank\" rel=\"noopener\">another IVF.ca thread<\/a> from the same era ran the other way. A long time charter skipped temping during IVF, took a reading after a positive test, and found it back at their pre ovulation level. They describe a frightened phone call to their doctor, who told them not to worry about the thermometer.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Where the accounts agree with the evidence: the temperature moved with the medication and did not sort good news from bad. Where they cannot help: none of them is a guide to what a chart means for anyone else. People whose charts did nothing remarkable rarely post at all, the same silence we describe in <a href=\"https:\/\/ivfprep.guide\/articles\/successful-implantation-without-bleeding\/\">why having no symptoms is not evidence either way<\/a>.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"when-is-a-temperature-reading-a-reason-to-call-the-clinic\">When is a temperature reading a reason to call the clinic?<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Basal temperature and fever are different things. A basal reading sits in a narrow resting range and moves by fractions of a degree. A fever is something else: the <a href=\"https:\/\/www.nhs.uk\/symptoms\/fever-in-adults\/\" target=\"_blank\" rel=\"noopener\">NHS defines a high temperature in adults as 38C or above<\/a>, and notes that someone who feels hot, cold or shivery may have a high temperature even if a thermometer reads below that.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">If you have a temperature of 38C or above after an embryo transfer, or feel feverish and unwell, call your clinic or NHS 111 the same day. Do the same for heavy bleeding, severe pain, breathlessness or a swollen, painful leg. Do not stop or change any medication because of a chart. Your clinic knows your protocol and your test date; this page does not.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">For everything else, the honest answer is the unsatisfying one: the result comes from the blood test on the date your clinic gave you. Our guide to <a href=\"https:\/\/ivfprep.guide\/articles\/home-pregnancy-test-after-ivf\/\">testing at home after IVF<\/a> explains why early tests mislead too, and the <a href=\"https:\/\/ivfprep.guide\/articles\/implantation-timeline\/\">implantation timeline after a day 3 or day 5 transfer<\/a> sets out when each step happens. Putting the thermometer in a drawer is not giving up. It is declining to let a medicine&#8217;s side effect narrate your fortnight.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><em>This page is general information, not personal medical advice. Speak to your fertility clinic or another qualified professional about your own treatment and symptoms.<\/em><\/p>\n\n\n\n<div class=\"msq-tool\" id=\"bbt-clinic-log\">\n<h3>Two week wait clinic log<\/h3>\n<p>A private note of dates and what your clinic told you, kept in this browser only. It records what was said; it does not read anything into it.<\/p>\n<div class=\"msq-calc\">\n<label>Date<input type=\"date\" name=\"date\"><\/label>\n<label>Who you spoke to<input type=\"text\" name=\"contact\" placeholder=\"Nurse line, consultant, NHS 111\"><\/label>\n<label>What the clinic said<input type=\"text\" name=\"said\" placeholder=\"Their words, as close as you can\"><\/label>\n<label>Next date they gave<input type=\"date\" name=\"next\"><\/label>\n\n<div class=\"msq-calc-out\"><button type=\"button\" class=\"msq-btn\" id=\"bbt-clinic-log-add\">Add this entry<\/button> <a href=\"#\" class=\"msq-no\" id=\"bbt-clinic-log-clear\">Clear all<\/a>\n<div id=\"bbt-clinic-log-list\" style=\"margin-top:10px;overflow-x:auto\"><\/div><\/div>\n<\/div>\n<p class=\"msq-note\">Questions about your medication or symptoms belong with your clinic, which knows your protocol.<\/p>\n<\/div>\n<script>\n(function(){\n  var root = document.getElementById('bbt-clinic-log'); if (!root) { return; }\n  var names = ['date','contact','said','next'], key = 'msq-log-basal-temperature-implantation-bbt-clinic-log';\n  var ins = names.map(function(n){ return root.querySelector('[name=\"' + n + '\"]'); });\n  var list = document.getElementById('bbt-clinic-log-list');\n  function load(){ try { return JSON.parse(localStorage.getItem(key) || '[]'); } catch (e) { return []; } }\n  function save(rows){ try { localStorage.setItem(key, JSON.stringify(rows)); } catch (e) {} }\n  function esc(s){ return String(s).replace(\/&\/g, '&amp;').replace(\/<\/g, '&lt;').replace(\/>\/g, '&gt;'); }\n  function render(){\n    var rows = load();\n    if (!rows.length) { list.innerHTML = '<p class=\"msq-note\">Nothing logged yet.<\/p>'; return; }\n    var h = '<table><thead><tr><th>Date<\/th><th>Who you spoke to<\/th><th>What the clinic said<\/th><th>Next date they gave<\/th><\/tr><\/thead><tbody>';\n    rows.slice(0, 30).forEach(function(r){ h += '<tr>' + names.map(function(n){ return '<td>' + esc(r[n] || '') + '<\/td>'; }).join('') + '<\/tr>'; });\n    list.innerHTML = h + '<\/tbody><\/table><p class=\"msq-note\">' + rows.length + ' entries, newest first.<\/p>';\n  }\n  document.getElementById('bbt-clinic-log-add').addEventListener('click', function(){\n    var r = {}; var any = false;\n    ins.forEach(function(el, i){ r[names[i]] = el ? el.value : ''; if (el && el.value) { any = true; } });\n    if (!any) { return; }\n    var rows = load(); rows.unshift(r); save(rows); render();\n    ins.forEach(function(el){ if (el && el.type !== 'date') { el.value = ''; } });\n    try { if (typeof gtag === 'function') { gtag('event', 'tool_log', { tool: 'bbt-clinic-log', article: 'basal-temperature-implantation' }); } } catch (e) {}\n  });\n  document.getElementById('bbt-clinic-log-clear').addEventListener('click', function(e){ e.preventDefault(); save([]); render(); });\n  render();\n})();\n<\/script>\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 a high temperature after embryo transfer mean pregnancy?<\/h3>\n<div class=\"rank-math-answer \">\n\n<p>No. After a transfer, prescribed progesterone raises basal temperature whatever the outcome, and a 2025 study found overnight temperature tracked blood progesterone in medicated transfer cycles. A high chart mostly reflects the medication.<\/p>\n\n<\/div>\n<\/div>\n<div id=\"faq-q-2\" class=\"rank-math-list-item\">\n<h3 class=\"rank-math-question \">Does a temperature drop after transfer mean it has failed?<\/h3>\n<div class=\"rank-math-answer \">\n\n<p>No. A one day drop has ordinary causes, such as a poor night, a cold room or a late reading, and the dip pattern appears on pregnant and non pregnant charts alike. It cannot be read either way.<\/p>\n\n<\/div>\n<\/div>\n<div id=\"faq-q-3\" class=\"rank-math-list-item\">\n<h3 class=\"rank-math-question \">How many people actually see an implantation dip?<\/h3>\n<div class=\"rank-math-answer \">\n\n<p>In Fertility Friend&#8217;s analysis of more than 1.5 million charts, the strictly defined one day dip appeared on 1.6 per cent of charts. Most charts, including pregnancy charts, never show one.<\/p>\n\n<\/div>\n<\/div>\n<div id=\"faq-q-4\" class=\"rank-math-list-item\">\n<h3 class=\"rank-math-question \">When is the implantation dip supposed to happen?<\/h3>\n<div class=\"rank-math-answer \">\n\n<p>Fertility Friend looks for it between 5 and 12 days past ovulation, and reports an average of 8.6 days on pregnancy charts. That overlaps with the timing of implantation, which is how the idea took hold.<\/p>\n\n<\/div>\n<\/div>\n<div id=\"faq-q-5\" class=\"rank-math-list-item\">\n<h3 class=\"rank-math-question \">Why is basal temperature higher on progesterone?<\/h3>\n<div class=\"rank-math-answer \">\n\n<p>Progesterone acts on the part of the brain that sets body temperature and shifts it upwards. The StatPearls review puts the natural rise after ovulation at about 0.5 to 1 degree Fahrenheit.<\/p>\n\n<\/div>\n<\/div>\n<div id=\"faq-q-6\" class=\"rank-math-list-item\">\n<h3 class=\"rank-math-question \">Is it harmful to chart temperature during the two week wait?<\/h3>\n<div class=\"rank-math-answer \">\n\n<p>Charting itself is not harmful, but it cannot answer the question it is usually used for. Many people find it adds worry. Your clinic&#8217;s blood test date is when the result is known.<\/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>What the 1.5 million chart analysis really says about the implantation dip, and why progesterone after a transfer turns the chart into a record of the medication.<\/p>\n","protected":false},"author":1,"featured_media":474,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":"","rank_math_title":"Basal Temperature Implantation Dip: Why IVF Charts Mislead","rank_math_description":"A basal temperature implantation dip shows on 1.6% of charts, pregnant or not. After IVF, prescribed progesterone sets the chart, not the embryo.","rank_math_focus_keyword":"basal temperature implantation","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":[3],"tags":[],"class_list":["post-477","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-signs-and-symptoms"],"_links":{"self":[{"href":"https:\/\/ivfprep.guide\/articles\/wp-json\/wp\/v2\/posts\/477","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=477"}],"version-history":[{"count":6,"href":"https:\/\/ivfprep.guide\/articles\/wp-json\/wp\/v2\/posts\/477\/revisions"}],"predecessor-version":[{"id":484,"href":"https:\/\/ivfprep.guide\/articles\/wp-json\/wp\/v2\/posts\/477\/revisions\/484"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/ivfprep.guide\/articles\/wp-json\/wp\/v2\/media\/474"}],"wp:attachment":[{"href":"https:\/\/ivfprep.guide\/articles\/wp-json\/wp\/v2\/media?parent=477"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/ivfprep.guide\/articles\/wp-json\/wp\/v2\/categories?post=477"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/ivfprep.guide\/articles\/wp-json\/wp\/v2\/tags?post=477"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}