Timestamp Unix et fuseau horaire
Mis à jour : mai 2026
Un timestamp Unix n'a pas de fuseau horaire. Le fuseau intervient uniquement quand on transforme ce nombre en texte lisible pour un utilisateur.
Gratuit · sans upload · calcul local
Un timestamp est neutre
Le timestamp 1735689600 représente le même instant partout. En UTC, il s'affiche comme 2025-01-01 00:00:00. À Paris, il s'affiche comme 2025-01-01 01:00:00. À New York, il s'affiche comme 2024-12-31 19:00:00.
Le fuseau change l'affichage
Le même événement peut donc avoir une date calendaire différente selon le pays. Ce point explique beaucoup de bugs « off by one day » : un timestamp proche de minuit UTC peut être la veille ou le lendemain en heure locale.
Heure d'été et heure d'hiver
L'heure d'été ne modifie pas le timestamp. Elle modifie uniquement l'offset utilisé pour afficher l'heure locale. En Europe/Paris, l'offset peut être +01:00 ou +02:00 selon la date.
Bonne pratique
- Stockez l'instant en UTC ou en timestamp.
- Stockez le fuseau choisi par l'utilisateur séparément si nécessaire.
- Affichez avec une API timezone-aware :
Intl.DateTimeFormat,zoneinfo,AT TIME ZONE.
Exemple JavaScript
const date = new Date(1735689600 * 1000);
console.log(new Intl.DateTimeFormat('fr-FR', {
timeZone: 'Europe/Paris',
dateStyle: 'full',
timeStyle: 'long'
}).format(date));
Questions fréquentes
Un timestamp est-il toujours en UTC ?
Il est basé sur une référence UTC, mais il ne contient pas de fuseau. On dit souvent qu'il est UTC par convention.
Pourquoi Paris ajoute parfois une heure et parfois deux ?
À cause du passage heure d'hiver / heure d'été.
Dois-je convertir le timestamp quand l'utilisateur change de fuseau ?
Non. Gardez le même timestamp et changez seulement le format d'affichage.