Pretty much the subject says it all. How can I make a task repeat on the end of each month in google calendar.

Jan 31- repeated task
Feb 28 - repeated task
march 31 - repeated task
april 30 - repeated task
....
etc

migrated from superuser.com Jan 4 '11 at 15:20

This question came from our site for computer enthusiasts and power users.

10 Answers 10

To make an event that repeats on the last day of each month, we'll create a file that contains the event, and then import it into Google Calendar:

  1. Paste the following text into a new .txt file (e.g. with notepad):

    BEGIN:VCALENDAR
    BEGIN:VEVENT
    DTSTART:20160731
    DTEND:20160731
    RRULE:FREQ=MONTHLY;BYDAY=SU,MO,TU,WE,TH,FR,SA;BYSETPOS=-1;WKST=SU
    SUMMARY:Name of your event
    END:VEVENT
    END:VCALENDAR
    
  2. Behind both DTSTART and DTEND, write the date of the first occurrence of the event. Then, put the name of the event behind SUMMARY.

  3. On your Google Calendar, go to Settings, and click the Calendars tab. Click Import Calendar and upload your .txt file. (It will not create a new calendar, but rather add the event to an existing calendar.)

Done!

Your event now appears on the 30th or 31st (or 28th, 29th) of each month, depending on the month.

You can also schedule it for the last business day by dropping SU and SA in the BYDAY.

You can still edit the name and time of the event (the UI is a bit glitchy, messing up your dates by default, but it works), but you cannot edit the recurrence: "This event has a recurrence rule that cannot be edited in Google Calendar"

P.S. If you want to dive deeper into making your own rules for when an event should occur, such as "first business day of the month", take a look at RFC 5545, section RRULE for examples and section RECUR for a formal definition. With this you can edit the RRULE line to your liking. See the comments on this answer for some examples as well.

  • Example for FIRST WORKDAY OF MONTH (With weekstart on Monday): RRULE:FREQ=MONTHLY;BYDAY=MO,TU,WE,TH,FR;BYSETPOS=1;WKST=MO – Marcel Jun 4 '14 at 5:50
  • @Jo Liss I'm sorry but I don't know what you mean by "Behind both DTSTART and DTEND, write the date of the first occurrence of the event." Do you mean after the semicolon for each respective variable? I imported and it said 'Successfully imported 0 events' – anon58192932 Mar 27 '15 at 1:34
  • @advocate In my example, see where it says DTSTART:20110731 and DTEND:20110731? Say your event first happens on August 31st 2015. Then you'll write DTSTART:20150831 and DTEND:20150831 (2015 = year, 08 = month, 31 = day). – Jo Liss Apr 20 '15 at 22:36
  • You said to write the date of the first occurrence of the event behind both variables and then said adjust the name as you see fit. Variable names usually aren't adjustable? And you can't define a variable by putting its value before its definition. I apologize if english isn't your primary language but these directions are insanely confusing. – anon58192932 Apr 21 '15 at 2:54
  • 4
    The format for this must have changed as this no longer works. – Bill Mote Sep 5 '15 at 13:32

You can do this with the OS X Calendar app.

First, sync your Google Calendar with OS X Calendar.

Then create an event series that occurs on the last day of every month and wait for it to sync to Google Calendar.

First step Second step Voilà

  • 1
    Excellent answer, this can even do last weekday of a month. – Jichao Jul 3 '15 at 1:52
  • Works from iOS Calendar too. – lpacheco Aug 26 '15 at 20:45

Another partial solution that may work for some folks: Create the repeating event for the first day of every month, then add a reminder for one day in advance. Then you'll receive at a notice regarding the event at the appropriate time. Of course this doesn't help if you need the time to show as busy.

This answer worked for me:

The simplest way is to just write out the event in plain English. For example:

RORO at Inspire9, Richmond on the last Thursday of every month

This will create an event called “RORO at Inspire9, Richmond”, with the location field set to “Inspire9, Richmond” and the repetition set to “Monthly on the last Thursday”.

From http://blog.stevenocchipinti.com/2012/05/google-calendar-repeating-event-on-last.html/

  • 3
    How to use this method is not explained clearly in the original post. It does not work for me. – fossilet Jan 5 '15 at 5:48
  • 1
    "Last Thursday" adds a repetitive event but this is not what TS asked. "Last day" does not work. – Pavel Vlasov Jun 1 '15 at 19:32
  • This is an excellent suggestion. I came here because I found this thread looking for exactly the Matthew's solution. It does not answer an original question, but it definitely does not deserve reduction of the user's reputation. Matthew, if you like, I will ask a question for which this will be a correct answer. Then you'll get an upvote and a "solved". – texnic Nov 14 '15 at 10:47

To set an recurring event on day 30 of each month, or Feb 28 or Feb 29 (in a leap year), being any workday, adjust and import the following .ics file:

BEGIN:VCALENDAR
BEGIN:VEVENT
DTSTART:20120430T100000Z
DTEND:20120430T101500Z
RRULE:FREQ=MONTHLY;BYDAY=MO,TU,WE,TH,FR;BYMONTHDAY=28,29,30;BYSETPOS=-1;WKST=SU;
COUNT=242
SUMMARY: Dia 30 ou dia util anterior
END:VEVENT
END:VCALENDAR

A highly similar and more general question is "how to make an event repeat on the last [x] day of each month". As this person noted, you need to find a month with the max number of weeks (five) and then set it based on the day of the month. If the initial month doesn't have the max number of weeks, it will repeat on the fourth week rather than the last week.

  • I'm not following. July 2018 has five weeks. I set an event to repeat on July 31, monthly on the 31st of the month. But nothing shows up in September, which only has 30 days! – Michael Jul 26 at 16:30
  • From that thread: "...The only way I've seen is to create an event on a 5th Tuesday. When you then set the event to repeat, it will repeat on the last Tuesday. You may have to go back to the most recent month that had a 5th tuesday to make it work." It's not the numerical day, but the weekday I think. Haven't looked at this in years. :) – Ben Creasy Jul 26 at 23:41
  • Open Outlook > Go to Tasks -> New Task
  • Enter Subject > Start Date > and Due Date (Due Date will be last date of this (Feb.)month)
  • Click on Recurrence tab at top
  • Pattern Monthly > The (Last) (day) of every (1) month.

Ok

  • 3
    @Ankur - um from the question in google calendar ` ` – Sathya Jan 4 '11 at 5:56
  • @Sathya As you can see from my answer, Google Calendar supports these events in principle, so perhaps if you have an Outlook that synchronizes with Google Calendar, it might work? I haven't tested it. – Jo Liss Jul 23 '11 at 14:17
  • @JoLiss - Hm, nice trick - perhaps might work – Sathya Jul 23 '11 at 14:42

I found that the Google calendar app allows for end of every month scheduling. I now schedule most events from my phone. Under Repeating option select Custom and it will allow you quite a bit of flexibility. It still does not distinguish between calendar days of the week and business days of the week like Apple Calendar. I would love to see this addition.

  • Can you provide some screenshots on how to do this? When I select "repeat monthly" on the Android app, it only provides entry for "every _ month", "on the same day each month or on every last (day of week)", and how many repetitions. – Michael Jul 26 at 16:33

Google will only import .ics files and all that necessary is after creating the event in a .txt file change the extension to .ics and it can be imported.

To expand upon Paulo's answer above, this is also a notable solution for the 15th of every month, or the previous weekday if the 15th falls on a Saturday or Sunday:

BEGIN:VCALENDAR
BEGIN:VEVENT
DTSTART:20170415
DTEND:20170415
RRULE:FREQ=MONTHLY;BYDAY=MO,TU,WE,TH,FR;BYMONTHDAY=13,14,15;BYSETPOS=-1;WKST=SU;
SUMMARY: Mid-month Event Name
END:VEVENT
END:VCALENDAR

Mid-month recurring event, anyone?!

Your Answer

By clicking "Post Your Answer", you acknowledge that you have read our updated terms of service, privacy policy and cookie policy, and that your continued use of the website is subject to these policies.

Not the answer you're looking for? Browse other questions tagged or ask your own question.