diff --git a/bilby/gw/detector/strain_data.py b/bilby/gw/detector/strain_data.py
index 05499a3d37687362cdc40256ad83d49052399ff7..358a507d7f914412630c96a2ec1c2ab7bbb5b4e7 100644
--- a/bilby/gw/detector/strain_data.py
+++ b/bilby/gw/detector/strain_data.py
@@ -216,6 +216,7 @@ class InterferometerStrainData(object):
         if not len(self.frequency_array) == len(frequency_domain_strain):
             raise ValueError("The frequency_array and the set strain have different lengths")
         self._frequency_domain_strain = frequency_domain_strain
+        self._time_domain_strain = None
 
     def to_gwpy_timeseries(self):
         """
diff --git a/test/detector_test.py b/test/detector_test.py
index 2f225c719ad4827bcea861eef7ea23769dbb0d85..ffd40962addc52e450cf106524221544fb2936f2 100644
--- a/test/detector_test.py
+++ b/test/detector_test.py
@@ -366,6 +366,13 @@ class TestInterferometer(unittest.TestCase):
         expected = self.injection_polarizations['plus'] + self.injection_polarizations['cross'] + original_strain
         self.assertTrue(np.array_equal(expected, self.ifo.strain_data._frequency_domain_strain))
 
+    def test_inject_signal_from_waveform_polarizations_update_time_domain_strain(self):
+        original_td_strain = self.ifo.strain_data.time_domain_strain
+        self.ifo.get_detector_response = lambda x, params: x['plus'] + x['cross']
+        self.ifo.inject_signal_from_waveform_polarizations(parameters=self.parameters,
+                                                           injection_polarizations=self.injection_polarizations)
+        self.assertFalse(np.array_equal(original_td_strain, self.ifo.strain_data.time_domain_strain))
+
     def test_inject_signal_from_waveform_polarizations_meta_data(self):
         self.ifo.get_detector_response = lambda x, params: x['plus'] + x['cross']
         self.ifo.inject_signal_from_waveform_polarizations(parameters=self.parameters,