Seconds, milliseconds, and the year 1970 tell
Unix epoch time is the count of seconds since midnight UTC on 1 January 1970. JavaScript's Date constructor counts milliseconds since that same instant. Those are the same origin but a thousand-fold difference in unit, and that mismatch is the single most common reason this conversion goes wrong. Feed new Date() a count of seconds and it thinks you handed it milliseconds, so it lands a thousand times closer to 1970 than it should.
The symptom is unmistakable once you've seen it. A timestamp that should read 2024 comes out as January 1970, somewhere in the first three weeks. If your converted dates are clustered around 20 January 1970, you forgot the * 1000. If they're somewhere in the far future instead, you multiplied a millisecond timestamp that didn't need it.
There's a quick eyeball test. A current epoch-seconds value is ten digits (it crossed into ten digits in 2001 and stays there until 2286). A current epoch-milliseconds value is thirteen digits. Count the digits in your raw value before you write any code: ten means seconds, multiply; thirteen means milliseconds, don't. APIs are split roughly down the middle on which they hand you, and almost none of them say so in the field name, so checking the digit count beats trusting the docs.