🎉 Celebrate with 10% OFF on All Products! Use Code: GFEX10 Or Buy Any 2+ Items for 30% OFF with Code: GFEX30!
Guides & Tutorials November 9, 2026

How to Add a Month and Year Field to Gravity Forms (and Other Partial Dates)

GravityExtra
How to Add a Month and Year Field to Gravity Forms (and Other Partial Dates)

“When did you start your last job?” Most people remember the month and the year. Almost nobody remembers the day. Yet the Gravity Forms Date field asks for all three, so applicants guess a day, pick the 1st, or give up on the form. The same thing happens with birthdays for a loyalty club, where you want the day and month but not the year, and with “year built” questions, where a year is all there is.

This guide shows how to ask for a month and year, a day and month, or a year only in Gravity Forms, why the common workarounds let wrong answers through, and how to set up a field that offers the right parts, keeps its year list up to date and checks every answer on your server.

Why the Date field is the wrong tool here

The Date field stores a complete date. Its date picker, drop-downs and number boxes all ask for a day, a month and a year, and validation fails if one is missing. There is no setting to leave the day out. People have asked about this on the Gravity Forms community forum for years:

  • In 2023 someone asked how to collect just a month and year in a calendar field. The reply was that the Date field always stores a full date, nobody knew of an add-on that did this, and the way forward was a custom field type written in code.
  • In 2024 a shop owner wanted birthdays for a birthday club without the year, to match the birthday field of their newsletter tool. The suggestions were two Number fields, or a text field with a 99/99 input mask, with the honest warning that the mask would accept an impossible date such as 70/71.
  • In 2022 a question about limiting the date picker to MM/YYYY got the answer that it was not possible.

Every answer was a workaround or code. Each workaround has a weak spot.

The usual workarounds and where they fall short

Two separate fields

A Drop Down for the month and a Number field for the year look fine, but they are two answers, not one. Notifications show them apart, exports put them in separate columns, conditional logic cannot compare the pair, and nothing stops 31 being chosen with February when the parts are day and month.

A text field with an input mask

A mask such as 99/9999 shows the visitor the shape you want, but it only checks the shape. 13/2026 and 00/1900 pass. Visitors also type 4/26 or April 2026 and get stuck, because the mask refuses anything else without saying why.

A full date with “any day will do”

Asking for a full date and telling people to pick any day gives you a day that means nothing, which then sits in your entries looking like real data. For a birthday club it also collects a year of birth you never needed, which is one more personal detail to store and protect.

Code

A developer can build a custom field, or split a date into hidden fields with a submission hook. That works until the form changes, the developer moves on, or the next Gravity Forms update changes the markup.

What a good partial date field needs

  • Only the parts you ask for: month and year, day and month, or year only, as one field with one answer.
  • Choices people recognise: month names in the site language, or small number boxes on phones.
  • A year list that stays current: “the last 50 years” should still be the last 50 years next January, without editing the form.
  • Real rules: no 31 April, no month 13, no future start dates, no move-in dates in the past.
  • Checks on the server: drop-downs limit choices in the browser, but a request can be put together without them.
  • A value that sorts: entries should line up in date order, and feeds should get a predictable value.
  • Parts for e-mails and maths: the month name in a confirmation, MM/DD for a newsletter tool, years of experience in a calculation.

Setting it up with the Partial Dates add-on

The Gravity Forms Partial Dates Premium Add-on adds a Partial Date field that covers that list. Here is a job application from Brightwater Recruitment, a fictional staffing agency, built with it.

A Job application form for Brightwater Recruitment with Partial Date fields: Started your last job as Month and Year drop-downs set to June, Year you got your forklift licence set to 1995, a Years in your last job total worked out from the start month, a Date of birth drop-down with month names, and Available from with the year first and short month names
Month and year, year only and a standard Date field with month names on one form; the years worked out by a formula.

Month and year: “Started your last job”

  1. Add a Partial Date field from Advanced Fields and label it “Started your last job”.
  2. Leave Date parts on Month and year, shown as drop-downs with month names.
  3. Set the years From -50 To 0, newest first. The list always runs from this year back 50 years.
  4. Set Allowed to Now or earlier, so a start date in the future is refused.
  5. Choose how it is shown in entries and e-mails, for example April 2026.
The form editor sidebar for the Started your last job field: Date parts set to Month and year, shown as drop-downs with month names, years from -50 to 0 with the newest first, and Allowed set to Now or earlier
Every setting is on the General tab of the field.

Year only: “Year you got your forklift licence”

Choose Year only, From 1970 To 0, Now or earlier. Because the value is a plain year, a conditional logic rule such as “is less than 2000” can show an extra question for older licences.

Month and year in the future: “Available from”

Choose Month and year, From 0 To +2, Now or later. Tick “Show the parts the other way round” if you prefer the year first, and use short month names to keep the drop-downs narrow.

Day and month: a birthday club

For Fernhill Bakery’s birthday club, choose Day and month and Number boxes. Visitors type 29 and 2, and 29 February is accepted because a date without a year can fall on it. 31 April is refused.

A Birthday club form for Fernhill Bakery with a Your birthday field made of two number boxes, Day 29 and Month 2, and no year
A birthday without the year: day and month in two number boxes. 29 February can be saved.

Checks that hold even without the browser

Drop-downs only offer valid choices, but a form submission is just a request, and anyone can send one with different values. The add-on builds the value from the parts on your server and checks every rule again: all parts present, a real month, a real day for that month, a year inside the range, and the now-or-earlier or now-or-later rule. The visitor sees a clear message next to the field, such as “Please choose the year as well.” or “Please choose a year from 1976 to 2026.”, and nothing is saved until the answer is right.

Values that sort, and parts you can reuse

Each answer is saved in one short form: 2026-04 for a month and year, –04-17 for a day and month, 2026 for a year. Entries sort in date order, searches are simple, and feeds always receive the same shape. People never see that form unless you ask for it: entries, notifications and exports use the display format you chose.

Merge tag modifiers give single parts where you need them:

  • {Started your last job:3:monthname} {Started your last job:3:year} in a confirmation reads “June 2019”.
  • {Your birthday:3:mmdd} gives 02/29 for a newsletter tool that wants MM/DD.
  • {Started your last job:3:yearsago} gives the whole years since that month, ready for a Number field calculation.
  • {Started your last job:3:iso} gives 2019-06 for a webhook or a spreadsheet.
A Gravity Forms entry of the Job application showing the partial dates in their display formats, such as June for the start of the last job, 1995 for the licence year and Mar for the available-from month
Entries show each partial date in the format you choose; the saved value sorts in date order.

The standard Date field gets two fixes too

Partial dates are not the only date question people ask about. The year drop-down of the standard Date field runs from 1920 to next year, and changing it has always needed a code snippet. With the add-on, a Date field shown as drop-downs or number boxes gets a year range on its General tab, using the same “number of years from this year” idea: a date of birth from -80 to -16 always covers people aged 16 to 80. You can put the oldest year first, show month names instead of 1 to 12 in the month drop-down, and a year outside the range is refused on the server. The calendar date picker is left as it is.

Good practice for date questions

  • Ask for the least you need. If the day does not change what you do with the answer, leave it out.
  • Match the question to the rule. Things that already happened are “now or earlier”; plans are “now or later”.
  • Use ranges that move. Numbers such as -50 and +2 never need updating; fixed years do.
  • Say what you want in the label. “Month and year you started” is clearer than “Start date”.
  • Keep personal data small. A birthday without a year is enough for a birthday offer.
  • Test once on a phone. Number boxes open the number keyboard; drop-downs open the phone’s own picker.

Frequently asked questions

Can I use partial dates in conditional logic?

Yes. Rules compare the saved form, so “starts with 2026”, “contains –12-” or, for a year only field, “is less than 2000” all work, and rules react as soon as a part is chosen.

Do partial dates work on multi-page forms and with Save and Continue?

Yes. The value travels with the form and is shown again when the visitor returns or after a failed check.

Will my year list go out of date?

Not if you use numbers from this year, such as -80 or +5. They are worked out again every time the form is shown and sent.

Does it work in other languages?

Month names follow the site language, and every message can be translated or replaced with your own.

Does it use an outside service?

No. Everything runs on your own WordPress site.

Next steps

Look through your forms for date questions where the day or the year does not matter, and for Date fields with a year list that needs updating every January. The setup guide explains every setting, the saved forms, the merge tag modifiers and the Date field extras in detail. See the Partial Dates add-on and its plans.

0
0
Your Cart
Your cart is emptyReturn to Shop
🔥 FREQUENTLY BOUGHT TOGETHER
Complete Combo & Save 40%!
ITEM IN YOUR CART
Gravity Forms Klaviyo Add-on
$39.00/yr
+
🎁 RECOMMENDED ADD-ON SAVE 40% OFF
Original Price: $39.00/yr
Bundle Special Price: $23.40/yr