Date field check
Klaviyo facts apply here because your platform is Klaviyo. Sorted by script into groups. Accepted formats are YYYY-MM-DD and MM/DD/YYYY. Klaviyo sign-up forms convert day first dates, but you said the day first values came from a quiz app import, not a Klaviyo form, so those were not converted.
| ID | Stored value | Group | What happens |
|---|---|---|---|
| D1 | 1988-04-12 | Accepted format, valid | will trigger |
| D2 | 03/27/1991 | Accepted format, valid | will trigger |
| D3 | 14/07/1985 | Day first, not from a Klaviyo form | not converted; fix needed (HELD) |
| D4 | 07/04/1990 | Accepted format, ambiguous | MM/DD reads it as month 7, day 4; if it came from the quiz import it is day 7, month 4 |
| D5 | 1979-11-30 | Accepted format, valid | will trigger |
| D6 | June 5 | Text or blank | will not appear in the trigger; ask the customer |
| D7 | (blank) | Text or blank | will not appear in the trigger; ask the customer |
| D8 | 22-09-1993 | Day first, not from a Klaviyo form | not converted; fix needed (HELD) |
| D9 | 12/11/1987 | Accepted format, ambiguous | MM/DD reads it as month 12, day 11; if it came from the quiz import it is day 12, month 11 |
| D10 | 1995-02-29 | Accepted format, not a real date | 1995 has no February 29; ask |
| D11 | 08/19/1984 | Accepted format, valid | will trigger |
| D12 | 2001-06-03 | Accepted format, valid | will trigger |
| Group | Count |
|---|---|
| Accepted format, valid | 5 |
| Day first, not from a Klaviyo form | 2 |
| Accepted format, ambiguous | 2 |
| Text or blank | 2 |
| Accepted format, not a real date | 1 |
| Total | 12 |
These counts describe these 12 sample values only, not your whole list.
Proposed fixes for the day first values, HELD until you approve a profile update:
| ID | Now | Proposed |
|---|---|---|
| D3 | 14/07/1985 | 1985-07-14 |
| D8 | 22-09-1993 | 1993-09-22 |
Ambiguous values (D4, D9) and the impossible date (D10) are questions below, not fixes. I did not guess them.
Trigger spec
- Trigger: date property Birthday (it shows in the dropdown because at least 1 profile has it).
- Start: 3 days before the date, per your timing.
- Time: 10 am, recipient's local time zone. Klaviyo recommends an earlier time of day; 10 am fits that, your call.
- Repeat: yearly.
- Note: once the trigger is saved, the date property cannot be changed. To switch properties later, clone the flow.
- A date flow has one anchor date. M2 below sits after a 3 day time delay from M1, which lands on the birthday. The delay step is my own setup, not covered in the saved sources; check it in the flow builder.
Messages
M1, 3 days before the birthday: - Subject: A birthday gift from Juniper & Pine - Preview text: A free mini candle is waiting for you. - Button: Shop candles (links to juniperandpine.example/shop)
Hi there,
Your birthday is coming up, and we would like to send you a small gift.
Use code BDAYMINI for a free mini candle with any order of $30 or more. The code works once and is good for 14 days after this email.
Our candles are hand-poured soy, made in Asheville, NC.
Warmly, the Juniper & Pine team
M2, on the birthday (3 day delay after M1): - Subject: Happy birthday from Juniper & Pine - Preview text: Your free mini candle code is still good. - Button: Use my code (links to juniperandpine.example/shop)
Hi there,
Happy birthday from all of us at Juniper & Pine Candle Co.
Your code BDAYMINI is still waiting: a free mini candle with any order of $30 or more, once, within 14 days of our first birthday email.
Warmly, the Juniper & Pine team
Counts
Word counts of each body, by script:
| Item | Count |
|---|---|
| Sample values | 12 |
| Values that will trigger as stored | 5 |
| Values needing a fix or answer | 7 |
| M1 body words | 60 |
| M2 body words | 46 |
| Messages | 2 |
Go-live step (held)
- Both messages stay in Manual status until you approve them.
- HELD: switch M1 and M2 to Live.
- HELD: update D3 and D8 to the proposed values.
Questions for you
- D4 (07/04/1990) and D9 (12/11/1987): did these come from the Klaviyo form (month first) or the quiz import (day first)?
- D10 (1995-02-29) is not a real date. Should I ask that customer, or leave the profile out of the flow?
- D6 ("June 5") has no year and D7 is blank. Do you want a short email asking those customers for their birthday?
- Should M2 be sent at all, or only M1?
Needs your decision
- Set M1 and M2 Live: HELD.
- Update profile values D3 and D8: HELD.
