Ingestion time
Ingestion time stamps each event with the clock of the machine that first received it, and hopes the doorway was quick.
Also called: arrival time, log append time
Ingestion time - the ingestion time streaming option: stamp each event with the clock of the machine that first receives it, then treat that stamp as event time from there on. Kafka's log-append timestamps are the common form. It is the lazy middle between the two real time domains, and lazy is sometimes fine.
What you gain over processing time is a stable timestamp: it is written once at the door, so a replay computes the same windows as the live run. What you lose is the truth. The stamp records when your infrastructure met the event, not when the event happened, and nothing warns you when those diverge. A phone that buffered a purchase for an hour books it an hour into the wrong window, with a clean-looking timestamp attached.
Do you need it? It is fine when events are born next to the broker and the gap is milliseconds, and it quietly lies the moment producers buffer, batch or retry. Ubik has no separate ingestion-time mode to configure: you window on whichever timestamp column you name in the SQL. If that column was stamped at the door, that was your choice, and it is visible in the query.