Below I show both, then give ready-to-paste VTIMEZONE blocks for all main US time zones so you can swap as needed.
A) Change your file to Pacific Time with DST (recommended)
What to change
- Add a Pacific VTIMEZONE.
- Change
DTSTART/DTENDto use that TZID (keep the same wall-clock times). - Keep
DTSTAMP/CREATED/LAST-MODIFIEDin UTC with Z.
Minimal diff for your event (IANA zone)
BEGIN:VTIMEZONE
TZID:America/Los_Angeles
BEGIN:STANDARD
DTSTART:19701101T020000
RRULE:FREQ=YEARLY;BYMONTH=11;BYDAY=1SU
TZOFFSETFROM:-0700
TZOFFSETTO:-0800
TZNAME:PST
END:STANDARD
BEGIN:DAYLIGHT
DTSTART:19700308T020000
RRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=2SU
TZOFFSETFROM:-0800
TZOFFSETTO:-0700
TZNAME:PDT
END:DAYLIGHT
END:VTIMEZONE
And update your VEVENT times:
DTSTART;TZID=America/Los_Angeles:20250808T133000
DTEND;TZID=America/Los_Angeles:20250808T153000
(Everything else in your .ics can stay the same.)
Outlook-only alternative: use
TZID:Pacific Standard Timeand keep the same offsets/rules.
B) If you truly need fixed PST all year (no DST)
Use a constant offset and no DAYLIGHT block:
BEGIN:VTIMEZONE
TZID:PST_NoDST
BEGIN:STANDARD
DTSTART:19700101T000000
TZOFFSETFROM:-0800
TZOFFSETTO:-0800
TZNAME:PST
END:STANDARD
END:VTIMEZONE
Then:
DTSTART;TZID=PST_NoDST:20250808T133000
DTEND;TZID=PST_NoDST:20250808T153000
Quick guide for US time zones (IANA + Windows IDs)
Use these TZIDs with the matching VTIMEZONE blocks below.
| Region (common name) | IANA TZID | Windows TZID | DST? |
|---|---|---|---|
| Eastern | America/New_York | Eastern Standard Time | Yes |
| Central | America/Chicago | Central Standard Time | Yes |
| Mountain (with DST) | America/Denver | Mountain Standard Time | Yes |
| Arizona (no DST) | America/Phoenix | US Mountain Standard Time | No |
| Pacific | America/Los_Angeles | Pacific Standard Time | Yes |
| Alaska | America/Anchorage | Alaska Standard Time | Yes |
| Hawaii (no DST) | Pacific/Honolulu | Hawaiian Standard Time | No |
| Aleutian (AK west) | America/Adak | Aleutian Standard Time | Yes |
Ready-to-paste VTIMEZONE blocks
Each of the “DST: Yes” zones follows US rules: DST starts 2nd Sunday in March (
BYDAY=2SU), ends 1st Sunday in November (BYDAY=1SU) at 02:00 local.
Eastern (EDT/EST)
BEGIN:VTIMEZONE
TZID:America/New_York
BEGIN:STANDARD
DTSTART:19701101T020000
RRULE:FREQ=YEARLY;BYMONTH=11;BYDAY=1SU
TZOFFSETFROM:-0400
TZOFFSETTO:-0500
TZNAME:EST
END:STANDARD
BEGIN:DAYLIGHT
DTSTART:19700308T020000
RRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=2SU
TZOFFSETFROM:-0500
TZOFFSETTO:-0400
TZNAME:EDT
END:DAYLIGHT
END:VTIMEZONE
Central (CDT/CST)
BEGIN:VTIMEZONE
TZID:America/Chicago
BEGIN:STANDARD
DTSTART:19701101T020000
RRULE:FREQ=YEARLY;BYMONTH=11;BYDAY=1SU
TZOFFSETFROM:-0500
TZOFFSETTO:-0600
TZNAME:CST
END:STANDARD
BEGIN:DAYLIGHT
DTSTART:19700308T020000
RRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=2SU
TZOFFSETFROM:-0600
TZOFFSETTO:-0500
TZNAME:CDT
END:DAYLIGHT
END:VTIMEZONE
Mountain with DST (MDT/MST)
BEGIN:VTIMEZONE
TZID:America/Denver
BEGIN:STANDARD
DTSTART:19701101T020000
RRULE:FREQ=YEARLY;BYMONTH=11;BYDAY=1SU
TZOFFSETFROM:-0600
TZOFFSETTO:-0700
TZNAME:MST
END:STANDARD
BEGIN:DAYLIGHT
DTSTART:19700308T020000
RRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=2SU
TZOFFSETFROM:-0700
TZOFFSETTO:-0600
TZNAME:MDT
END:DAYLIGHT
END:VTIMEZONE
Arizona (no DST)
BEGIN:VTIMEZONE
TZID:America/Phoenix
BEGIN:STANDARD
DTSTART:19700101T000000
TZOFFSETFROM:-0700
TZOFFSETTO:-0700
TZNAME:MST
END:STANDARD
END:VTIMEZONE
Pacific (PDT/PST)
BEGIN:VTIMEZONE
TZID:America/Los_Angeles
BEGIN:STANDARD
DTSTART:19701101T020000
RRULE:FREQ=YEARLY;BYMONTH=11;BYDAY=1SU
TZOFFSETFROM:-0700
TZOFFSETTO:-0800
TZNAME:PST
END:STANDARD
BEGIN:DAYLIGHT
DTSTART:19700308T020000
RRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=2SU
TZOFFSETFROM:-0800
TZOFFSETTO:-0700
TZNAME:PDT
END:DAYLIGHT
END:VTIMEZONE
Alaska (AKDT/AKST)
BEGIN:VTIMEZONE
TZID:America/Anchorage
BEGIN:STANDARD
DTSTART:19701101T020000
RRULE:FREQ=YEARLY;BYMONTH=11;BYDAY=1SU
TZOFFSETFROM:-0800
TZOFFSETTO:-0900
TZNAME:AKST
END:STANDARD
BEGIN:DAYLIGHT
DTSTART:19700308T020000
RRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=2SU
TZOFFSETFROM:-0900
TZOFFSETTO:-0800
TZNAME:AKDT
END:DAYLIGHT
END:VTIMEZONE
Hawaii (no DST)
BEGIN:VTIMEZONE
TZID:Pacific/Honolulu
BEGIN:STANDARD
DTSTART:19700101T000000
TZOFFSETFROM:-1000
TZOFFSETTO:-1000
TZNAME:HST
END:STANDARD
END:VTIMEZONE
Aleutian Islands (HADT/HAST)
BEGIN:VTIMEZONE
TZID:America/Adak
BEGIN:STANDARD
DTSTART:19701101T020000
RRULE:FREQ=YEARLY;BYMONTH=11;BYDAY=1SU
TZOFFSETFROM:-0900
TZOFFSETTO:-1000
TZNAME:HAST
END:STANDARD
BEGIN:DAYLIGHT
DTSTART:19700308T020000
RRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=2SU
TZOFFSETFROM:-1000
TZOFFSETTO:-0900
TZNAME:HADT
END:DAYLIGHT
END:VTIMEZONE
How to apply
- Pick the correct
VTIMEZONEand paste it inside yourVCALENDAR(beforeVEVENTis fine). - Change your VEVENT to use that
TZID:DTSTART;TZID:<your TZID>:YYYYMMDDTHHMMSS DTEND;TZID:<your TZID>:YYYYMMDDTHHMMSS - Keep meta timestamps (
DTSTAMP,CREATED,LAST-MODIFIED) in UTC withZ. - Don’t mix
TZIDandZon the same property. - Keep CRLF line endings; fold long lines at ≤75 octets.
If you tell me which zone you want for this event, I can spit out the final .ics content ready to import.