> ## Documentation Index
> Fetch the complete documentation index at: https://learn.nextedy.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Schedule in Hours Instead of Days

> Configure Nextedy GANTT to track task durations in hours rather than days, enabling fine-grained scheduling for short-duration activities.

export const LastReviewed = ({date}) => {
  if (!date) return null;
  const formatted = new Date(`${date}T00:00:00Z`).toLocaleDateString("en-US", {
    year: "numeric",
    month: "long",
    day: "numeric",
    timeZone: "UTC"
  });
  return <p className="mt-10 text-sm text-gray-400 dark:text-zinc-500 not-prose">
      Last reviewed on {formatted}
    </p>;
};

## Prerequisites

* Gantt version 4.0.0 or newer
* Access to widget parameter editing on your Gantt page

<Steps>
  <Step title="Set Duration Precision to High">
    1. Open the page containing your Gantt chart in edit mode.
    2. Open **Widget Properties > Data Mapping > Duration Precision**.
    3. Change the value from **Standard (Days)** to **High (Hours)**.

    After this change, the Gantt manages durations as fractions of hours instead of whole days.
  </Step>

  <Step title="Set the Time Scale to Hours">
    When working with high duration precision, you should set the default scale to display hours:

    1. In **Widget Properties > Scale**, select **H** (hours).
    2. Save the widget properties.

    The Gantt chart header now displays individual hours, giving you visibility into sub-day task placement.
  </Step>

  <Step title="Enable Working Time">
    High-precision scheduling requires working time awareness so the Gantt correctly accounts for working hours in duration calculations:

    1. In **Widget Properties > Advanced > Working Time**, set the value to **YES**.

    This ensures the Gantt skips non-working hours when computing task durations.
  </Step>

  <Step title="Verify Field Types">
    Review your field configuration to ensure compatibility with hour-precision mode:

    | Field                 | Recommended Type                      | Notes                                |
    | --------------------- | ------------------------------------- | ------------------------------------ |
    | Duration Field        | Duration (`initialEstimate`) or Float | Value now represents hours, not days |
    | Start/End Date Fields | **DateTime** (not Date)               | Required for sub-day precision       |

    <Warning title="Existing data interpretation changes">
      If your duration field points to an Integer, Float, or String field, existing values are reinterpreted as hours after switching precision. For example, a stored value of `8` previously meant 8 days but now means 8 hours (1 working day).
    </Warning>

    <Tip title="Use DateTime fields for start and end dates">
      If your start/end date fields currently use a custom field of type **Date**, change them to **DateTime** to capture hour-level precision. Plain Date fields only store day-level values and cannot represent specific hours.
    </Tip>
  </Step>
</Steps>

## Configuration Summary

| Widget Parameter   | Value        | Location                         |
| ------------------ | ------------ | -------------------------------- |
| Duration Precision | High (Hours) | Widget Properties > Data Mapping |
| Scale              | H            | Widget Properties > Scale        |
| Working Time       | YES          | Widget Properties > Advanced     |

## Impact on Resource View

When you enable high-precision scheduling, the resource view calculates load at the hour level. You can customize working hours per resource using the `workingHoursPerDay` property in **Administration > Configuration Properties** or via the Gantt Config Script:

```javascript theme={null}
gantt.config.workingHoursPerDay = 7;
```

For per-resource working hours, define a custom function in **Widget Properties > Advanced > Gantt Config Script**:

```javascript theme={null}
gantt.config.workingHoursPerDayFunction = (resource) => {
  if (resource === "rProject") {
    return 4;
  }
  return 8;
};
```

<Tip title="Combine with working calendars">
  For the most accurate resource load calculations in hour mode, enable working calendars under **Widget Properties > Working Calendars**. This ensures the Gantt respects per-user availability, time off, and schedule tweaks when computing hour-level capacity.
</Tip>

## Verification

You should now see:

* Task durations displayed in hours (e.g., `4h` instead of `1d`)
* The Gantt chart header showing hourly intervals
* Task bars snapping to hour-level positions when dragged
* Resource view displaying hourly capacity and load values

## See Also

* [Configure the Time Scale](/gantt/guides/visualization/timescale)
* [Customize Working Hours per Resource](/gantt/guides/calendars/working-hours-per-resource)
* [Set Up Work Item Calendars](/gantt/guides/calendars/work-item-calendar)
* [Set Up the Resource View](/gantt/guides/resources/resource-view)

<LastReviewed date="2026-07-07" />
