Nodes/Mayo Nodes/Mayo Time Formatter
ComfyUI Node

Mayo Time Formatter

Timestamps that stay fresh, in whatever format your filename needs

By Pasu2k·Created 5 months ago·Updated 2 months ago· 0
Mayo Time Formatter
    • string
    use_datetrue
    date_format
    use_timetrue
    time_format
    delimiter_

    Mayo Time Formatter outputs the current date and/or time as a clean text string in the format you pick - 22 date formats, 4 time formats, joined by a delimiter of your choice. It's a tiny node, and its entire reason to exist is the sentence in the pack's README: lots of nodes expect time in different formats, and this one normalizes it.

    Why you'd reach for it

    Date-stamping output filenames is the classic use. SaveImage's filename prefix is a plain text field, but wire this node's string into a dynamic-filename setup and every run lands in a run_2026-08-16_14-32-05 style name instead of the eternal ComfyUI_00001. It's also handy for logging when a generation happened, or pasting a timestamp into a notes/text node for your own records.

    The mechanism that matters

    This is the part worth understanding, because it's the whole trick. ComfyUI caches node outputs: if nothing about a node changed, it won't re-run it. A naive time node would therefore return the timestamp from the moment the workflow first loaded - frozen forever. Mayo Time Formatter gets around that with IS_CHANGED, which returns datetime.now().timestamp() - a value that's different on every evaluation. That forces ComfyUI to re-execute the node on every queue, so the string is genuinely current.

    If you've ever used a timestamp node that went stale, that's the exact mechanism its author forgot. This one has it.

    Under the hood it's a friendly-name-to-strftime mapping: "YYYY-MM-DD" → %Y-%m-%d, "Month DD YYYY" → %B %d %Y, and so on. Nothing exotic, just the Python datetime you'd expect.

    Inputs

    • use_date / use_time - booleans; turn a half on and you get just that half.
    • date_format / time_format - the dropdowns, enabled or greyed out to match their toggles.
    • delimiter - the joiner (default _); it only does anything when both date and time are on, and the JS disables it otherwise so you can't set a delimiter that's ignored.

    Output is a single string. If both toggles are off, you get an empty string back.

    What to know before you rely on it

    It's 24-hour time (%H), local timezone - there's no AM/PM and no timezone selector, so don't go hunting for settings that aren't there. The timestamp is captured at execution, which is "now" as far as a workflow run is concerned. And if you're batching, all images in one run share the same string, which is usually what you want for grouping output.

    Installing it

    Search "Mayo Nodes" in ComfyUI Manager, or:

    cd ComfyUI/custom_nodes
    git clone https://github.com/Pasu2k/comfyui-mayo-nodes
    

    Then restart ComfyUI. No dependencies, no downloads - pure standard library, so there's nothing extra to break.

    It's a one-trick node from a small personal pack, but "give me the current time in the exact format I asked for" is a trick every workflow eventually needs.

    CategoryMayoNodes

    Inputs (5)

    NameTypeDefaultDescription
    use_dateBOOLEANtrue
    date_formatCOMBO22 options: YYYY-MM-DD, MM-DD-YYYY, DD-MM-YYYY, YYYYMMDD, MMDDYYYY, DDMMYYYY, +16
    use_timeBOOLEANtrue
    time_formatCOMBO4 options: HH-MM-SS, HH-MM, HHMMSS, HHMM
    delimiterSTRING_

    Outputs (1)

    NameTypeDescription
    stringSTRING