Mécanisme dans les systèmes de streaming qui indique au moteur jusqu'où dans le temps il peut considérer les données comme complètes. Un watermark W(t) signifie : 'tous les événements avec un event time inférieur à t ont été reçus'. Le moteur peut donc fermer et émettre les résultats des fenêtres dont le temps de fin est inférieur à W(t). Le watermark avance progressivement au rythme des événements entrants. La tolérance aux retards (allowedLateness) définit de combien de temps les watermarks décalent derrière le max event time observé. Un watermark trop conservateur retarde les résultats, un watermark trop agressif abandonne les late data. Flink génère les watermarks soit périodiquement (BoundedOutOfOrdernessWatermarks), soit par événement spécial. C'est le mécanisme central pour réconcilier l'event time et le processing time.