# Comment "timestamp" from API different from "Frame" in downloaded CSV

**URL:** <https://forum.frame.io/t/comment-timestamp-from-api-different-from-frame-in-downloaded-csv/3134>\
**Category:** Help\
**Created:** [January 21, 2026, 10:59pm UTC](https://forum.frame.io/t/comment-timestamp-from-api-different-from-frame-in-downloaded-csv/3134 "2026-01-21T22:59:45Z")\
**Posts on this page:** 7\
**Page:** 1

<div class="post-metadata">

**Author:** ![hc-evan](https://avatars.discourse-cdn.com/v4/letter/h/7c8e57/32.png) [@hc-evan](https://forum.frame.io/u/hc-evan)\
**Post date:** [January 21, 2026, 10:59pm UTC](https://forum.frame.io/t/comment-timestamp-from-api-different-from-frame-in-downloaded-csv/3134/1 "2026-01-21T22:59:45Z")

</div>

I’m pulling comments for an asset using the API with no issues, and all the data seems correct, except for _some_ of the timestamps.

Here’s an example:

**JSON Returned from the API:**

```auto
[

  {

    "id": "04a80657-0d99-4306-94db-457eb0b4c0aa",

    "timestamp": 0,

    "text": "love this 2 pop!",

    "updated_at": "2026-01-21T17:59:03.974753Z",

    "annotation": null,

    "page": null,

    "completed_at": null,

    "created_at": "2026-01-21T17:59:03.960879Z",

    "file_id": "b4dfcd3c-9f58-4749-9844-19f84619f0af",

    "completer_id": null,

    "text_edited_at": null

  },

  {

    "id": "354e8442-dc8c-4ec6-9398-63b32eab27a8",

    "timestamp": 60,

    "text": "is the statue too loud?",

    "updated_at": "2026-01-21T17:59:20.683019Z",

    "annotation": null,

    "page": null,

    "completed_at": null,

    "created_at": "2026-01-21T17:59:20.673710Z",

    "file_id": "b4dfcd3c-9f58-4749-9844-19f84619f0af",

    "completer_id": null,

    "text_edited_at": null

  },

  {

    "id": "8e096f0b-d439-4eb1-8634-d04926986cb9",

    "timestamp": 118,

    "text": "let's hear the red eye laser SFX more here please",

    "updated_at": "2026-01-21T17:59:37.369473Z",

    "annotation": null,

    "page": null,

    "completed_at": null,

    "created_at": "2026-01-21T17:59:37.359298Z",

    "file_id": "b4dfcd3c-9f58-4749-9844-19f84619f0af",

    "completer_id": null,

    "text_edited_at": null

  },

  {

    "id": "36c7fb56-229e-4e01-b47a-242856dcfcc6",

    "timestamp": 86,

    "text": "can the dialog be a little clearer?",

    "updated_at": "2026-01-21T17:59:57.598731Z",

    "annotation": null,

    "page": null,

    "completed_at": null,

    "created_at": "2026-01-21T17:59:57.588141Z",

    "file_id": "b4dfcd3c-9f58-4749-9844-19f84619f0af",

    "completer_id": null,

    "text_edited_at": null

  },

  {

    "id": "66df0ff2-a040-480c-9a66-608e124d468d",

    "timestamp": 144,

    "text": "bigger metal hit here",

    "updated_at": "2026-01-21T18:00:14.339622Z",

    "annotation": null,

    "page": null,

    "completed_at": null,

    "created_at": "2026-01-21T18:00:14.328541Z",

    "file_id": "b4dfcd3c-9f58-4749-9844-19f84619f0af",

    "completer_id": null,

    "text_edited_at": null

  },

  {

    "id": "1c04e4fd-5eba-416b-9062-1384b04a892c",

    "timestamp": 167,

    "text": "drop the explosion sound effects a hair",

    "updated_at": "2026-01-21T18:00:25.696204Z",

    "annotation": null,

    "page": null,

    "completed_at": null,

    "created_at": "2026-01-21T18:00:25.683260Z",

    "file_id": "b4dfcd3c-9f58-4749-9844-19f84619f0af",

    "completer_id": null,

    "text_edited_at": null

  }

]

```

**CSV of Comments Downloaded from the Asset Page**

> Workspace,Project,File,File URL,Version,Commenter,Comment ID,Comment,Reply,Commented At,Complete,Annotation,Suggested Text Edits,Frame,Duration,Timecode,Timecode In,Timecode Out,Timecode Source,Timecode Source In,Timecode Source Out,Time In,Time Out,Attachments  
> Heard City,HC-01672\_GEICO\_GECKO\_HOME,FANDUEL\_06\_012126 Web Mix.mp4, [Login - Frame.io](https://next.frame.io/project/c1fee33f-71be-405a-93f8-d8f9708af6ac/view/b4dfcd3c-9f58-4749-9844-19f84619f0af,1,Evan) Mangiamele,04a80657-0d99-4306-94db-457eb0b4c0aa,love this 2 pop!,no,2026-01-21 12:59:03 PM,no,no,no,0,0,00:00:00:00,00:00:00:00,00:00:00:00,00:59:58:00,00:59:58:00,00:59:58:00,00:00:00,00:00:00,  
> Heard City,HC-01672\_GEICO\_GECKO\_HOME,FANDUEL\_06\_012126 Web Mix.mp4, [Login - Frame.io](https://next.frame.io/project/c1fee33f-71be-405a-93f8-d8f9708af6ac/view/b4dfcd3c-9f58-4749-9844-19f84619f0af,1,Evan) Mangiamele,354e8442-dc8c-4ec6-9398-63b32eab27a8,is the statue too loud?,no,2026-01-21 12:59:20 PM,no,no,no,60,0,00:00:02:12,00:00:02:12,00:00:02:12,01:00:00:12,01:00:00:12,01:00:00:12,00:00:02,00:00:02,  
> Heard City,HC-01672\_GEICO\_GECKO\_HOME,FANDUEL\_06\_012126 Web Mix.mp4, [Login - Frame.io](https://next.frame.io/project/c1fee33f-71be-405a-93f8-d8f9708af6ac/view/b4dfcd3c-9f58-4749-9844-19f84619f0af,1,Evan) Mangiamele,36c7fb56-229e-4e01-b47a-242856dcfcc6,can the dialog be a little clearer?,no,2026-01-21 12:59:57 PM,no,no,no,86,0,00:00:03:14,00:00:03:14,00:00:03:14,01:00:01:14,01:00:01:14,01:00:01:14,00:00:03,00:00:03,  
> Heard City,HC-01672\_GEICO\_GECKO\_HOME,FANDUEL\_06\_012126 Web Mix.mp4, [Login - Frame.io](https://next.frame.io/project/c1fee33f-71be-405a-93f8-d8f9708af6ac/view/b4dfcd3c-9f58-4749-9844-19f84619f0af,1,Evan) Mangiamele,8e096f0b-d439-4eb1-8634-d04926986cb9,let’s hear the red eye laser SFX more here please,no,2026-01-21 12:59:37 PM,no,no,no,117,0,00:00:04:21,00:00:04:21,00:00:04:21,01:00:02:21,01:00:02:21,01:00:02:21,00:00:04,00:00:04,  
> Heard City,HC-01672\_GEICO\_GECKO\_HOME,FANDUEL\_06\_012126 Web Mix.mp4, [Login - Frame.io](https://next.frame.io/project/c1fee33f-71be-405a-93f8-d8f9708af6ac/view/b4dfcd3c-9f58-4749-9844-19f84619f0af,1,Evan) Mangiamele,66df0ff2-a040-480c-9a66-608e124d468d,bigger metal hit here,no,2026-01-21 01:00:14 PM,no,no,no,144,0,00:00:06:00,00:00:06:00,00:00:06:00,01:00:04:00,01:00:04:00,01:00:04:00,00:00:06,00:00:06,  
> Heard City,HC-01672\_GEICO\_GECKO\_HOME,FANDUEL\_06\_012126 Web Mix.mp4, [Login - Frame.io](https://next.frame.io/project/c1fee33f-71be-405a-93f8-d8f9708af6ac/view/b4dfcd3c-9f58-4749-9844-19f84619f0af,1,Evan) Mangiamele,1c04e4fd-5eba-416b-9062-1384b04a892c,drop the explosion sound effects a hair,no,2026-01-21 01:00:25 PM,no,no,no,166,0,00:00:06:22,00:00:06:22,00:00:06:22,01:00:04:22,01:00:04:22,01:00:04:22,00:00:06,00:00:06,

2 of the comments have inconsistent frame numbers. Interestingly, when I return the comments as timecode from the API, the values match the “Timecode Source” values.

Here’s that JSON as well:

```auto
[

  {

    "id": "04a80657-0d99-4306-94db-457eb0b4c0aa",

    "timestamp": "00:59:58:00",

    "text": "love this 2 pop!",

    "updated_at": "2026-01-21T17:59:03.974753Z",

    "annotation": null,

    "page": null,

    "completed_at": null,

    "created_at": "2026-01-21T17:59:03.960879Z",

    "file_id": "b4dfcd3c-9f58-4749-9844-19f84619f0af",

    "text_edited_at": null,

    "completer_id": null

  },

  {

    "id": "354e8442-dc8c-4ec6-9398-63b32eab27a8",

    "timestamp": "01:00:00:12",

    "text": "is the statue too loud?",

    "updated_at": "2026-01-21T17:59:20.683019Z",

    "annotation": null,

    "page": null,

    "completed_at": null,

    "created_at": "2026-01-21T17:59:20.673710Z",

    "file_id": "b4dfcd3c-9f58-4749-9844-19f84619f0af",

    "text_edited_at": null,

    "completer_id": null

  },

  {

    "id": "8e096f0b-d439-4eb1-8634-d04926986cb9",

    "timestamp": "01:00:02:21",

    "text": "let's hear the red eye laser SFX more here please",

    "updated_at": "2026-01-21T22:37:25.932023Z",

    "annotation": null,

    "page": null,

    "completed_at": "2026-01-21T22:37:25.922865Z",

    "created_at": "2026-01-21T17:59:37.359298Z",

    "file_id": "b4dfcd3c-9f58-4749-9844-19f84619f0af",

    "text_edited_at": null,

    "completer_id": "53101c87-f76f-4aa2-bc26-aa30c804c1ba"

  },

  {

    "id": "36c7fb56-229e-4e01-b47a-242856dcfcc6",

    "timestamp": "01:00:01:14",

    "text": "can the dialog be a little clearer?",

    "updated_at": "2026-01-21T17:59:57.598731Z",

    "annotation": null,

    "page": null,

    "completed_at": null,

    "created_at": "2026-01-21T17:59:57.588141Z",

    "file_id": "b4dfcd3c-9f58-4749-9844-19f84619f0af",

    "text_edited_at": null,

    "completer_id": null

  },

  {

    "id": "66df0ff2-a040-480c-9a66-608e124d468d",

    "timestamp": "01:00:04:00",

    "text": "bigger metal hit here",

    "updated_at": "2026-01-21T18:00:14.339622Z",

    "annotation": null,

    "page": null,

    "completed_at": null,

    "created_at": "2026-01-21T18:00:14.328541Z",

    "file_id": "b4dfcd3c-9f58-4749-9844-19f84619f0af",

    "text_edited_at": null,

    "completer_id": null

  },

  {

    "id": "1c04e4fd-5eba-416b-9062-1384b04a892c",

    "timestamp": "01:00:04:22",

    "text": "drop the explosion sound effects a hair",

    "updated_at": "2026-01-21T18:00:25.696204Z",

    "annotation": null,

    "page": null,

    "completed_at": null,

    "created_at": "2026-01-21T18:00:25.683260Z",

    "file_id": "b4dfcd3c-9f58-4749-9844-19f84619f0af",

    "text_edited_at": null,

    "completer_id": null

  }

]

```

any idea what’s going on there? I could use the timecode values instead but it’s a bit of a head scratcher.

---

<div class="post-metadata">

**Author:** ![CharlieAnderson](https://yyz1.discourse-cdn.com/flex035/user_avatar/forum.frame.io/charlieanderson/32/491_2.png) [@CharlieAnderson](https://forum.frame.io/u/CharlieAnderson)\
**Post date:** [January 22, 2026, 3:44pm UTC](https://forum.frame.io/t/comment-timestamp-from-api-different-from-frame-in-downloaded-csv/3134/2 "2026-01-22T15:44:35Z")

</div>

hi @hc-evan which 2 comments have the inconsistent frame numbers?

---

<div class="post-metadata">

**Author:** ![hc-evan](https://avatars.discourse-cdn.com/v4/letter/h/7c8e57/32.png) [@hc-evan](https://forum.frame.io/u/hc-evan)\
**Post date:** [January 22, 2026, 4:06pm UTC](https://forum.frame.io/t/comment-timestamp-from-api-different-from-frame-in-downloaded-csv/3134/3 "2026-01-22T16:06:05Z")

</div>

The last comment has a frame number of 166, and 167 from the API,  
`1c04e4fd-5eba-416b-9062-1384b04a892c,drop the explosion sound effects a hair,no,2026-01-21 01:00:25 PM,no,no,no,166,0,00:00:06:22,00:00:06:22,00:00:06:22,01:00:04:22,01:00:04:22,01:00:04:22,00:00:06,00:00:06,`

`{`  
` "id": "1c04e4fd-5eba-416b-9062-1384b04a892c",`  
` "timestamp": 167,`  
` "text": "drop the explosion sound effects a hair",`  
` "updated_at": "2026-01-21T18:00:25.696204Z",`  
` "annotation": null,`  
` "page": null,`  
` "completed_at": null,`  
` "created_at": "2026-01-21T18:00:25.683260Z",`  
` "file_id": "b4dfcd3c-9f58-4749-9844-19f84619f0af",`  
` "completer_id": null,`  
` "text_edited_at": null`  
` }`

And this one: frame 117 and 118 respectively:

`8e096f0b-d439-4eb1-8634-d04926986cb9,let’s hear the red eye laser SFX more here please,no,2026-01-21 12:59:37 PM,no,no,no,117,0,00:00:04:21,00:00:04:21,00:00:04:21,01:00:02:21,01:00:02:21,01:00:02:21,00:00:04,00:00:04,`

`{`  
` "id": "8e096f0b-d439-4eb1-8634-d04926986cb9",`  
` "timestamp": 118,`  
` "text": "let's hear the red eye laser SFX more here please",`  
` "updated_at": "2026-01-21T17:59:37.369473Z",`  
` "annotation": null,`  
` "page": null,`  
` "completed_at": null,`  
` "created_at": "2026-01-21T17:59:37.359298Z",`  
` "file_id": "b4dfcd3c-9f58-4749-9844-19f84619f0af",`  
` "completer_id": null,`  
` "text_edited_at": null`  
` }`

---

<div class="post-metadata">

**Author:** ![CharlieAnderson](https://yyz1.discourse-cdn.com/flex035/user_avatar/forum.frame.io/charlieanderson/32/491_2.png) [@CharlieAnderson](https://forum.frame.io/u/CharlieAnderson)\
**Post date:** [January 22, 2026, 4:54pm UTC](https://forum.frame.io/t/comment-timestamp-from-api-different-from-frame-in-downloaded-csv/3134/4 "2026-01-22T16:54:44Z")

</div>

Thanks for the info, I’ll pass along to the dev team. Seems to be consistently off by 1 frame correct?

---

<div class="post-metadata">

**Author:** ![hc-evan](https://avatars.discourse-cdn.com/v4/letter/h/7c8e57/32.png) [@hc-evan](https://forum.frame.io/u/hc-evan)\
**Post date:** [January 22, 2026, 5:10pm UTC](https://forum.frame.io/t/comment-timestamp-from-api-different-from-frame-in-downloaded-csv/3134/5 "2026-01-22T17:10:17Z")

</div>

Not all the comments are off, but i haven’t seen one off by more than 1 frame.

---

<div class="post-metadata">

**Author:** ![CharlieAnderson](https://yyz1.discourse-cdn.com/flex035/user_avatar/forum.frame.io/charlieanderson/32/491_2.png) [@CharlieAnderson](https://forum.frame.io/u/CharlieAnderson)\
**Post date:** [January 22, 2026, 5:54pm UTC](https://forum.frame.io/t/comment-timestamp-from-api-different-from-frame-in-downloaded-csv/3134/6 "2026-01-22T17:54:14Z")

</div>

Got it. I asked our devs and they responded with:

> “yes, ultimately the front end player and backend have to independently calculate the frame position based on the DB timestamp\_microseconds value. I did a bunch of testing to minimize these off by 1 errors, but the truth is that the rounding errors from two different systems that handle numbers (as floats or decimals etc) will cause this kind of issue.”

---

<div class="post-metadata">

**Author:** ![hc-evan](https://avatars.discourse-cdn.com/v4/letter/h/7c8e57/32.png) [@hc-evan](https://forum.frame.io/u/hc-evan)\
**Post date:** [January 22, 2026, 6:38pm UTC](https://forum.frame.io/t/comment-timestamp-from-api-different-from-frame-in-downloaded-csv/3134/7 "2026-01-22T18:38:16Z")

</div>

Appreciate the clarification. thank you
