{"id":518,"date":"2026-10-21T17:46:01","date_gmt":"2026-10-21T17:46:01","guid":{"rendered":"https:\/\/langsoftware.de\/?page_id=518"},"modified":"2026-10-21T17:50:49","modified_gmt":"2026-10-21T17:50:49","slug":"mypatch","status":"publish","type":"page","link":"https:\/\/langsoftware.de\/?page_id=518","title":{"rendered":"MyPatch"},"content":{"rendered":"\n<meta charset=\"utf-8\">\n  <meta name=\"viewport\" content=\"width=device-width, initial-scale=1\">\n  <title>MyPatch \u2014 Birth Control Patch Tracker for iPhone<\/title>\n  <meta name=\"description\" content=\"MyPatch reminds you of every application, change and removal of your birth control patch: progress ring with protection status, help when a patch comes off, calendar and diary on iPhone.\">\n\n  <!--\n    HOW TO USE THIS FILE IN WORDPRESS\n    \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\n    Same setup as the MyRing page (MyRing\/docs\/website-en.html): the live\n    page is a single Custom HTML block holding the inner head content\n    followed by the inner body content of this file. Keep this file as the\n    source of truth and copy the result over when something changes.\n\n    Screenshots live in the WordPress media library:\n      iPhone \u2192 \/wp-content\/uploads\/2026\/10\/mypatch_<name>.jpg\n               (from Screenshots\/web\/en-US\/ \u2014 the framed App Store shots\n               from Screenshots\/final\/en-US\/, scaled to 1000 px wide)\n\n    Regenerate the web copies after new App Store screenshots:\n      for f in Screenshots\/final\/en-US\/*.png; do\n        sips -s format jpeg -s formatOptions 82 --resampleWidth 1000 \"$f\" \\\n          --out \"Screenshots\/web\/en-US\/mypatch_$(basename \"$f\" .png).jpg\"\n      done\n\n    WordPress files uploads by month. If the images go up in another\n    month than October 2026, replace \"\/2026\/10\/\" below accordingly.\n  -->\n\n  <style>\n    :root {\n      --brand:        #D2B6A2;\n      --brand-dark:   #8A6A57;\n      --brand-deep:   #2A211D;\n      --brand-night:  #181514;\n      --text:         #2e221c;\n      --text-muted:   #75594B;\n      --bg:           #FDF7F3;\n      --bg-soft:      #F0E4DC;\n      --card:         #ffffff;\n      --rule:         #e8d8cc;\n      --green:        #749C5C;\n      --red:          #C94A4A;\n      --max-width:    1100px;\n      --radius:       18px;\n    }\n    * { box-sizing: border-box; }\n    html { -webkit-text-size-adjust: 100%; scroll-behavior: smooth; }\n    body {\n      margin: 0;\n      font-family: -apple-system, BlinkMacSystemFont, \"SF Pro Text\", \"Helvetica Neue\", Arial, sans-serif;\n      font-size: 17px;\n      line-height: 1.55;\n      color: var(--text);\n      background: linear-gradient(180deg, var(--bg) 0%, var(--bg-soft) 100%);\n    }\n    a {\n      color: var(--brand-dark);\n      text-decoration: underline;\n      text-decoration-thickness: 1px;\n      text-underline-offset: 3px;\n    }\n    a:hover { color: var(--text); }\n    img { max-width: 100%; height: auto; display: block; }\n    h1, h2, h3 { letter-spacing: -0.015em; line-height: 1.15; margin: 0 0 0.5em; }\n    h2 { font-size: clamp(1.6rem, 3vw, 2.2rem); }\n    h3 { font-size: 1.15rem; margin: 0 0 0.3em; }\n    p  { margin: 0 0 1em; }\n\n    \/* \u2500\u2500\u2500 Layout helpers \u2500\u2500\u2500 *\/\n    main { display: block; }\n    section {\n      max-width: var(--max-width);\n      margin: 0 auto;\n      padding: 80px 24px;\n    }\n    .center { text-align: center; }\n    .lead {\n      color: var(--text-muted);\n      font-size: 1.1rem;\n      max-width: 640px;\n      margin-left: auto;\n      margin-right: auto;\n    }\n\n    \/* \u2500\u2500\u2500 Hero \u2500\u2500\u2500 *\/\n    .hero {\n      background: radial-gradient(circle at 20% 0%, rgba(210, 182, 162, 0.55) 0%, transparent 38%),\n                  linear-gradient(180deg, var(--brand-deep) 0%, var(--brand-night) 100%);\n      color: #fff;\n      max-width: none;\n      padding-bottom: 0;\n      overflow: hidden;\n    }\n    .hero-inner {\n      max-width: var(--max-width);\n      margin: 0 auto;\n      padding: 90px 24px 0;\n      display: grid;\n      grid-template-columns: 1fr;\n      gap: 40px;\n      align-items: center;\n    }\n    @media (min-width: 880px) {\n      .hero-inner { grid-template-columns: 1.1fr 1fr; padding-top: 110px; }\n    }\n    .hero h1 {\n      font-size: clamp(2.4rem, 5.5vw, 3.6rem);\n      font-weight: 800;\n      margin: 0 0 0.4em;\n    }\n    .hero h1 .accent { color: var(--brand); }\n    .hero-tag {\n      font-size: 1.25rem;\n      color: rgba(255,255,255,0.85);\n      max-width: 520px;\n      margin: 0 0 1.8em;\n    }\n    .hero-eyebrow {\n      display: inline-block;\n      font-size: 0.82rem;\n      font-weight: 700;\n      letter-spacing: 0.09em;\n      text-transform: uppercase;\n      color: var(--brand);\n      margin-bottom: 18px;\n    }\n    .hero-note {\n      color: rgba(255,255,255,0.6);\n      font-size: 0.9rem;\n      margin: 18px 0 0;\n    }\n    .hero-devices {\n      position: relative;\n      max-width: 480px;\n      margin: 0 auto;\n      padding-right: 150px;\n      transform: translateY(40px);\n    }\n    .hero-devices img {\n      filter: drop-shadow(0 30px 60px rgba(0,0,0,0.35));\n      border-radius: 22px;\n    }\n    .device-front {\n      position: relative;\n      z-index: 2;\n      max-width: 320px;\n    }\n    .device-back {\n      position: absolute;\n      top: 56px;\n      right: 0;\n      z-index: 1;\n      max-width: 270px;\n      opacity: 0.95;\n    }\n    @media (min-width: 880px) {\n      .hero-devices { transform: translateY(60px); }\n    }\n    @media (max-width: 480px) {\n      .hero-devices { padding-right: 0; max-width: 300px; }\n      .device-back { display: none; }\n    }\n\n    \/* \u2500\u2500\u2500 CTA buttons \u2500\u2500\u2500 *\/\n    .cta-row { display: flex; flex-wrap: wrap; gap: 14px; }\n    .cta {\n      display: inline-flex;\n      align-items: center;\n      gap: 10px;\n      background: var(--brand);\n      color: var(--brand-deep);\n      padding: 14px 26px;\n      border-radius: 999px;\n      font-weight: 700;\n      font-size: 1rem;\n      text-decoration: none;\n      transition: transform 0.15s ease, box-shadow 0.15s ease;\n      box-shadow: 0 8px 24px rgba(210, 182, 162, 0.35);\n    }\n    .cta:hover {\n      transform: translateY(-1px);\n      box-shadow: 0 10px 28px rgba(210, 182, 162, 0.5);\n      color: var(--brand-deep);\n    }\n    .cta svg { width: 20px; height: 20px; flex: none; }\n    .cta-secondary {\n      background: transparent;\n      color: #fff;\n      border: 1.5px solid rgba(255,255,255,0.35);\n      box-shadow: none;\n    }\n    .cta-secondary:hover { background: rgba(255,255,255,0.08); color: #fff; box-shadow: none; }\n\n    \/* \u2500\u2500\u2500 Features grid \u2500\u2500\u2500 *\/\n    .features {\n      background: var(--bg);\n    }\n    .feature-grid {\n      display: grid;\n      grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));\n      gap: 20px;\n      margin-top: 40px;\n    }\n    .feature {\n      background: var(--card);\n      border: 1px solid var(--rule);\n      border-radius: var(--radius);\n      padding: 26px;\n      transition: transform 0.15s ease;\n    }\n    .feature:hover { transform: translateY(-3px); }\n    .feature .icon {\n      width: 44px;\n      height: 44px;\n      border-radius: 12px;\n      background: var(--bg-soft);\n      display: inline-flex;\n      align-items: center;\n      justify-content: center;\n      margin-bottom: 16px;\n      font-size: 1.4rem;\n    }\n    .feature p {\n      color: var(--text-muted);\n      font-size: 0.96rem;\n      margin: 0;\n    }\n\n    \/* \u2500\u2500\u2500 Screenshot gallery \u2500\u2500\u2500 *\/\n    .gallery { background: var(--bg-soft); }\n    .gallery-grid {\n      display: grid;\n      grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));\n      gap: 24px;\n      margin-top: 40px;\n    }\n    .gallery img {\n      border-radius: 22px;\n      box-shadow: 0 20px 40px rgba(42, 33, 29, 0.15);\n    }\n    @media (max-width: 640px) {\n      .gallery-grid { grid-template-columns: repeat(2, 1fr); gap: 14px; }\n      .gallery img { border-radius: 14px; }\n    }\n\n    \/* \u2500\u2500\u2500 Patch month \u2500\u2500\u2500 *\/\n    .cycle {\n      background: linear-gradient(180deg, var(--brand-deep) 0%, var(--brand-night) 100%);\n      color: #fff;\n      max-width: none;\n    }\n    .cycle-inner { max-width: var(--max-width); margin: 0 auto; }\n    .cycle h2 { color: #fff; }\n    .cycle .lead { color: rgba(255,255,255,0.8); }\n    .cycle-strip {\n      list-style: none;\n      padding: 0;\n      margin: 44px 0 0;\n      display: grid;\n      grid-template-columns: repeat(4, 1fr);\n      gap: 16px;\n    }\n    @media (max-width: 880px) {\n      .cycle-strip { grid-template-columns: repeat(2, 1fr); }\n    }\n    @media (max-width: 480px) {\n      .cycle-strip { grid-template-columns: 1fr; }\n    }\n    .week {\n      background: rgba(255,255,255,0.06);\n      border: 1px solid rgba(255,255,255,0.12);\n      border-radius: var(--radius);\n      padding: 22px 22px 24px;\n    }\n    .week::before {\n      content: \"\";\n      display: block;\n      height: 8px;\n      border-radius: 999px;\n      background: var(--brand);\n      margin-bottom: 18px;\n    }\n    .week.pause::before {\n      background: transparent;\n      border: 2px dashed var(--red);\n      height: 4px;\n    }\n    .week .day {\n      display: block;\n      font-size: 0.8rem;\n      font-weight: 700;\n      letter-spacing: 0.08em;\n      text-transform: uppercase;\n      color: var(--brand);\n      margin-bottom: 6px;\n    }\n    .week.pause .day { color: #e08a8a; }\n    .week h3 { color: #fff; }\n    .week p {\n      color: rgba(255,255,255,0.75);\n      font-size: 0.95rem;\n      margin: 0;\n    }\n    .cycle-note {\n      color: rgba(255,255,255,0.7);\n      font-size: 0.95rem;\n      text-align: center;\n      max-width: 680px;\n      margin: 32px auto 0;\n    }\n\n    \/* \u2500\u2500\u2500 Pricing \u2500\u2500\u2500 *\/\n    .pricing { background: var(--bg); }\n    .price-grid {\n      display: grid;\n      grid-template-columns: repeat(auto-fit, minmax(280px, 360px));\n      gap: 24px;\n      margin: 40px auto 0;\n      max-width: 760px;\n      justify-content: center;\n    }\n    .price-card {\n      background: var(--card);\n      border: 1px solid var(--rule);\n      border-radius: var(--radius);\n      padding: 32px;\n      position: relative;\n    }\n    .price-card.featured {\n      border-color: var(--brand);\n      box-shadow: 0 12px 36px rgba(210, 182, 162, 0.3);\n    }\n    .price-card .badge {\n      position: absolute;\n      top: -12px;\n      right: 24px;\n      background: var(--brand);\n      color: var(--brand-deep);\n      padding: 4px 12px;\n      border-radius: 999px;\n      font-size: 0.78rem;\n      font-weight: 700;\n      text-transform: uppercase;\n      letter-spacing: 0.04em;\n    }\n    .price-card h3 { font-size: 1.3rem; }\n    .price-card ul {\n      list-style: none;\n      padding: 0;\n      margin: 20px 0 0;\n    }\n    .price-card li {\n      padding: 7px 0;\n      color: var(--text-muted);\n      font-size: 0.96rem;\n    }\n    .price-card li::before {\n      content: \"\u2713\";\n      color: var(--green);\n      font-weight: 700;\n      margin-right: 8px;\n    }\n    .price-card .price {\n      color: var(--text);\n      font-weight: 700;\n      margin-top: 12px;\n    }\n\n    \/* \u2500\u2500\u2500 Download band \u2500\u2500\u2500 *\/\n    .download {\n      background: linear-gradient(180deg, var(--brand-deep) 0%, var(--brand-night) 100%);\n      color: #fff;\n      max-width: none;\n      text-align: center;\n    }\n    .download-inner { max-width: var(--max-width); margin: 0 auto; }\n    .download h2 { color: #fff; }\n    .download .lead { color: rgba(255,255,255,0.8); }\n    .download .cta-row { justify-content: center; margin-top: 28px; }\n\n    \/* \u2500\u2500\u2500 FAQ \u2500\u2500\u2500 *\/\n    .faq { background: var(--bg-soft); }\n    details {\n      background: var(--card);\n      border: 1px solid var(--rule);\n      border-radius: 14px;\n      padding: 18px 22px;\n      margin: 12px 0;\n      cursor: pointer;\n    }\n    details[open] { background: var(--card); }\n    summary {\n      font-weight: 600;\n      list-style: none;\n      position: relative;\n      padding-right: 32px;\n    }\n    summary::-webkit-details-marker { display: none; }\n    summary::after {\n      content: \"+\";\n      position: absolute;\n      right: 0;\n      top: 0;\n      font-size: 1.3rem;\n      color: var(--brand-dark);\n      transition: transform 0.2s ease;\n    }\n    details[open] summary::after { transform: rotate(45deg); }\n    details p {\n      color: var(--text-muted);\n      margin: 12px 0 0;\n    }\n\n    \/* \u2500\u2500\u2500 Footer \u2500\u2500\u2500\n       Scoped to a class: a bare `footer` selector would also restyle the\n       theme's own <footer> template part below this block. *\/\n    .page-footer {\n      background: var(--brand-deep);\n      color: rgba(255,255,255,0.75);\n      padding: 50px 24px;\n      text-align: center;\n      font-size: 0.95rem;\n    }\n    .page-footer a { color: rgba(255,255,255,0.9); }\n    .page-footer nav {\n      margin-bottom: 18px;\n      display: flex;\n      flex-wrap: wrap;\n      gap: 24px;\n      justify-content: center;\n    }\n    \/* The theme's footer inherits the body and link colours, which dark mode\n       turns light, but keeps its own light background: restore the theme's. *\/\n    footer.wp-block-template-part,\n    footer.wp-block-template-part a { color: var(--wp--preset--color--main); }\n\n    \/* \u2500\u2500\u2500 Dark-mode safety (system pref kicks in if WP doesn't override) \u2500\u2500\u2500 *\/\n    @media (prefers-color-scheme: dark) {\n      :root {\n        --brand-dark: #D2B6A2;\n        --text:       #f5ece6;\n        --text-muted: #c4a692;\n        --bg:         #181514;\n        --bg-soft:    #2a211d;\n        --card:       #2a211d;\n        --rule:       #46372f;\n      }\n      body { background: linear-gradient(180deg, var(--bg) 0%, var(--bg-soft) 100%); }\n      .gallery img { box-shadow: 0 20px 40px rgba(0,0,0,0.5); }\n    }\n  <\/style>\n\n  <!-- \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550 HERO \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550 -->\n  <section class=\"hero\">\n    <div class=\"hero-inner\">\n      <div>\n        <span class=\"hero-eyebrow\">For iPhone<\/span>\n        <h1>Every patch change, <span class=\"accent\">right on time<\/span>.<\/h1>\n        <p class=\"hero-tag\">\n          MyPatch reminds you of every application, change and removal of your\n          birth control patch \u2014 Evra, Apleek and similar. A progress ring shows\n          where you are in your cycle and whether you&#8217;re protected; the\n          calendar and diary keep track of the rest.\n        <\/p>\n        <div class=\"cta-row\">\n          <a href=\"https:\/\/apps.apple.com\/app\/id1024104862\" class=\"cta\">\n            <svg viewBox=\"0 0 24 24\" fill=\"currentColor\" aria-hidden=\"true\"><path d=\"M16.4 12.7c0-2.3 1.9-3.4 2-3.5-1.1-1.6-2.8-1.8-3.4-1.8-1.4-.1-2.8.9-3.5.9s-1.8-.9-3-.8c-1.5 0-2.9.9-3.7 2.3-1.6 2.7-.4 6.8 1.1 9 .8 1.1 1.7 2.3 2.9 2.3s1.6-.7 3-.7 1.8.7 3 .7 2-1.1 2.8-2.2c.9-1.2 1.2-2.4 1.2-2.5s-2.4-.9-2.4-3.7zM14.2 5.9c.6-.8 1-1.9.9-3-.9 0-2.1.6-2.7 1.4-.6.7-1.1 1.8-1 2.9 1 .1 2.1-.5 2.8-1.3z\"><\/path><\/svg>\n            Download on the App&nbsp;Store\n          <\/a>\n          <a href=\"#features\" class=\"cta cta-secondary\">\n            See features\n          <\/a>\n        <\/div>\n        <p class=\"hero-note\">Free to start \u00b7 Premium optional \u00b7 iPhone with iOS 17 or later<\/p>\n      <\/div>\n      <div class=\"hero-devices\">\n        <img decoding=\"async\" class=\"device-front\" src=\"https:\/\/langsoftware.de\/wp-content\/uploads\/2026\/10\/mypatch_01_hero.jpg\" alt=\"MyPatch on iPhone: overview with the progress ring, 2 days until the next change, patch 2 of 3 and the status Protected.\">\n        <img decoding=\"async\" class=\"device-back\" src=\"https:\/\/langsoftware.de\/wp-content\/uploads\/2026\/10\/mypatch_05_calendar.jpg\" alt=\"MyPatch calendar with past and upcoming patch days.\" loading=\"lazy\">\n      <\/div>\n    <\/div>\n  <\/section>\n\n  <!-- \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550 FEATURES \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550 -->\n  <section class=\"features\" id=\"features\">\n    <div class=\"center\">\n      <h2>Built around your patch week<\/h2>\n      <p class=\"lead\">Six things MyPatch takes care of, so the patch can stay out of your head.<\/p>\n    <\/div>\n\n    <div class=\"feature-grid\">\n      <div class=\"feature\">\n        <div class=\"icon\">\u2b55<\/div>\n        <h3>Protection in the ring<\/h3>\n        <p>The progress ring counts down to your next patch action and shows\n          right inside whether you&#8217;re protected \u2014 green when all is well, red\n          when something needs your attention.<\/p>\n      <\/div>\n      <div class=\"feature\">\n        <div class=\"icon\">\u23f0<\/div>\n        <h3>A reminder for every action<\/h3>\n        <p>Apply, change, remove: MyPatch notifies you on the day, at your\n          time. With Premium, add a heads-up the day before and follow-ups\n          every 30 minutes until you confirm.<\/p>\n      <\/div>\n      <div class=\"feature\">\n        <div class=\"icon\">\ud83e\ude79<\/div>\n        <h3>Help when a patch comes off<\/h3>\n        <p>Tap \u201cPatch came off\u201d and say how long it&#8217;s been. Under 24 hours,\n          your rhythm stays. At 24 hours or more, MyPatch starts a new patch\n          month and counts down 7 days of backup contraception.<\/p>\n      <\/div>\n      <div class=\"feature\">\n        <div class=\"icon\">\u26a0\ufe0f<\/div>\n        <h3>Missed a change? MyPatch notices<\/h3>\n        <p>On the next launch MyPatch asks whether you did it anyway \u2014 and\n          whether it was on time. If not, it walks you through the right rule\n          for that day.<\/p>\n      <\/div>\n      <div class=\"feature\">\n        <div class=\"icon\">\ud83d\udcc5<\/div>\n        <h3>Calendar with diary<\/h3>\n        <p>Past and upcoming patch days at a glance, patch-free days marked\n          with a dashed red ring. With Premium, log mood, period, notes and\n          appointments on the day they happened.<\/p>\n      <\/div>\n      <div class=\"feature\">\n        <div class=\"icon\">\ud83d\udd12<\/div>\n        <h3>Stays on your iPhone<\/h3>\n        <p>Your cycle and diary live only on your device. There is no MyPatch\n          server and no account to create.<\/p>\n      <\/div>\n    <\/div>\n  <\/section>\n\n  <!-- \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550 SCREENSHOTS \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550 -->\n  <section class=\"gallery\" id=\"screenshots\">\n    <div class=\"center\">\n      <h2>See it in action<\/h2>\n      <p class=\"lead\">A glance at the screens you&#8217;ll actually use every week.<\/p>\n    <\/div>\n\n    <div class=\"gallery-grid\">\n      <img decoding=\"async\" src=\"https:\/\/langsoftware.de\/wp-content\/uploads\/2026\/10\/mypatch_02_protection.jpg\" alt=\"Overview in dark mode with the protection status inside the progress ring.\" loading=\"lazy\">\n      <img decoding=\"async\" src=\"https:\/\/langsoftware.de\/wp-content\/uploads\/2026\/10\/mypatch_03_countdown.jpg\" alt=\"Card with the remaining days and the date of the next patch change.\" loading=\"lazy\">\n      <img decoding=\"async\" src=\"https:\/\/langsoftware.de\/wp-content\/uploads\/2026\/10\/mypatch_04_missed.jpg\" alt=\"Warning after a missed patch action with guidance on what to do next.\" loading=\"lazy\">\n      <img decoding=\"async\" src=\"https:\/\/langsoftware.de\/wp-content\/uploads\/2026\/10\/mypatch_05_calendar.jpg\" alt=\"Calendar showing past and upcoming patch days.\" loading=\"lazy\">\n      <img decoding=\"async\" src=\"https:\/\/langsoftware.de\/wp-content\/uploads\/2026\/10\/mypatch_06_diary.jpg\" alt=\"Diary with mood and period entries on the matching day.\" loading=\"lazy\">\n      <img decoding=\"async\" src=\"https:\/\/langsoftware.de\/wp-content\/uploads\/2026\/10\/mypatch_07_pause.jpg\" alt=\"Patch-free week with a countdown to the next patch.\" loading=\"lazy\">\n      <img decoding=\"async\" src=\"https:\/\/langsoftware.de\/wp-content\/uploads\/2026\/10\/mypatch_08_reminders.jpg\" alt=\"Reminder settings with time, repeats and a custom message.\" loading=\"lazy\">\n      <img decoding=\"async\" src=\"https:\/\/langsoftware.de\/wp-content\/uploads\/2026\/10\/mypatch_01_hero.jpg\" alt=\"Overview with the progress ring during the wearing phase.\" loading=\"lazy\">\n    <\/div>\n  <\/section>\n\n  <!-- \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550 PATCH MONTH \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550 -->\n  <section class=\"cycle\" id=\"cycle\">\n    <div class=\"cycle-inner\">\n      <div class=\"center\">\n        <h2>Three weeks on, one week off.<\/h2>\n        <p class=\"lead\">This is how a classic patch month runs in MyPatch \u2014 the app always knows which step comes next.<\/p>\n      <\/div>\n\n      <ol class=\"cycle-strip\">\n        <li class=\"week\">\n          <span class=\"day\">Day 1<\/span>\n          <h3>Apply patch 1<\/h3>\n          <p>This weekday becomes your change day for the whole month.<\/p>\n        <\/li>\n        <li class=\"week\">\n          <span class=\"day\">Day 8<\/span>\n          <h3>Change to patch 2<\/h3>\n          <p>Same weekday, one week later. Only ever wear one patch.<\/p>\n        <\/li>\n        <li class=\"week\">\n          <span class=\"day\">Day 15<\/span>\n          <h3>Change to patch 3<\/h3>\n          <p>The last patch of this month.<\/p>\n        <\/li>\n        <li class=\"week pause\">\n          <span class=\"day\">Day 22<\/span>\n          <h3>Remove, then 7 days off<\/h3>\n          <p>The withdrawal bleed usually comes now. On day 29 the next month starts with a new patch.<\/p>\n        <\/li>\n      <\/ol>\n\n      <p class=\"cycle-note\">\n        Different prescription? Patch count, wear time (up to 9 days) and the\n        length of the pause are adjustable in Settings. With Premium you can\n        also edit a single cycle right in the calendar.\n      <\/p>\n    <\/div>\n  <\/section>\n\n  <!-- \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550 PRICING \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550 -->\n  <section class=\"pricing\">\n    <div class=\"center\">\n      <h2>Free to start, Premium when you&#8217;re ready<\/h2>\n      <p class=\"lead\">Everything that matters for using the patch safely is free. Premium unlocks the rest.<\/p>\n    <\/div>\n\n    <div class=\"price-grid\">\n      <div class=\"price-card\">\n        <h3>Free<\/h3>\n        <p class=\"price\">\u20ac0<\/p>\n        <ul>\n          <li>Reminders to apply, change and remove, at the time you pick during setup<\/li>\n          <li>Progress ring with protection status<\/li>\n          <li>Guidance for missed actions and detached patches<\/li>\n          <li>Calendar for the next three months<\/li>\n          <li>Restock reminder when your patches run low<\/li>\n          <li>Custom calendar colours and dark mode<\/li>\n        <\/ul>\n      <\/div>\n      <div class=\"price-card featured\">\n        <span class=\"badge\">Recommended<\/span>\n        <h3>Premium<\/h3>\n        <p class=\"price\">Monthly or yearly \u2014 local price shown in the App Store<\/p>\n        <ul>\n          <li>Diary: mood, period, notes, appointments<\/li>\n          <li>Home Screen widget with ring and protection status<\/li>\n          <li>Unlimited calendar and cycle editor<\/li>\n          <li>Change reminder time and text at any time<\/li>\n          <li>24-hour advance and follow-up reminders<\/li>\n          <li>No ads<\/li>\n        <\/ul>\n      <\/div>\n    <\/div>\n  <\/section>\n\n  <!-- \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550 DOWNLOAD \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550 -->\n  <section class=\"download\">\n    <div class=\"download-inner\">\n      <h2>Get MyPatch \u2014 and never miss a change day again.<\/h2>\n      <p class=\"lead\">Free to download, set up in two minutes, and your next reminder is already scheduled.<\/p>\n      <div class=\"cta-row\">\n        <a href=\"https:\/\/apps.apple.com\/app\/id1024104862\" class=\"cta\">\n          <svg viewBox=\"0 0 24 24\" fill=\"currentColor\" aria-hidden=\"true\"><path d=\"M16.4 12.7c0-2.3 1.9-3.4 2-3.5-1.1-1.6-2.8-1.8-3.4-1.8-1.4-.1-2.8.9-3.5.9s-1.8-.9-3-.8c-1.5 0-2.9.9-3.7 2.3-1.6 2.7-.4 6.8 1.1 9 .8 1.1 1.7 2.3 2.9 2.3s1.6-.7 3-.7 1.8.7 3 .7 2-1.1 2.8-2.2c.9-1.2 1.2-2.4 1.2-2.5s-2.4-.9-2.4-3.7zM14.2 5.9c.6-.8 1-1.9.9-3-.9 0-2.1.6-2.7 1.4-.6.7-1.1 1.8-1 2.9 1 .1 2.1-.5 2.8-1.3z\"><\/path><\/svg>\n          Download on the App&nbsp;Store\n        <\/a>\n      <\/div>\n    <\/div>\n  <\/section>\n\n  <!-- \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550 FAQ \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550 -->\n  <section class=\"faq\">\n    <div class=\"center\">\n      <h2>Frequently asked<\/h2>\n      <p class=\"lead\">Quick answers to the questions we hear most.<\/p>\n    <\/div>\n\n    <details>\n      <summary>Is MyPatch a medical device?<\/summary>\n      <p>No. MyPatch is a reminder and tracking tool. It does not diagnose,\n        treat or prevent any condition, and it cannot replace the advice of\n        your doctor or pharmacist. Use it alongside professional medical\n        guidance, not instead of it.<\/p>\n    <\/details>\n\n    <details>\n      <summary>Which patches does MyPatch work with?<\/summary>\n      <p>MyPatch is made for weekly birth control patches such as Evra or\n        Apleek: three patches worn for 7 days each, followed by a 7-day\n        patch-free break. If your prescription differs, you can adjust the\n        number of patches, the wear time (up to 9 days) and the pause in\n        Settings.<\/p>\n    <\/details>\n\n    <details>\n      <summary>What if my patch comes off?<\/summary>\n      <p>Tap \u201cPatch came off\u201d on the overview. If it has been off for less\n        than 24 hours, apply a new patch \u2014 your change day stays the same.\n        If it has been 24 hours or more, apply a new patch right away:\n        today becomes day 1 of a new patch month with a new change day, and\n        you need a barrier method such as a condom for the next 7 days.\n        MyPatch counts those days down for you.<\/p>\n    <\/details>\n\n    <details>\n      <summary>What if I forget to apply, change or remove a patch?<\/summary>\n      <p>On the next launch MyPatch asks whether you did it anyway and\n        whether it was on time. If not, it shows the rule for that day: a\n        late first patch starts a new cycle with 7 days of backup\n        contraception; a change up to 48 hours late keeps your rhythm, more\n        than 48 hours starts a new cycle with backup; a late removal just\n        means removing the patch now. Always confirm these steps with your\n        doctor or pharmacist.<\/p>\n    <\/details>\n\n    <details>\n      <summary>What happens to my data?<\/summary>\n      <p>Your patch cycles, diary entries and settings stay on your iPhone \u2014\n        there is no MyPatch server and no account. The app sends crash\n        reports via Firebase Crashlytics, checks your Premium status with\n        RevenueCat, and shows ads from Google AdMob in the free version. See\n        the <a href=\"https:\/\/langsoftware.de\/?page_id=173\">Privacy Policy<\/a>\n        for the full breakdown.<\/p>\n    <\/details>\n\n    <details>\n      <summary>How much does Premium cost?<\/summary>\n      <p>Premium is a monthly or yearly subscription. The price varies by\n        country; the App Store shows it in your local currency right before\n        you confirm. You can cancel any time in your Apple Account\n        subscription settings.<\/p>\n    <\/details>\n\n    <details>\n      <summary>Is there an Android version?<\/summary>\n      <p>Not at the moment. MyPatch runs on iPhone with iOS 17 or later and\n        is available in English, German, French, Spanish and Brazilian\n        Portuguese.<\/p>\n    <\/details>\n  <\/section>\n\n  <!-- \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550 FOOTER \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550 -->\n  <footer class=\"page-footer\">\n    <nav>\n      <a href=\"https:\/\/www.apple.com\/legal\/internet-services\/itunes\/dev\/stdeula\/\">Terms of Use<\/a>\n      <a href=\"https:\/\/langsoftware.de\/?page_id=173\">Privacy Policy<\/a>\n      <a href=\"mailto:contact@langsoftware.de\">Contact<\/a>\n      <a href=\"https:\/\/apps.apple.com\/app\/id1024104862\">App Store<\/a>\n    <\/nav>\n    <p>\u00a9 2026 Sebastian Lang \u00b7 langsoftware.de<\/p>\n  <\/footer>\n","protected":false},"excerpt":{"rendered":"<p>MyPatch \u2014 Birth Control Patch Tracker for iPhone For iPhone Every patch change, right on time. MyPatch reminds you of every application, change and removal of your birth control patch \u2014 Evra, Apleek and similar. A progress ring shows where you are in your cycle and whether you&#8217;re protected; the calendar and diary keep track [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":2,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-518","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/langsoftware.de\/index.php?rest_route=\/wp\/v2\/pages\/518","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/langsoftware.de\/index.php?rest_route=\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/langsoftware.de\/index.php?rest_route=\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/langsoftware.de\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/langsoftware.de\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=518"}],"version-history":[{"count":4,"href":"https:\/\/langsoftware.de\/index.php?rest_route=\/wp\/v2\/pages\/518\/revisions"}],"predecessor-version":[{"id":528,"href":"https:\/\/langsoftware.de\/index.php?rest_route=\/wp\/v2\/pages\/518\/revisions\/528"}],"up":[{"embeddable":true,"href":"https:\/\/langsoftware.de\/index.php?rest_route=\/wp\/v2\/pages\/2"}],"wp:attachment":[{"href":"https:\/\/langsoftware.de\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=518"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}