diff --git a/runtime/flutter_runner/vsync_recorder.cc b/runtime/flutter_runner/vsync_recorder.cc
index 7593476..9f76b0e 100644
--- a/runtime/flutter_runner/vsync_recorder.cc
+++ b/runtime/flutter_runner/vsync_recorder.cc
@@ -20,18 +20,18 @@
 }  // namespace
 
 VsyncRecorder& VsyncRecorder::GetInstance() {
-  static VsyncRecorder vsync_manager;
-  return vsync_manager;
+  static VsyncRecorder vsync_recorder;
+  return vsync_recorder;
 }
 
 VsyncInfo VsyncRecorder::GetCurrentVsyncInfo() const {
   {
     std::unique_lock<std::mutex> lock(g_mutex);
-    if (last_presentation_info_set_) {
+    if (last_presentation_info_) {
       return {fml::TimePoint::FromEpochDelta(fml::TimeDelta::FromNanoseconds(
-                  last_presentation_info_.presentation_time)),
+                  last_presentation_info_->presentation_time)),
               fml::TimeDelta::FromNanoseconds(
-                  last_presentation_info_.presentation_interval)};
+                  last_presentation_info_->presentation_interval)};
     }
   }
   return {fml::TimePoint::Now(), kDefaultPresentationInterval};
@@ -40,13 +40,12 @@
 void VsyncRecorder::UpdateVsyncInfo(
     fuchsia::images::PresentationInfo presentation_info) {
   std::unique_lock<std::mutex> lock(g_mutex);
-  if (last_presentation_info_set_ &&
+  if (last_presentation_info_ &&
       presentation_info.presentation_time >
-          last_presentation_info_.presentation_time) {
+          last_presentation_info_->presentation_time) {
     last_presentation_info_ = presentation_info;
-  } else if (!last_presentation_info_set_) {
+  } else if (!last_presentation_info_) {
     last_presentation_info_ = presentation_info;
-    last_presentation_info_set_ = true;
   }
 }
 
diff --git a/runtime/flutter_runner/vsync_recorder.h b/runtime/flutter_runner/vsync_recorder.h
index 60c788d..87d501c 100644
--- a/runtime/flutter_runner/vsync_recorder.h
+++ b/runtime/flutter_runner/vsync_recorder.h
@@ -5,6 +5,8 @@
 #ifndef TOPAZ_RUNTIME_FLUTTER_RUNNER_VSYNC_RECORDER_H_
 #define TOPAZ_RUNTIME_FLUTTER_RUNNER_VSYNC_RECORDER_H_
 
+#include <optional>
+
 #include "flutter/fml/time/time_delta.h"
 #include "flutter/fml/time/time_point.h"
 #include "lib/fxl/macros.h"
@@ -36,8 +38,7 @@
  private:
   VsyncRecorder() = default;
 
-  fuchsia::images::PresentationInfo last_presentation_info_ = {};
-  bool last_presentation_info_set_ = false;
+  std::optional<fuchsia::images::PresentationInfo> last_presentation_info_;
 
   FXL_DISALLOW_COPY_ASSIGN_AND_MOVE(VsyncRecorder);
 };
