Follow-up: The failure of the following test is a feature described in the docs for Period.normalizedStandard(): @Test public void assertJodaTimeFormatsYears() { Period p = new Period(TimeUnit.MILLISECONDS.convert(380, TimeUnit.DAYS)).normalizedStandard(); Assert.assertEquals(1, p.getYears()); } What is the recommended way to get weeks to overflow into months and years fields?