diff --git a/webrtc/api/rtcstats_integrationtest.cc b/webrtc/api/rtcstats_integrationtest.cc
index 903c8c8..6d14c46 100644
--- a/webrtc/api/rtcstats_integrationtest.cc
+++ b/webrtc/api/rtcstats_integrationtest.cc
@@ -442,12 +442,14 @@
         verifier.TestMemberIsUndefined(media_stream_track.frames_sent);
         verifier.TestMemberIsNonNegative<uint32_t>(
             media_stream_track.frames_received);
+        verifier.TestMemberIsNonNegative<uint32_t>(
+            media_stream_track.frames_decoded);
       } else {
         verifier.TestMemberIsNonNegative<uint32_t>(
             media_stream_track.frames_sent);
         verifier.TestMemberIsUndefined(media_stream_track.frames_received);
+        verifier.TestMemberIsUndefined(media_stream_track.frames_decoded);
       }
-      verifier.TestMemberIsUndefined(media_stream_track.frames_decoded);
       verifier.TestMemberIsUndefined(media_stream_track.frames_dropped);
       verifier.TestMemberIsUndefined(media_stream_track.frames_corrupted);
       verifier.TestMemberIsUndefined(media_stream_track.partial_frames_lost);
diff --git a/webrtc/api/rtcstatscollector.cc b/webrtc/api/rtcstatscollector.cc
index 27afcc1..e7929cb 100644
--- a/webrtc/api/rtcstatscollector.cc
+++ b/webrtc/api/rtcstatscollector.cc
@@ -440,6 +440,11 @@
         video_receiver_info.frame_height);
   }
   video_track_stats->frames_received = video_receiver_info.frames_received;
+  // TODO(hbos): When we support receiving simulcast, this should be the total
+  // number of frames correctly decoded, independent of which SSRC it was
+  // received from. Since we don't support that, this is correct and is the same
+  // value as "RTCInboundRTPStreamStats.framesDecoded". crbug.com/659137
+  video_track_stats->frames_decoded = video_receiver_info.frames_decoded;
   return video_track_stats;
 }
 
diff --git a/webrtc/api/rtcstatscollector_unittest.cc b/webrtc/api/rtcstatscollector_unittest.cc
index da5d41e..c5e8a9c 100644
--- a/webrtc/api/rtcstatscollector_unittest.cc
+++ b/webrtc/api/rtcstatscollector_unittest.cc
@@ -1543,6 +1543,7 @@
   video_receiver_info_ssrc3.frame_width = 6789;
   video_receiver_info_ssrc3.frame_height = 9876;
   video_receiver_info_ssrc3.frames_received = 2468;
+  video_receiver_info_ssrc3.frames_decoded = 1234;
 
   // Remote video track with undefined (default) values
   rtc::scoped_refptr<MediaStreamTrackInterface> remote_video_track_ssrc4 =
@@ -1557,6 +1558,7 @@
   video_receiver_info_ssrc4.frame_width = 0;
   video_receiver_info_ssrc4.frame_height = 0;
   video_receiver_info_ssrc4.frames_received = 0;
+  video_receiver_info_ssrc4.frames_decoded = 0;
 
   test_->CreateMockRtpSendersReceiversAndChannels(
       {}, {},
@@ -1632,6 +1634,7 @@
   expected_remote_video_track_ssrc3.frame_width = 6789;
   expected_remote_video_track_ssrc3.frame_height = 9876;
   expected_remote_video_track_ssrc3.frames_received = 2468;
+  expected_remote_video_track_ssrc3.frames_decoded = 1234;
   ASSERT_TRUE(report->Get(expected_remote_video_track_ssrc3.id()));
   EXPECT_EQ(expected_remote_video_track_ssrc3,
             report->Get(expected_remote_video_track_ssrc3.id())->cast_to<
@@ -1646,6 +1649,7 @@
   expected_remote_video_track_ssrc4.ended = false;
   expected_remote_video_track_ssrc4.detached = false;
   expected_remote_video_track_ssrc4.frames_received = 0;
+  expected_remote_video_track_ssrc4.frames_decoded = 0;
   // Should be undefined: |expected_remote_video_track_ssrc4.frame_width| and
   // |expected_remote_video_track_ssrc4.frame_height|.
   ASSERT_TRUE(report->Get(expected_remote_video_track_ssrc4.id()));
diff --git a/webrtc/api/stats/rtcstats_objects.h b/webrtc/api/stats/rtcstats_objects.h
index 0aa1192..3bbe228 100644
--- a/webrtc/api/stats/rtcstats_objects.h
+++ b/webrtc/api/stats/rtcstats_objects.h
@@ -267,7 +267,6 @@
   RTCStatsMember<double> frames_per_second;
   RTCStatsMember<uint32_t> frames_sent;
   RTCStatsMember<uint32_t> frames_received;
-  // TODO(hbos): Not collected by |RTCStatsCollector|. crbug.com/659137
   RTCStatsMember<uint32_t> frames_decoded;
   // TODO(hbos): Not collected by |RTCStatsCollector|. crbug.com/659137
   RTCStatsMember<uint32_t> frames_dropped;
