diff --git a/src/components/Analysis/MonthlyAnalysis.tsx b/src/components/Analysis/MonthlyAnalysis.tsx
index e66f960076d486d9faba827e17d1ba468f118da0..dbe071720132403ca6d0197190bfca46c84b42b0 100644
--- a/src/components/Analysis/MonthlyAnalysis.tsx
+++ b/src/components/Analysis/MonthlyAnalysis.tsx
@@ -12,10 +12,11 @@ import Comparison from './Comparison/Comparison'
 import ElecHalfHourMonthlyAnalysis from './ElecHalfHourMonthlyAnalysis/ElecHalfHourMonthlyAnalysis'
 import IncompleteDataWarning from './IncompleteDataWarning/IncompleteDataWarning'
 import MaxConsumptionCard from './MaxConsumptionCard/MaxConsumptionCard'
+import './monthlyanalysis.scss'
+import NewsletterReminder from './NewsletterReminder/NewsletterReminder'
 import NoAnalysisModal from './NoKonnector/NoAnalysisModal'
 import ProfileComparator from './ProfileComparator/ProfileComparator'
 import TotalAnalysisChart from './TotalAnalysisChart/TotalAnalysisChart'
-import './monthlyanalysis.scss'
 
 interface MonthlyAnalysisProps {
   saveLastScrollPosition: () => void
@@ -28,8 +29,9 @@ const MonthlyAnalysis = ({
 }: MonthlyAnalysisProps) => {
   const client = useClient()
   const {
-    analysis: { analysisMonth },
+    analysis: { analysisMonth, haveSeenNewsletterReminder },
     global: { fluidStatus },
+    profile: { sendAnalysisNotification, isAnalysisReminderEnabled },
   } = useAppSelector(state => state.ecolyo)
 
   const consumptionService = useMemo(
@@ -61,6 +63,11 @@ const MonthlyAnalysis = ({
       percentageVariation: 0,
     })
 
+  const displayNewsletterReminder =
+    !sendAnalysisNotification &&
+    isAnalysisReminderEnabled &&
+    !haveSeenNewsletterReminder
+
   useEffect(() => {
     let subscribed = true
 
@@ -144,6 +151,12 @@ const MonthlyAnalysis = ({
       {!isLoadingAnalysis && (
         <Fade in={!isLoadingAnalysis}>
           <div className="analysis-root">
+            {displayNewsletterReminder && (
+              <div className="analysis-content">
+                <NewsletterReminder />
+              </div>
+            )}
+
             {incompleteDataFluids.length !== 0 && (
               <div className="analysis-content">
                 <IncompleteDataWarning
diff --git a/src/components/Analysis/NewsletterReminder/NewsletterReminder.spec.tsx b/src/components/Analysis/NewsletterReminder/NewsletterReminder.spec.tsx
new file mode 100644
index 0000000000000000000000000000000000000000..57bf702651418751945ae4f7a4ced613267a3280
--- /dev/null
+++ b/src/components/Analysis/NewsletterReminder/NewsletterReminder.spec.tsx
@@ -0,0 +1,18 @@
+import { render } from '@testing-library/react'
+import React from 'react'
+import { Provider } from 'react-redux'
+import { createMockEcolyoStore } from 'tests/__mocks__/store'
+import NewsletterReminder from './NewsletterReminder'
+
+describe('NewsletterReminder', () => {
+  const store = createMockEcolyoStore()
+
+  it('renders component correctly and have correct snapshot', async () => {
+    const { container } = render(
+      <Provider store={store}>
+        <NewsletterReminder />
+      </Provider>
+    )
+    expect(container).toMatchSnapshot()
+  })
+})
diff --git a/src/components/Analysis/NewsletterReminder/NewsletterReminder.tsx b/src/components/Analysis/NewsletterReminder/NewsletterReminder.tsx
new file mode 100644
index 0000000000000000000000000000000000000000..92d0c30dfc7bf9ba83150225198809bf0e28fa64
--- /dev/null
+++ b/src/components/Analysis/NewsletterReminder/NewsletterReminder.tsx
@@ -0,0 +1,58 @@
+import { Button } from '@material-ui/core'
+import CloseIcon from 'assets/icons/ico/close.svg'
+import StyledIconButton from 'components/CommonKit/IconButton/StyledIconButton'
+import { useI18n } from 'cozy-ui/transpiled/react/providers/I18n'
+import React from 'react'
+import { setHaveSeenNewsletterReminder } from 'store/analysis/analysis.slice'
+import { useAppDispatch } from 'store/hooks'
+import { updateProfile } from 'store/profile/profile.slice'
+import './newsletterReminder.scss'
+
+const NewsletterReminder = () => {
+  const { t } = useI18n()
+  const dispatch = useAppDispatch()
+
+  return (
+    <div className="newsletter-reminder">
+      <StyledIconButton
+        icon={CloseIcon}
+        sized={18}
+        onClick={() => dispatch(setHaveSeenNewsletterReminder(true))}
+        aria-label={t('analysis.newsletter_reminder.close')}
+        className="close-button"
+      />
+      <div className="text-container">
+        <h2 className="title text-20-bold">
+          {t('analysis.newsletter_reminder.title')}
+        </h2>
+        <p className="text-18-normal">
+          {t('analysis.newsletter_reminder.text')}
+        </p>
+      </div>
+      <div className="buttons">
+        <Button
+          className="btnPrimary"
+          onClick={() =>
+            dispatch(updateProfile({ sendAnalysisNotification: true }))
+          }
+        >
+          {t('analysis.newsletter_reminder.button')}
+        </Button>
+        <Button
+          classes={{
+            root: 'btnText',
+            label: 'text-16-normal stop-show',
+          }}
+          size="small"
+          onClick={() =>
+            dispatch(updateProfile({ isAnalysisReminderEnabled: false }))
+          }
+        >
+          {t('analysis.newsletter_reminder.stop_showing')}
+        </Button>
+      </div>
+    </div>
+  )
+}
+
+export default NewsletterReminder
diff --git a/src/components/Analysis/NewsletterReminder/__snapshots__/NewsletterReminder.spec.tsx.snap b/src/components/Analysis/NewsletterReminder/__snapshots__/NewsletterReminder.spec.tsx.snap
new file mode 100644
index 0000000000000000000000000000000000000000..bd881fec4b75b973494922ee89b9aba0b1815b8d
--- /dev/null
+++ b/src/components/Analysis/NewsletterReminder/__snapshots__/NewsletterReminder.spec.tsx.snap
@@ -0,0 +1,80 @@
+// Jest Snapshot v1, https://goo.gl/fbAQLP
+
+exports[`NewsletterReminder renders component correctly and have correct snapshot 1`] = `
+<div>
+  <div
+    class="newsletter-reminder"
+  >
+    <button
+      aria-label="analysis.newsletter_reminder.close"
+      class="MuiButtonBase-root MuiIconButton-root close-button"
+      tabindex="0"
+      type="button"
+    >
+      <span
+        class="MuiIconButton-label"
+      >
+        <svg
+          aria-hidden="true"
+          class="styles__icon___23x3R"
+          height="18"
+          width="18"
+        >
+          <use
+            xlink:href="#test-file-stub"
+          />
+        </svg>
+      </span>
+      <span
+        class="MuiTouchRipple-root"
+      />
+    </button>
+    <div
+      class="text-container"
+    >
+      <h2
+        class="title text-20-bold"
+      >
+        analysis.newsletter_reminder.title
+      </h2>
+      <p
+        class="text-18-normal"
+      >
+        analysis.newsletter_reminder.text
+      </p>
+    </div>
+    <div
+      class="buttons"
+    >
+      <button
+        class="MuiButtonBase-root MuiButton-root MuiButton-text btnPrimary"
+        tabindex="0"
+        type="button"
+      >
+        <span
+          class="MuiButton-label"
+        >
+          analysis.newsletter_reminder.button
+        </span>
+        <span
+          class="MuiTouchRipple-root"
+        />
+      </button>
+      <button
+        class="MuiButtonBase-root MuiButton-root btnText MuiButton-text MuiButton-textSizeSmall MuiButton-sizeSmall"
+        tabindex="0"
+        type="button"
+      >
+        <span
+          class="MuiButton-label text-16-normal stop-show"
+        >
+          analysis.newsletter_reminder.stop_showing
+        </span>
+        <span
+          class="MuiTouchRipple-root"
+        />
+      </button>
+    </div>
+  </div>
+</div>
+`;
diff --git a/src/components/Analysis/NewsletterReminder/newsletterReminder.scss b/src/components/Analysis/NewsletterReminder/newsletterReminder.scss
new file mode 100644
index 0000000000000000000000000000000000000000..e2366137e672b43c8c7f07b628cb076791f25f83
--- /dev/null
+++ b/src/components/Analysis/NewsletterReminder/newsletterReminder.scss
@@ -0,0 +1,46 @@
+@import 'src/styles/base/color';
+
+.newsletter-reminder {
+  position: relative;
+  display: flex;
+  flex-direction: column;
+  align-items: center;
+  text-align: center;
+  background: $grey-linear-gradient-background;
+  border: 1px solid $gold-shadow;
+  border-radius: 4px;
+  padding: 24px 16px 12px 16px;
+  gap: 16px;
+
+  .close-button {
+    position: absolute;
+    top: 0.5rem;
+    right: 0.5rem;
+    padding: 5px 5px;
+  }
+
+  .text-container {
+    h2 {
+      color: $gold-shadow;
+      margin: 0;
+      padding-inline: 1.5rem;
+    }
+    p {
+      color: $white;
+      margin: 0;
+    }
+  }
+
+  .buttons {
+    display: flex;
+    flex-direction: column;
+    gap: 12px;
+
+    button.btnPrimary {
+      max-width: 134px;
+    }
+    .stop-show {
+      color: $soft-grey;
+    }
+  }
+}
diff --git a/src/components/Options/GCU/GCUContent.tsx b/src/components/Options/GCU/GCUContent.tsx
index 74e8497044e1e57410fb1f6e055a93e6e219c703..d28c1813b5b6330e9bf58379bda337d192c878f6 100644
--- a/src/components/Options/GCU/GCUContent.tsx
+++ b/src/components/Options/GCU/GCUContent.tsx
@@ -33,7 +33,6 @@ const GCUContent = (): JSX.Element => {
         <p className="text-14-normal">{t('gcu.content.part3_1')}</p>
         <p className="text-14-normal">{t('gcu.content.part3_2')}</p>
         <p className="text-14-normal">{t('gcu.content.part3_3')}</p>
-        <p className="text-14-normal">{t('gcu.content.part3_4')}</p>
         <div className="gcu-content-part-title text-15-normal">
           {t('gcu.content.title4')}
         </div>
diff --git a/src/components/Options/GCU/__snapshots__/GCUContent.spec.tsx.snap b/src/components/Options/GCU/__snapshots__/GCUContent.spec.tsx.snap
index dfdcf4910c46f89db3fa3bebeeada71b8e3fc2e6..aae53698025d3288e876649d6e5c290f9511ecfa 100644
--- a/src/components/Options/GCU/__snapshots__/GCUContent.spec.tsx.snap
+++ b/src/components/Options/GCU/__snapshots__/GCUContent.spec.tsx.snap
@@ -91,11 +91,6 @@ exports[`GCUContent component should be rendered correctly 1`] = `
       >
         gcu.content.part3_3
       </p>
-      <p
-        class="text-14-normal"
-      >
-        gcu.content.part3_4
-      </p>
       <div
         class="gcu-content-part-title text-15-normal"
       >
diff --git a/src/components/Options/GCU/__snapshots__/GCUView.spec.tsx.snap b/src/components/Options/GCU/__snapshots__/GCUView.spec.tsx.snap
index 918984408f738a1e931094280581679954ed37ce..ccef8cdf4a8f02fc4a960aa2982fd905e54f8ece 100644
--- a/src/components/Options/GCU/__snapshots__/GCUView.spec.tsx.snap
+++ b/src/components/Options/GCU/__snapshots__/GCUView.spec.tsx.snap
@@ -100,11 +100,6 @@ exports[`GCUView component should be rendered correctly 1`] = `
         >
           gcu.content.part3_3
         </p>
-        <p
-          class="text-14-normal"
-        >
-          gcu.content.part3_4
-        </p>
         <div
           class="gcu-content-part-title text-15-normal"
         >
diff --git a/src/components/Terms/DataShareConsentContent.tsx b/src/components/Terms/DataShareConsentContent.tsx
index fe3d44045b16cdfbdd1ae3c4d17227077430940e..4f93b0955b8abecd581cdfc11ade2d8cb344f32c 100644
--- a/src/components/Terms/DataShareConsentContent.tsx
+++ b/src/components/Terms/DataShareConsentContent.tsx
@@ -15,9 +15,12 @@ const DataShareConsentContent = () => {
             ? t('dataShare.title1')
             : t('dataShare.title1Update')}
         </h1>
-        {!isFirstConnection && (
-          <p className="text-14-normal">{t('dataShare.title2Update')}</p>
-        )}
+        <p className="text-14-normal">
+          {isFirstConnection
+            ? t('dataShare.title2')
+            : t('dataShare.title2Update')}
+        </p>
+
         <p className="text-14-normal">{t('dataShare.part1')}</p>
         <p className="text-14-normal">{t('dataShare.part2')}</p>
         <p className="text-14-normal">{t('dataShare.part3')}</p>
diff --git a/src/components/Terms/TermsView.spec.tsx b/src/components/Terms/TermsView.spec.tsx
index 35a4a72802616b357522dfbdc25fab9f96c7a4dd..0c9e0a9c5e324ea38e73d2918bd4f424bfc2aab5 100644
--- a/src/components/Terms/TermsView.spec.tsx
+++ b/src/components/Terms/TermsView.spec.tsx
@@ -3,7 +3,11 @@ import { userEvent } from '@testing-library/user-event'
 import React from 'react'
 import { Provider } from 'react-redux'
 import * as storeHooks from 'store/hooks'
-import { createMockEcolyoStore } from 'tests/__mocks__/store'
+import {
+  createMockEcolyoStore,
+  mockGlobalState,
+  mockProfileState,
+} from 'tests/__mocks__/store'
 import { mockUpToDateTerm } from 'tests/__mocks__/termsData.mock'
 import TermsView from './TermsView'
 
@@ -94,4 +98,43 @@ describe('TermsView component', () => {
 
     expect(mockAppDispatch).toHaveBeenCalledTimes(4)
   })
+
+  it('should not display the newsletter checkbox if already subscribed', async () => {
+    const storeSubscribed = createMockEcolyoStore({
+      global: {
+        ...mockGlobalState,
+        termsStatus: { accepted: false, versionType: 'init' },
+      },
+      profile: { ...mockProfileState, sendAnalysisNotification: true },
+    })
+
+    const { container } = render(
+      <Provider store={storeSubscribed}>
+        <TermsView />
+      </Provider>
+    )
+    await waitFor(() => null, { container })
+
+    const [, , boxNewsletter] = screen.getAllByRole('checkbox')
+    expect(boxNewsletter).toBeUndefined()
+  })
+
+  it('should display the newsletter checkbox if not subscribed', async () => {
+    const storeNotSubscribed = createMockEcolyoStore({
+      global: {
+        ...mockGlobalState,
+        termsStatus: { accepted: false, versionType: 'init' },
+      },
+      profile: { ...mockProfileState, sendAnalysisNotification: false },
+    })
+    const { container } = render(
+      <Provider store={storeNotSubscribed}>
+        <TermsView />
+      </Provider>
+    )
+    await waitFor(() => null, { container })
+
+    const [, , boxNewsletter] = screen.getAllByRole('checkbox')
+    expect(boxNewsletter).toBeInTheDocument()
+  })
 })
diff --git a/src/components/Terms/TermsView.tsx b/src/components/Terms/TermsView.tsx
index ed963d848ddae17dfec7f0d121e7bfe56c464036..2fe23fa17f37b8dd1f728184ef9850f3a4540526 100644
--- a/src/components/Terms/TermsView.tsx
+++ b/src/components/Terms/TermsView.tsx
@@ -6,6 +6,7 @@ import { useNavigate } from 'react-router-dom'
 import TermsService from 'services/terms.service'
 import { updateTermsStatus } from 'store/global/global.slice'
 import { useAppDispatch, useAppSelector } from 'store/hooks'
+import { updateProfile } from 'store/profile/profile.slice'
 import CGUModal from './CGUModal'
 import DataShareConsentContent from './DataShareConsentContent'
 import LegalNoticeModal from './LegalNoticeModal'
@@ -17,7 +18,11 @@ const TermsView = () => {
   const client = useClient()
   const navigate = useNavigate()
   const dispatch = useAppDispatch()
-  const { termsStatus } = useAppSelector(state => state.ecolyo.global)
+  const {
+    global: { termsStatus },
+    profile: { sendAnalysisNotification },
+  } = useAppSelector(state => state.ecolyo)
+  const [acceptNewsletter, setAcceptNewsletter] = useState(false)
   const [GCUValidation, setGCUValidation] = useState(false)
   const [dataConsentValidation, setDataConsentValidation] = useState(false)
   const [openCGUModal, setOpenCGUModal] = useState(false)
@@ -34,8 +39,12 @@ const TermsView = () => {
         })
       )
     }
+
+    if (acceptNewsletter) {
+      dispatch(updateProfile({ sendAnalysisNotification: true }))
+    }
     navigate('/consumption')
-  }, [dispatch, client, navigate])
+  }, [client, acceptNewsletter, navigate, dispatch])
 
   return (
     <div className="terms-wrapper">
@@ -85,6 +94,20 @@ const TermsView = () => {
                 <span>{t('dataShare.validLegal2')}</span>
               </div>
             </label>
+            {!sendAnalysisNotification && (
+              <label htmlFor="newsletter" className="inline">
+                <input
+                  id="newsletter"
+                  type="checkbox"
+                  className="inputCheckbox"
+                  onChange={e => setAcceptNewsletter(e.target.checked)}
+                  checked={acceptNewsletter}
+                />
+                <div>
+                  <span>{t('dataShare.acceptNewsletter')}</span>
+                </div>
+              </label>
+            )}
           </div>
           <div className="terms-footer">
             <Button
diff --git a/src/components/Terms/__snapshots__/CGUModal.spec.tsx.snap b/src/components/Terms/__snapshots__/CGUModal.spec.tsx.snap
index f69973105e2cbc74de85d13dc090441c4242e447..fba795cb09444cde38151b2c62da860d749f20c1 100644
--- a/src/components/Terms/__snapshots__/CGUModal.spec.tsx.snap
+++ b/src/components/Terms/__snapshots__/CGUModal.spec.tsx.snap
@@ -150,11 +150,6 @@ exports[`CGUModal component should be rendered correctly 1`] = `
             >
               gcu.content.part3_3
             </p>
-            <p
-              class="text-14-normal"
-            >
-              gcu.content.part3_4
-            </p>
             <div
               class="gcu-content-part-title text-15-normal"
             >
diff --git a/src/components/Terms/__snapshots__/DataShareConsentContent.spec.tsx.snap b/src/components/Terms/__snapshots__/DataShareConsentContent.spec.tsx.snap
index 69141d0536a316b3162f78c838aab7612e51e4a4..1a3d6f325acb6475bb6df19011318675a2c9a2f8 100644
--- a/src/components/Terms/__snapshots__/DataShareConsentContent.spec.tsx.snap
+++ b/src/components/Terms/__snapshots__/DataShareConsentContent.spec.tsx.snap
@@ -13,6 +13,11 @@ exports[`DataShareConsentContent component should be rendered correctly with fir
       >
         dataShare.title1
       </h1>
+      <p
+        class="text-14-normal"
+      >
+        dataShare.title2
+      </p>
       <p
         class="text-14-normal"
       >
diff --git a/src/db/profileData.ts b/src/db/profileData.ts
index e6b02f585913c10d51b800de352c1a0bc86018ea..e045626a4857bb80e5da8c779f4c60c79d82ec6e 100644
--- a/src/db/profileData.ts
+++ b/src/db/profileData.ts
@@ -9,22 +9,23 @@ const profileData: Omit<ProfileEntity, 'id'> = {
   explorationHash: '',
   haveSeenEcogestureModal: false,
   haveSeenLastAnalysis: true,
+  isAnalysisReminderEnabled: true,
   isFirstConnection: true,
   isProfileEcogestureCompleted: false,
   isProfileTypeCompleted: false,
   lastConnectionDate: '0000-01-01T00:00:00.000Z',
   mailToken: '',
   monthlyAnalysisDate: '0000-01-01T00:00:00.000Z',
+  onboarding: {
+    isWelcomeSeen: false,
+  },
   partnersIssueSeenDate: {
     enedis: '0000-01-01T00:00:00.000Z',
     egl: '0000-01-01T00:00:00.000Z',
     grdf: '0000-01-01T00:00:00.000Z',
   },
   quizHash: '',
-  onboarding: {
-    isWelcomeSeen: false,
-  },
-  sendAnalysisNotification: true,
+  sendAnalysisNotification: false,
   sendConsumptionAlert: false,
   waterDailyConsumptionLimit: 0,
 }
diff --git a/src/locales/fr.json b/src/locales/fr.json
index d73adfe65284f50e3527ad440ffe2308d3d9155c..5748f650309d1319f7960fb8c400feec263288fe 100644
--- a/src/locales/fr.json
+++ b/src/locales/fr.json
@@ -126,6 +126,13 @@
         "data_info": "Données Météo France issues de la station météo Lyon Bron.",
         "close": "Fermer la fenêtre"
       }
+    },
+    "newsletter_reminder": {
+      "title": "Envie d'être averti de votre dernier bilan\u00a0?",
+      "text": "Recevez chaque mois votre bilan ainsi que des conseils saisonniers par mail.",
+      "button": "Je m'inscris",
+      "stop_showing": "Ne plus afficher",
+      "close": "Fermer la fenêtre"
     }
   },
   "analysis_error_modal": {
@@ -693,16 +700,17 @@
   "dataShare": {
     "title1": "Bienvenue !",
     "title1Update": "Ecolyo évolue !",
+    "title2": "Vous accédez pour la première fois à Ecolyo. Pour cela, nul besoin de vous créer un compte. ",
     "title2Update": "Pour continuer à utiliser Ecolyo, merci d’accepter les modalités de traitement des données ci-dessous.",
-    "part1": "Nous avons besoin de l’adresse email utilisée lors de la création de votre Cozy Métropole de Lyon, ci-après nommé cloud personnel.",
+    "part1": "Pour le bon fonctionnement du service, nous avons besoin de l’adresse email utilisée lors de la création de votre Cozy Métropole de Lyon.",
     "part2": "Cette donnée de compte est conservée dans Ecolyo le temps de l’utilisation de ce service.",
     "part3": "La Métropole de Lyon utilisera cet email afin de vous tenir informé·e\u00a0:",
     "item1": "En réponse à vos demandes, si vous avez pris l’initiative de nous contacter.",
     "item2": "En cas de problème majeur avec la gestion de votre compte.",
-    "item3": "De l’évolution de vos consommations, des nouveautés et  de la qualité du service via une lettre mensuelle. Vous pouvez à tout moment vous désinscrire de cette lettre via la page Options du service.",
+    "item3": "De l’évolution de vos consommations, des nouveautés et  de la qualité du service via une lettre mensuelle. Vous pouvez à tout moment vous inscrire ou désinscrire de cette lettre via la page Options du service.",
     "part4": "Vos données privées de consommation d’énergie et d’eau sont récupérées, sauvegardées et stockées dans votre cloud personnel à votre initiative sans visibilité de la Métropole  de Lyon sur leur contenu.",
-    "part5": "Il en est de même pour les données privées de composition du logement et du foyer, fournies par vos soins. Elles restent également sans visibilité de la Métropole de Lyon sur leur contenu.\nLes données d’identification entrées lors de la connexion aux données de consommations d’électricité sont quant à elles conservées dans un espace sécurisé de la Métropole de Lyon et sont utilisées uniquement à des fins de contrôle du consentement par des organismes extérieurs.",
-    "part6": "Dans le cadre de l’évaluation et de l’amélioration du service, des données d’utilisation anonymisées et pseudonymisées seront remontées à des fins d’exploitation statistiques. La récupération de ces statistiques nous permettra de s’assurer du bon fonctionnement technique de la connexion à vos données de consommation, d’évaluer globalement l’usage de l’application via des mesures d’audience ainsi que d’évaluer à terme l’impact global en termes de baisse des consommations énergétiques de notre service.",
+    "part5": "Il en est de même pour les données privées de composition du logement et du foyer, fournies par vos soins. Elles restent également sans visibilité de la Métropole de Lyon sur leur contenu.\nLes données d’identification entrées lors de la connexion aux données de consommations d’électricité et de gaz sont quant à elles conservées dans un espace sécurisé de la Métropole de Lyon et sont utilisées uniquement à des fins de contrôle du consentement par des organismes extérieurs.",
+    "part6": "Dans le cadre de l’évaluation et de l’amélioration du service, des données d’utilisation anonymisées et pseudonymisées seront remontées à des fins d’exploitation statistiques. La récupération de ces statistiques nous permettra de garantir le bon fonctionnement technique de la connexion à vos données de consommation, d’évaluer globalement l’usage de l’application via des mesures d’audience ainsi que d’évaluer à terme l’impact global en termes de baisse des consommations énergétiques de notre service.",
     "part7": "Au sein de votre cloud personnel, vous pouvez à tout moment exercer vos droits d’accès, de rectification, de portabilité, de limitation et d’opposition en consultant notamment la page Options.",
     "part8": "Vous pouvez également exercer vos droits d’accès, de rectification, de limitation, d’opposition et d’effacement de vos données personnelles en contactant directement le Délégué à la Protection des Données par courrier en écrivant à l’adresse :",
     "part9": "Métropole de Lyon – Délégué à la Protection des Données - Direction des Assemblées, des Affaires Juridiques et des Assurances - 20, rue du Lac - BP 33569 - 69505 Lyon Cedex 03 ",
@@ -714,6 +722,7 @@
     "validLegal": " du service et ai pris connaissance des ",
     "validLegal_button": "Mentions Légales",
     "validLegal2": "de celui-ci. *",
+    "acceptNewsletter": "Je souhaite recevoir tous les mois un bilan de mes consommations ainsi que des conseils spécifiques.",
     "button_accept": "C'est parti !",
     "accessibility": {
       "button_accept": "Accepter les conditions générales d'utilisation"
@@ -725,48 +734,47 @@
   },
   "gcu": {
     "title": "Conditions générales d’utilisation du service",
-    "version": "Version du 12.12.2022",
+    "version": "Version du 20.09.2024",
     "content": {
       "title1": "Ecolyo, késako\u00a0?",
       "part1_1": "Ecolyo est un service proposé par la Métropole de Lyon vous permettant de suivre au même endroit vos consommations d’électricité, de gaz et d’eau, en kWh, en litres, en euros et à différentes échelles de temps. Ce service vous permet également de participer à des défis individuels et vous offre une analyse de vos consommations. Des astuces vous sont aussi proposées afin de vous permettre de réduire vos consommations.",
-      "part1_2": "C’est un service gratuit qui prend la forme d’un site web dit « responsive », c’est-à-dire qu’il peut être consulté sur ordinateur ou sur mobile. Sur mobile, c’est une application que l’on a souhaitée ergonomique, réactive et esthétique pour votre plaisir de navigation et d’utilisation au quotidien.",
+      "part1_2": "C’est un service gratuit qui prend la forme d’un site web dit « responsive », c’est-à-dire qu’il peut être consulté sur ordinateur ou sur mobile. Sur mobile, c’est une application que la Métropole a souhaitée ergonomique, réactive et esthétique pour votre plaisir de navigation et d’utilisation au quotidien.",
       "part1_3": "Tous les termes « techniques » sont définis en bas de page.",
       "title2": "Quelles fonctionnalités le service propose-t-il\u00a0?",
       "part2_1": "La fonctionnalité principale d’Ecolyo est la visualisation, au même endroit, de vos consommations d’électricité, de gaz et d’eau et ce, à différents pas de temps (de la demi-heure – uniquement pour l’électricité, à plusieurs années, en passant par les pas de temps journaliers et mensuels). La visualisation des consommations se fait en kWh pour l’énergie et en L pour l’eau ainsi qu’en euros (euros résultant d’un prix moyenné).",
-      "part2_2": "Au-delà de la visualisation de vos consommations et parce que nous souhaitons vous aider à diminuer ces consommations vous retrouverez plusieurs autres pages\u00a0: ",
-      "part2_2_list1": "Défis : Des quiz, et actions à mettre en place vous seront proposés pour vous pousser à réduire vos consommations.",
-      "part2_2_list2": "Astuces : Une liste d’astuces pour maîtriser ses consommations d’énergie et d’eau à trier par usage, et avec une possibilité de les adapter plus précisément à votre profil.",
-      "part2_2_list3": "Analyse : Une analyse de vos consommations réelles en comparaison à celle d’un foyer étant proche d’une vôtre.",
+      "part2_2": "Au-delà de la visualisation de vos consommations et parce que la Métropole souhaite vous aider à diminuer ces consommations, vous retrouverez plusieurs autres pages\u00a0: ",
+      "part2_2_list1": "Défis : Des quiz, et actions à mettre en place vous seront proposés pour vous encourager à réduire vos consommations.",
+      "part2_2_list2": "Astuces : Une liste d’astuces pour maîtriser ses consommations d’énergie et d’eau à trier par usage, et avec la possibilité de les adapter plus précisément à votre profil.",
+      "part2_2_list3": "Analyse : Une analyse de vos consommations réelles comparées à celle d’un foyer étant proche du vôtre.",
       "part2_3": "Pour la page Analyse ainsi que pour la partie personnalisation des astuces, des éléments supplémentaires sur votre profil vous seront demandés. L’ensemble de ces informations récoltées à l’aide du formulaire peuvent être modifiées par la suite.",
-      "part2_4": "Dernière page : la page Options dans laquelle vous pourrez vous abonner à un service d’alerte sur vos consommations d’eau, de quoi ajuster votre profil ou encore vous désabonner de la lettre mensuelle.",
+      "part2_4": "La dernière page est la page Options dans laquelle vous pourrez vous abonner à un service d’alerte sur vos consommations d’eau, ajuster votre profil ou encore vous abonner ou désabonner à la lettre mensuelle.",
       "title3": "Comment ai-je accès à mes données d’électricité, de gaz et d’eau\u00a0?",
       "part3_1": "Pour visualiser vos consommations réelles et profiter pleinement du potentiel de notre service, il vous faut au minimum un des trois compteurs communicants suivants : Linky (pour l’électricité), Gazpar (pour le gaz), Téléo (pour l’eau).",
-      "part3_2": "Ces compteurs sont opérés par les gestionnaires de réseaux. Pour Linky, c’est Enedis, le gestionnaire de réseau de distribution d’électricité. Pour Gazpar, GRDF est responsable de cette gestion. Et pour Téléo, c’est Eau Publique du Grand Lyon.",
-      "part3_3": "Ces acteurs sont responsables de la relève de vos données. Ces données servent notamment à votre fournisseur d’électricité, de gaz ou d’eau pour permettre la facturation de vos consommations d’énergie. Des fournisseurs d’électricité ou de gaz il y en a des dizaines. Les gestionnaires de réseaux (… et de votre compteur) ne sont qu’au nombre de trois. Nous avons donc décidé de travailler avec eux, au plus près de la donnée brute issue de vos compteurs.",
-      "part3_4": "Il vous faudra donc avoir un compte chez GRDF et Eau Publique du Grand Lyon pour accéder à vos données. Si vous n’en avez pas, il suffira de vous en créer un. Ceci ne sera à faire qu’une fois, au début.",
+      "part3_2": "Ces compteurs sont opérés par les gestionnaires de réseaux. Pour Linky, c’est Enedis, le gestionnaire de réseau de distribution d’électricité. Pour Gazpar, GRDF est responsable de cette gestion. Quant à Téléo, c’est Eau Publique du Grand Lyon.",
+      "part3_3": "Ces acteurs sont responsables de la relève de vos données. Ces données servent notamment à votre fournisseur d’électricité, de gaz ou d’eau pour permettre la facturation de vos consommations. Il existe des dizaines de fournisseurs d’électricité ou de gaz, mais seulement trois gestionnaires de réseaux. La Métropole a donc décidé de travailler avec ces derniers, au plus près de la donnée brute issue de vos compteurs.",
       "title4": "Ecolyo se trouve dans un cloud personnel Métropole de Lyon, qu’est-ce que cela signifie\u00a0?",
-      "part4_1": "Comme vous avez dû le remarquer, lors de votre première connexion à Ecolyo vous avez dû vous créer un compte Cozy Métropole de Lyon. Ce cloud personnel est un espace sécurisé porté par l’ambition de vous apporter visibilité, transparence et maîtrise sur l’usage de vos données personnelles, et dont les fonctionnalités vous permettant de récupérer, synchroniser, stocker et partager vos données avec les destinataires de votre choix.  Le service Ecolyo se déploie  à l’intérieur de cet espace protégé. Dans ce cloud personnel, vous pourrez accéder également à d’autres services. Toutes les données traitées par Ecolyo, mais aussi les autres services que vous seriez amenés à utiliser dans ce cloud personnel restent dans ce Cloud Personnel Grand Lyon et n’en sortent pas, sauf si vous décidez vous-même de partager vos données avec des tiers.",
+      "part4_1": "Comme vous avez dû le remarquer, lors de votre première connexion à Ecolyo vous avez dû vous créer un Cozy Métropole de Lyon. Ce cloud personnel est un espace sécurisé conçu pour vous apporter visibilité, transparence et maîtrise sur l’usage de vos données personnelles, et dont les fonctionnalités vous permettent de récupérer, synchroniser, stocker et partager vos données avec les destinataires de votre choix.  Le service Ecolyo se déploie  à l’intérieur de cet espace protégé. Dans ce cloud personnel, vous pourrez accéder également à d’autres services. Toutes les données traitées par Ecolyo, ainsi que celles des autres services que vous pourriez utiliser dans ce cloud personnel restent dans ce Cloud Personnel Grand Lyon et n’en sortent pas, sauf si vous décidez vous-même de partager vos données avec des tiers.",
       "part4_2": "Pour en savoir plus sur ce cloud et son utilisation, ainsi que la durée de conservation de vos données, vous pouvez lire les conditions générales d’utilisation du service <a href=\"https://manager.cozygrandlyon.cloud/tos/266b4226-8417-42fb-b911-41e86dae8581.pdf?locale=fr\">ici</a>.",
       "title5": "Et donc concrètement pour Ecolyo, quelles données sont collectées et qui y a accès\u00a0?",
-      "part5_1": "Pour qu’Ecolyo ait accès à vos données de consommations, vous devrez activer vos différents connecteurs. À ce moment-là, pour la connexion aux données de gaz et d’eau à travers un parcours qui vous conduira de manière intuitive sur le site de chacun des gestionnaires de réseaux concerné, vous pourrez donner votre consentement à partager ces données avec le Service Ecolyo, et ce pour une durée limitée dans le temps. Pour l’électricité, le don du consentement et la connexion aux données se fait directement dans notre service. Quid de la durée de ce consentement\u00a0? Pour les données électriques, elle est par défaut d'un an. Pour les données gaz, cela sera à vous de la définir (nous vous recommandons 1 an pour une expérience optimale). Les données utilisées pour vérifier la bonne connexion de vos données d’électricité sont stockées du côté de la Métropole de Lyon sur des serveurs sécurisés.",
+      "part5_1": "Pour qu’Ecolyo ait accès à vos données de consommations, vous devrez activer vos différents connecteurs. Via les parcours proposés par l’application, vous pourrez progressivement donner votre consentement et ainsi accéder à vos données de consommations. Une facture sera nécessaire afin de préciser vos numéros de compteurs. Le consentement est donné pour une durée limitée précisée dans les écrans. Les données utilisées pour vérifier la bonne connexion de vos données d’électricité sont stockées du côté de la Métropole de Lyon sur des serveurs sécurisés pendant 5 ans, ce qui relève de la prérogative des gestionnaires de réseau.",
       "part5_2": "Vos connecteurs, une fois configurés, permettent le transfert de vos données de consommations au service Ecolyo. Le transfert de ces données de consommation se fait sans que personne n’accède à leur contenu, pas même la Métropole de Lyon. En effet, ces données sont stockées et traitées directement dans votre cloud personnel qui en assure la protection. Tous les calculs, analyses et traitements sur ces données sont faites DANS votre espace personnel sans visibilité sur le contenu des données par la Métropole de Lyon.",
       "part5_3": "Vous pouvez bien sûr mettre fin à la récupération/ au transfert de vos données de consommation sur votre espace cloud personnel à tout moment et  à plusieurs niveaux : ",
       "part5_3_list1": "Vous pouvez supprimer le transfert quotidien de vos données en supprimant tout simplement le connecteur dans la page Consos (en bas).",
-      "part5_3_list2": "Pour supprimer l’ensemble de vos données ainsi que votre cloud personnel Métropole de Lyon, vous devez demander la suppression de votre cloud. Pour faire cela, rendez-vous dans les paramètres de votre cloud personnel via la barre blanche en haut d’Ecolyo et appuyez sur le bouton « Supprimer mon compte » dans la partie paramètres.",
-      "part5_4": "Des données sur le profil de votre foyer peuvent être également remplies au sein de l’application. Ces données s’enrichiront au fur et à mesure de votre utilisation du service avec d’autres informations : défis réalisés, étoiles gagnées, etc. L’ensemble de ces données restent à l’intérieur de votre cloud personnel, sans que personne n’y ait accès.",
-      "part5_5": "Enfin, afin de permettre une mise à jour quotidienne de vos données de consommations, vos identifiants Eau Publique du Grand Lyon, un jeton d’identification GRDF ainsi que vos numéros de compteurs sont stockés.",
+      "part5_3_list2": "Pour supprimer l’ensemble de vos données ainsi que votre cloud personnel Métropole de Lyon, vous devez demander la suppression de votre cloud. Pour faire cela, rendez-vous dans les paramètres de votre cloud personnel via la barre blanche en haut d’Ecolyo et appuyez sur le bouton « Supprimer mon compte » dans la page Paramètres.",
+      "part5_4": "Des données sur le profil de votre foyer peuvent être également remplies au sein de l’application. Ces données s’enrichiront au fur et à mesure de votre utilisation du service avec d’autres informations : défis réalisés, étoiles gagnées, etc. L’ensemble de ces données restent à l’intérieur de votre cloud personnel, sans droit de regard de la Métropole de Lyon.",
+      "part5_5": "Enfin, afin de permettre une mise à jour quotidienne de vos données de consommations, vos identifiants Eau Publique du Grand Lyon, dans le cas de l’eau, ainsi que vos informations d’identification entrées lors de votre première connexion sont stockées et utilisées dans le service.",
       "title6": "Personne n’a donc accès à mes données, pas même la Métropole de Lyon, vraiment\u00a0?",
-      "part6_1": "Conformément aux indications du paragraphe précédent, la Métropole de Lyon n’accède ni à vos données de consommations ni aux données utilisées via certaines fonctionnalités du service comme le formulaire (celui-là même qui permet l’analyse de vos consommations personnalisée ainsi qu’une sélection d’éco-gestes personnalisés). Toutes ces informations sont bien gardées au chaud dans votre cloud personnel Métropole de Lyon",
+      "part6_1": "Conformément aux indications du paragraphe précédent, la Métropole de Lyon n’accède ni à vos données de consommations ni aux données utilisées via certaines fonctionnalités du service comme le formulaire (celui-là même qui permet l’analyse de vos consommations personnalisée ainsi qu’une sélection d’astuces personnalisées). Toutes ces informations sont bien gardées au chaud dans votre cloud personnel Métropole de Lyon",
       "part6_2": "Seul vous pouvez accepter de partager vos données, documents ou fichiers privés avec la Métropole de Lyon, ses partenaires ou d’autres utilisateurs ou acteurs (publics ou privés) après recueil de votre consentement éclairé et par une action expresse de votre part.",
       "part6_3": "La Métropole de Lyon n'a cependant accès qu’à l’adresse email utilisée lors la création de votre cloud personnel Métropole de Lyon. Elle utilise cet email afin de vous tenir informé·e :",
-      "part6_3_list1": "En réponse à vos demandes, si vous avez pris l’initiative de nous contacter. ",
+      "part6_3_list1": "En réponse à vos demandes, si vous avez pris l’initiative de contacter la Métropole de Lyon. ",
       "part6_3_list2": "En cas de problème majeur avec la gestion de votre compte.",
-      "part6_3_list3": "De l’évolution de vos consommations, des nouveautés et  de la qualité du service via une lettre mensuelle. Vous pouvez à tout moment vous désinscrire de cette lettre via la page Options du service.",
-      "part6_4": "Elle stocke également les informations transmises lors de la connexion à l’électricité (nom, adresse postale). Ces informations doivent être stockées car la Métropole de Lyon est régulièrement contrôlée par Enedis et doit prouver détenir le consentement des personnes pour lesquelles elle va chercher la donnée.",
-      "part6_5": "Par ailleurs, et dans le cadre de l’évaluation et de l’amélioration du service, des données d’utilisation anonymisées seront remontées à des fins d’exploitation statistiques. La récupération de ces statistiques anonymisées nous permettra de s’assurer du bon fonctionnement technique de la connexion à vos données de consommation ainsi que d’évaluer l’impact global en termes de baisse des consommations énergétiques de notre service. Parmi ces statistiques, des mesures d’audience de la fréquentation des différentes pages du service sont réalisées. Vous pouvez, via la page Options, à tout instant, décider de vous opposer à la récupération de ces données d’utilisation.",
+      "part6_3_list3": "De l’évolution de vos consommations, des nouveautés et  de la qualité du service via une lettre mensuelle si vous y êtes inscrit. Vous pouvez à tout moment vous inscrire ou désinscrire de cette lettre via la page Options du service.",
+      "part6_4": "Elle stocke également les informations transmises lors de la connexion à l’électricité (nom, adresse postale) et au gaz (nom, code postal). Ces informations doivent être stockées car la Métropole de Lyon est régulièrement contrôlée par Enedis et GRDF et doit prouver détenir le consentement des personnes pour lesquelles elle va chercher la donnée.",
+      "part6_5": "Par ailleurs, et dans le cadre de l’évaluation et de l’amélioration du service, des données d’utilisation anonymisées seront remontées à des fins d’exploitation statistiques. La récupération de ces statistiques anonymisées permettra à la Métropole de LYon de s’assurer du bon fonctionnement technique de la connexion à vos données de consommation ainsi que d’évaluer l’impact global en termes de baisse des consommations énergétiques de notre service. Parmi ces statistiques, des mesures d’audience de la fréquentation des différentes pages du service sont réalisées. Vous pouvez, via la page Options, à tout instant, décider de vous opposer à la récupération de ces données d’utilisation.",
       "title8": "Encore des questions\u00a0?",
-      "part8_1": "N’hésitez pas à consulter la FAQ ou à nous contacter via le formulaire de contact présente sur l’ensemble des pages.",
-      "part8_2": "Dernière option, contactez-nous directement à <a href=\"mailto:ecolyo@grandlyon.com\">ecolyo(at)grandlyon.com</a>.",
+      "part8_1": "Il est possible de consulter la FAQ ou de contacter l’équipe via le formulaire de contact présent sur l’ensemble des pages.",
+      "part8_2": "Sinon, il est également possible de joindre directement à <a href=\"mailto:ecolyo@grandlyon.com\">ecolyo(at)grandlyon.com</a>.",
       "title9": "LEXIQUE",
       "part9_1_title": "Cloud personnel Métropole de Lyon : ",
       "part9_1_content": "Cloud personnel : appelé aussi le « domicile numérique », le cloud personnel est souvent réduit à un simple espace de stockage de documents mais il est bien plus que ça. C'est un espace individuel et sécurisé où vous pouvez accéder à des services sans exposer aucune donnée à l’extérieur. Vous seul pouvez y accéder, personne d'autre.",
@@ -920,7 +928,7 @@
   "legal": {
     "read_legal": "Lire les mentions légales",
     "title_legal": "Mentions légales & CGU",
-    "version": "Version du 12.12.2022",
+    "version": "Version du 20.09.2024",
     "site": "Site du service Ecolyo : <a href=\"https://ecolyo.com/\"> https://ecolyo.com/</a>",
     "adress": "Métropole de Lyon - 20, rue du Lac – CS 33569 - 69505 Lyon cedex 03",
     "phone": "Tél : (33) 4 78 63 40 40",
@@ -932,29 +940,29 @@
     "p3b": "Photographies : ",
     "p3": "sauf mention contraire, les photos sont la propriété de la Métropole de Lyon",
     "p4b": "Conception et Charte graphique : ",
-    "p4": "Florent Dufier",
+    "p4": "Métropole de Lyon, Sopra Steria",
     "p5b": "Réalisation technique : ",
     "p5": "Métropole de Lyon, Sopra Steria",
     "p6b": "Maintenance technique : ",
     "p6": "Délégation Développement économique, emploi & savoirs - Innovation numérique & systèmes d’information - Usages et services numériques - Développement des services numériques",
     "title1": "Crédits",
-    "part1": "Ce site est le résultat de développements spécifiques réalisés dans les langages Go, TypeScript, HTML et Sass. Les développements s’appuient sur plusieurs bibliothèques et frameworks libres : axios, cozy-bar, cozy-client, cozy-harvest-lib, cozy-scripts, cozy-ui, d3, global, lodash, luxon, node-sass, object-hash, react, react-dom, react-redux, react-router-dom, react-swipeable-views, redux-devtools-extension, sass-loader. Les tests de l’application s’appuient sur les bibliothèques et frameworks libres suivants: jest-junit, react-test-renderer, redux-mock-store. La pile technique intègre également les applications Cozy stack, Yarn, Docker, ACH. Les déploiements sont réalisés sur le registre hébergé chez Cozy. L’équipe de réalisation utilise au quotidien les applications GitLab, IceScrum, RocketChat, SonarQube.",
+    "part1": "Ce site est le résultat de développements spécifiques réalisés dans les langages Go, TypeScript, HTML et Sass. Les développements s’appuient sur plusieurs bibliothèques et frameworks libres : axios, cozy-bar, cozy-client, cozy-harvest-lib, cozy-scripts, cozy-ui, d3, global, lodash, luxon, node-sass, object-hash, react, react-dom, react-redux, react-router-dom, react-swipeable-views, redux-devtools-extension, sass-loader. Les tests de l’application s’appuient sur les bibliothèques et frameworks libres suivants: jest-junit, redux-mock-store. La pile technique intègre également les applications Cozy stack, Yarn, Docker, ACH. Les déploiements sont réalisés sur le registre hébergé chez Cozy. L’équipe de réalisation utilise au quotidien les applications GitLab, RocketChat, SonarQube.",
     "title2": "Traitement des données personnelles et droit d’accès, de modification et de suppression",
-    "part2": "Conformément à la réglementation en vigueur en matière de protection des données personnelles, le service Ecolyo a fait l’objet d’une inscription au registre des traitements de la Métropole de Lyon. Ecolyo fait partie de l’écosystème de services orientés « self data » déployés par la Métropole de Lyon avec l’ambition d’offrir aux usagers métropolitains les outils et les services leur permettant d’exercer directement leur droit à la portabilité, dans un cadre apte à garantir aussi bien la transparence et le contrôle sur l’usage de leurs données personnelles que l’exploitation directe du contenu de ces données selon leurs libres choix. Le self data est en effet selon la Fondation Internet Nouvelle Génération (FING) « la production, l’exploitation et le partage de données personnelles par les individus, sous leur contrôle et à leurs propres fins ». Au sein de cet environnement self data, la gestion des données s’appuie sur l’organisation suivante des rôles et responsabilités associées : ",
-    "part2-1": "Les partenaires du service GRDF et Eau Publique du Grand Lyon sont responsables exclusivement des seuls traitements de Données Personnelles relatifs à la collecte des données de consommation de gaz et d’eau de l’utilisateur et à leur transmission sur la plateforme de cloud personnel, après consentement de l’utilisateur.",
-    "part2-2": "Enedis est responsable de la collecte des données de consommation d’électricité et de leur mise à disposition à la Métropole de Lyon qui, elle en gère la transmission sur la plateforme du cloud personnel de l’utilisateur, après avoir récupéré le consentement de l’utilisateur.",
+    "part2": "Conformément à la réglementation en vigueur en matière de protection des données personnelles, le service Ecolyo a fait l’objet d’une inscription au registre des traitements de la Métropole de Lyon. Ecolyo fait partie de l’écosystème de services orientés « self data » déployés par la Métropole de Lyon avec l’ambition d’offrir aux usagers métropolitains les outils et les services leur permettant d’exercer directement leur droit à la portabilité, dans un cadre apte à garantir aussi bien la transparence et le contrôle sur l’usage de leurs données personnelles que l’exploitation directe du contenu de ces données selon leurs libres choix. Le self data était défini selon la Fondation Internet Nouvelle Génération (FING) « la production, l’exploitation et le partage de données personnelles par les individus, sous leur contrôle et à leurs propres fins ». Au sein de cet environnement self data, la gestion des données s’appuie sur l’organisation suivante des rôles et responsabilités associées : ",
+    "part2-1": "Eau Publique du Grand Lyon est responsable exclusivement des seuls traitements de Données Personnelles relatifs à la collecte des données de consommation de gaz et d’eau de l’utilisateur et à leur transmission sur la plateforme de cloud personnel, après consentement de l’utilisateur.",
+    "part2-2": "Enedis et GRDF sont responsables de la collecte des données de consommation d’électricité et de gaz et de leur mise à disposition à la Métropole de Lyon qui, elle en gère la transmission sur la plateforme du cloud personnel de l’utilisateur, après avoir récupéré le consentement de l’utilisateur.",
     "part2-3": "La Métropole de Lyon est responsable de traitement sur le périmètre du service Ecolyo qu’elle propose à l’usager, ainsi que des traitements nécessaires à la fourniture de la plateforme de cloud personnel qu’elle met à disposition de l’usager pour accéder au service Ecolyo. En sa qualité de responsable de ces traitements, elle collecte et traite : ",
     "part2-3-1": "Les données de compte de l’usager renseignées par l’usager au sein de son espace de cloud personnel Grand Lyon à des fins de gestion du compte et de communication avec l’usager ;",
     "part2-3-2": "Les données de compte de l’utilisateur lui permettant de connecter ses données d’électricité à Ecolyo ;",
     "part2-3-3": "Les données privées de consommation d’énergie et d’eau dont la récupération, la sauvegarde, le stockage, la synchronisation et le partage sur la plateforme de cloud personnel sont initiés par l’usager sans visibilité de la Métropole de Lyon sur leur contenu.",
     "part2-3-4": "Les données privées sur la composition du logement et du foyer de l’utilisateur, fournies par l’utilisateur lui-même au sein du service, sont traitées par le service sans visibilité de la Métropole de Lyon sur leur contenu.",
     "part2-3-5": "Des métriques d’usage du service anonymisées et remontées périodiquement afin d’améliorer la qualité du service et d’évaluer son impact (Plus d’informations sur la manière dont votre anonymat est bien préservé dans ce processus <a href=\"https://ecolyo.com/cloud_statistiques.html\">ici</a>).",
-    "part2-4": "La Métropole réalise également des mesures d’audience à l’aide de la solution Matomo. Afin de vous fournir un meilleur service et d’améliorer votre expérience d'utilisateur, nous utilisons des solutions de mesure d’audience qui utilisent la technologie des « cookies », des fichiers texte qui sont enregistrés sur votre ordinateur et qui permettent de générer des informations envoyées aux serveurs de mesure d’audience. Sur ces serveurs, l’adresse IP est anonymisée. Les données recueillies ont uniquement pour finalité de permettre d'analyser la fréquentation de nos pages afin d'en améliorer le contenu. Il s'agit de statistiques agrégées permettant de connaître le nombre de visites et de visiteurs différents, les pages les plus populaires, les chemins préférés, les niveaux d'activité par jour de la semaine et par heure de la journée, les principales erreurs etc. Vous avez cependant le droit de vous opposer à l’utilisation de ces cookies, et donc au traitement de vos données personnelles de navigation, en vous rendant dans la page Options de notre service.",
-    "part2-5": "L’usager est seul décisionnaire des finalités d’utilisation qu’il souhaite définir pour le traitement de ses données personnelles de consommation, à la suite de leur transmission par les partenaires du service Ecolyo sur son cloud personnel. Ainsi, dans le cadre de l’utilisation d’Ecolyo, l’usager ne recevra les données des partenaires du service : Enedis, GRDF et Eau Publique du Grand Lyon seulement qu’à sa demande expresse après la saisie de ses identifiants.",
+    "part2-4": "La Métropole réalise également des mesures d’audience à l’aide de la solution Matomo. Afin de vous fournir un meilleur service et d’améliorer votre expérience d'utilisateur, elle utilise des solutions de mesure d’audience qui utilisent la technologie des « cookies », des fichiers texte qui sont enregistrés sur votre ordinateur et qui permettent de générer des informations envoyées aux serveurs de mesure d’audience. Sur ces serveurs, l’adresse IP est anonymisée. Les données recueillies ont uniquement pour finalité de permettre d'analyser la fréquentation de nos pages afin d'en améliorer le contenu. Il s'agit de statistiques agrégées permettant de connaître le nombre de visites et de visiteurs différents, les pages les plus populaires, les chemins préférés, les niveaux d'activité par jour de la semaine et par heure de la journée, les principales erreurs etc. Vous avez cependant le droit de vous opposer à l’utilisation de ces cookies, et donc au traitement de vos données personnelles de navigation, en vous rendant dans la page Options de notre service.",
+    "part2-5": "L’usager est seul décisionnaire des finalités d’utilisation qu’il souhaite définir pour le traitement de ses données personnelles de consommation, à la suite de leur transmission par les partenaires du service Ecolyo sur son cloud personnel. Ainsi, dans le cadre de l’utilisation d’Ecolyo, l’usager ne recevra les données des partenaires du service : Enedis, GRDF et Eau Publique du Grand Lyon qu’à sa demande expresse après la saisie de ses identifiants.",
     "part2-6": "L’utilisateur est donc le seul à accéder :",
     "part2-6-1": "À ses données de consommation d’électricité horaires, journalières, hebdomadaires, mensuelles et annuelles.",
     "part2-6-2": "À ses données de consommation de gaz journalières, hebdomadaires, mensuelles et annuelles.",
-    "part2-6-3": "À ses données de consommation eau journalières, hebdomadaires, mensuelles et annuelles.",
+    "part2-6-3": "À ses données de consommation d'eau journalières, hebdomadaires, mensuelles et annuelles.",
     "part2-7": "Les engagements et responsabilités de la Métropole de Lyon concernant la protection des données et la confidentialité des données Ecolyo sont précisés dans les Mentions légales et les conditions d’utilisation du cloud personnel Grand Lyon qui accueille aujourd’hui le service Ecolyo et sans lequel le service ne peut pas fonctionner. Pour plus d’informations sur les engagements et responsabilités de la Métropole de Lyon concernant la protection et la confidentialité dans le cloud personnel, nous vous invitons à vous référer <a href=\"https://manager.cozygrandlyon.cloud/tos/266b4226-8417-42fb-b911-41e86dae8581.pdf?locale=fr\">aux mentions légales et CGU du cloud personnel métropolitain.</a> ",
     "part2-8": "Conformément à la loi 78-17 du 6 janvier 1978 modifiée relative à l’information, aux fichiers et aux libertés, vous disposez d’un droit d’accès, de rectification et d’opposition au traitement de vos données à caractère personnel. Votre cloud personnel vous permet d’exercer ces droits directement dans cet espace sur vos données de compte. S’agissant des données de consommations d’électricité et de gaz, l’utilisateur peut supprimer son consentement à partager ses données en supprimant son connecteur dans la page Consos.",
     "part2-9": "Vous pouvez également exercer vos droits d’accès, de rectification, de limitation, d’opposition et d’effacement de vos données personnelles en contactant directement le Délégué à la Protection des Données par courrier en écrivant à l’adresse :",
diff --git a/src/migrations/migration.data.ts b/src/migrations/migration.data.ts
index a5ec647e75ca998ecccff3f7c10d51b12689cfff..45dc38472c502ef7b50b720863b44fd9b2df7fa4 100644
--- a/src/migrations/migration.data.ts
+++ b/src/migrations/migration.data.ts
@@ -615,4 +615,18 @@ export const migrations: Migration[] = [
       })
     },
   },
+  {
+    baseSchemaVersion: 24,
+    targetSchemaVersion: 25,
+    appVersion: '3.1.0',
+    description: 'Initialize isAnalysisReminderEnabled in profile',
+    releaseNotes: null,
+    docTypes: PROFILE_DOCTYPE,
+    run: async (_client: Client, docs: Profile[]): Promise<Profile[]> => {
+      return docs.map(doc => {
+        doc.isAnalysisReminderEnabled = true
+        return doc
+      })
+    },
+  },
 ]
diff --git a/src/models/analysis.model.ts b/src/models/analysis.model.ts
index 62a9391f40499daef1d5aa106ff40703e5a6f729..5eb6c6cb7945998d550ee2f4e7ff3d7ae2c35485 100644
--- a/src/models/analysis.model.ts
+++ b/src/models/analysis.model.ts
@@ -3,4 +3,5 @@ import { DateTime } from 'luxon'
 export interface AnalysisState {
   period: 'month' | 'year'
   analysisMonth: DateTime
+  haveSeenNewsletterReminder: boolean
 }
diff --git a/src/models/profile.model.ts b/src/models/profile.model.ts
index c041fb23a5f8acd5a20d4cf83dc48a518374bad1..0b0abd58b8f62f998260e44b19df0ebbc18a70df 100644
--- a/src/models/profile.model.ts
+++ b/src/models/profile.model.ts
@@ -15,6 +15,7 @@ export interface ProfileEntity {
   lastConnectionDate: string
   haveSeenLastAnalysis: boolean
   sendAnalysisNotification: boolean
+  isAnalysisReminderEnabled: boolean
   monthlyAnalysisDate: string
   sendConsumptionAlert: boolean
   waterDailyConsumptionLimit: number
diff --git a/src/store/analysis/analysis.slice.spec.ts b/src/store/analysis/analysis.slice.spec.ts
index d8e8fec77c75d068a73da2098821f232de66d180..cfa64383ba5aea45ec3a75e69385264a731dc6a6 100644
--- a/src/store/analysis/analysis.slice.spec.ts
+++ b/src/store/analysis/analysis.slice.spec.ts
@@ -1,6 +1,11 @@
 import { DateTime } from 'luxon'
 import { mockAnalysisState } from 'tests/__mocks__/store'
-import { analysisSlice, setAnalysisMonth, setPeriod } from './analysis.slice'
+import {
+  analysisSlice,
+  setAnalysisMonth,
+  setHaveSeenNewsletterReminder,
+  setPeriod,
+} from './analysis.slice'
 
 describe('analysis reducer', () => {
   it('should return the initial state', () => {
@@ -33,4 +38,17 @@ describe('analysis reducer', () => {
       })
     })
   })
+
+  describe('setHaveSeenNewsletterReminder', () => {
+    it('should handle setHaveSeenNewsletterReminder', () => {
+      const state = analysisSlice.reducer(
+        mockAnalysisState,
+        setHaveSeenNewsletterReminder(true)
+      )
+      expect(state).toEqual({
+        ...mockAnalysisState,
+        haveSeenNewsletterReminder: true,
+      })
+    })
+  })
 })
diff --git a/src/store/analysis/analysis.slice.ts b/src/store/analysis/analysis.slice.ts
index 11eabac17c89f295762c5bf02b5ecdc10c45a866..bc2b12deaa4e8a66d411e52983409fcafd9c3d81 100644
--- a/src/store/analysis/analysis.slice.ts
+++ b/src/store/analysis/analysis.slice.ts
@@ -5,6 +5,7 @@ import { AnalysisState } from 'models'
 const initialState: AnalysisState = {
   period: 'month',
   analysisMonth: DateTime.local().minus({ months: 1 }).startOf('day'),
+  haveSeenNewsletterReminder: false,
 }
 
 export const analysisSlice = createSlice({
@@ -17,7 +18,11 @@ export const analysisSlice = createSlice({
     setAnalysisMonth: (state, action: PayloadAction<DateTime>) => {
       state.analysisMonth = action.payload
     },
+    setHaveSeenNewsletterReminder: (state, action: PayloadAction<boolean>) => {
+      state.haveSeenNewsletterReminder = action.payload
+    },
   },
 })
 
-export const { setPeriod, setAnalysisMonth } = analysisSlice.actions
+export const { setPeriod, setAnalysisMonth, setHaveSeenNewsletterReminder } =
+  analysisSlice.actions
diff --git a/src/styles/components/_buttons.scss b/src/styles/components/_buttons.scss
index ca1f7f8345d38588776604f15624d94da96903fe..c3cfc4fff498721495f1ecf7b1334eb8e518cfe3 100644
--- a/src/styles/components/_buttons.scss
+++ b/src/styles/components/_buttons.scss
@@ -22,8 +22,8 @@ button {
   }
 
   &.btnText {
-    text-decoration: underline;
     span {
+      text-decoration: underline;
       text-transform: none;
       font-weight: 400;
     }
diff --git a/tests/__mocks__/store/analysis.state.mock.ts b/tests/__mocks__/store/analysis.state.mock.ts
index 9c19d8e1d63b54d0f29d04a84ce2e3004a88ea47..8934561222754098eae6e9f7ff5efab3c62928d2 100644
--- a/tests/__mocks__/store/analysis.state.mock.ts
+++ b/tests/__mocks__/store/analysis.state.mock.ts
@@ -4,4 +4,5 @@ import { AnalysisState } from 'models'
 export const mockAnalysisState: AnalysisState = {
   period: 'month',
   analysisMonth: DateTime.local(2023, 1, 1).startOf('day'),
+  haveSeenNewsletterReminder: false,
 }