Pre-filling Values

Pre-filling values automates data entry by setting field values automatically based on context. Instead of users manually filling repetitive fields, rules populate them intelligently—reducing errors and saving time.

Dynamic Screen Rules enables smart default values that adapt to issue type, priority, user selections, and more.

circle-exclamation

Why Pre-filling Matters

Problem: Users waste time filling the same fields repeatedly. Manual entry leads to typos, inconsistencies, and missed fields.

Solution: Automatically set field values based on context. When users open a form or make selections, relevant fields populate instantly.

Benefits:

  • Faster issue creation - pre-filled fields save clicks and typing

  • Consistent data - automated values eliminate typos and variations

  • Intelligent defaults - values adapt to context (issue type, priority, user role)

  • Reduced cognitive load - users focus on unique information, not repetitive data


Static Pre-fill: Set Fixed Values

The simplest pre-fill pattern sets a fixed value when conditions are met.

Example 1: Set Component for Backend Bugs

Requirement: When creating Backend Bug issues, automatically set Component to "Backend"

Rule Configuration:

  • Screen: Global Issue Create

  • Target Field: Component

  • Scope: Bug

  • Condition: Issue Type = Backend Bug

  • Action: Set Field Value = "Backend"

User Experience:

  • User selects Issue Type = Backend Bug

  • Component field auto-populates with "Backend" instantly

  • User can change it if needed (field is editable unless locked)

  • Saves manual selection every time


Dynamic Pre-fill with Smart Values

Smart Values make pre-filled values intelligent and context-aware.

Example 2: Set Due Date to Next Week

Requirement: New tasks should default to due next Monday

Rule Configuration:

  • Screen: Global Issue Create

  • Target Field: Due Date

  • Scope: Task

  • Action: Set Field Value = nextMonday()

User Experience:

  • User creates Task issue

  • Due Date auto-fills with next Monday's date

  • Date calculates dynamically (always next Monday, regardless of today's date)

  • User sees smart default that updates automatically

circle-info

Smart Values enable dynamic defaults. Instead of hardcoding "2026-03-15", use functions like nextMonday(), today().plusBusinessDays(5), or endOfMonth() that calculate values automatically. See Using Smart Values for all available functions.


User-Based Pre-filling

Automatically assign or populate fields based on who is creating the issue.

Example 3: Auto-Assign Critical Issues to Team Lead

Requirement: Critical priority issues should be assigned to team lead automatically

Rule Configuration:

  • Screen: Global Issue Create

  • Target Field: Assignee

  • Scope: Bug, Task, Story

  • Condition: Priority = Critical

  • Action: Set Field Value = (select team lead user)

User Experience:

  • User creates issue and sets Priority = Critical

  • Assignee field auto-populates with team lead

  • Critical issues get immediate attention from leadership

  • User can reassign if needed

Example 4: Set Reporter to Current User

Requirement: Auto-fill Reporter field with current user creating the issue

Rule Configuration:

  • Screen: Global Issue Create

  • Target Field: Reporter

  • Scope: All issue types

  • Action: Set Field Value = currentUser()

User Experience:

  • User opens create dialog

  • Reporter field pre-fills with their name automatically

  • No manual selection needed

  • Works for any user (dynamic based on who's creating)


Date-Based Pre-filling

Use Smart Values to set intelligent date defaults.

Example 5: Set Review Date to 3 Business Days from Today

Requirement: New stories should be reviewed 3 business days after creation

Rule Configuration:

  • Screen: Global Issue Create

  • Target Field: Review Date

  • Scope: Story

  • Action: Set Field Value = today().plusBusinessDays(3)

User Experience:

  • User creates Story issue

  • Review Date auto-fills with date 3 business days ahead

  • Skips weekends automatically

  • Consistent review timeline without manual calculation

Example 6: Set Start Date to Beginning of Week

Requirement: Epics should default to starting at the beginning of the current week

Rule Configuration:

  • Screen: Global Issue Create

  • Target Field: Start Date

  • Scope: Epic

  • Action: Set Field Value = startOfWeek()

User Experience:

  • User creates Epic

  • Start Date auto-fills with this week's Monday

  • Aligns planning with weekly cycles

  • Date updates based on when issue is created


Multi-Condition Pre-filling

Combine conditions to set values in specific contexts.

Example 7: Set Label Based on Priority and Type

Requirement: High-priority production bugs should be tagged "urgent-fix"

Rule Configuration:

  • Screen: Global Issue Create

  • Target Field: Labels

  • Scope: Bug

  • Conditions:

    • Priority = High OR Priority = Critical

    • Component contains "Production"

  • Action: Set Field Value = "urgent-fix"

User Experience:

  • User creates Bug with High priority and Production component

  • Label "urgent-fix" auto-applies

  • Production critical bugs are instantly tagged for visibility

  • Team can filter by label for urgent items


Field Reference Pre-filling

Copy values from other fields automatically.

Requirement: When Due Date is set, auto-populate Target Completion Date

Rule Configuration:

  • Screen: Global Issue Create

  • Target Field: Target Completion Date

  • Scope: Story, Task

  • Condition: Due Date is not empty

  • Action: Set Field Value = field("duedate")

User Experience:

  • User sets Due Date

  • Target Completion Date auto-fills with same value

  • Related dates stay synchronized

  • Reduces duplicate data entry


Practical Use Cases

Software Development Team

Set default Sprint for new issues:

  • Condition: Issue Type = Story OR Issue Type = Task

  • Action: Set Sprint = (current active sprint)

  • Result: New work items auto-assign to current sprint

Set Assignee based on Component:

  • Condition: Component = Frontend

  • Action: Set Assignee = Frontend Team Lead

  • Result: Issues route to appropriate team automatically

Customer Support Team

Set SLA Deadline for Premium customers:

  • Condition: Customer Tier = Premium

  • Action: Set SLA Deadline = today().plusBusinessDays(1)

  • Result: Premium tickets get automatic 1-day SLA

Auto-tag by issue source:

  • Condition: Reporter in group "External Users"

  • Action: Set Label = "customer-reported"

  • Result: External issues are tagged automatically

Project Management

Set Epic Link for specific projects:

  • Condition: Project = "Platform Redesign"

  • Action: Set Epic Link = (Platform Epic)

  • Result: All redesign issues link to parent Epic

Set default Fix Version for bugs:

  • Condition: Issue Type = Bug AND Status = To Do

  • Action: Set Fix Versions = (next release version)

  • Result: Bugs default to next release automatically


Best Practices

Use Smart Values for Dates

Never hardcode dates. Use Smart Values functions for dynamic calculation.

Good: today().plusBusinessDays(5) (always 5 business days from today) Bad: "2026-03-15" (static date that becomes outdated)

Make Pre-filled Fields Editable

Don't lock fields you pre-fill unless absolutely necessary.

Recommendation: Pre-fill + allow editing gives best user experience Exception: Lock when value must not change (e.g., auto-calculated fields)

Pre-fill Early in Workflow

Set values when forms open or early in user interaction.

Screen choice:

  • Global Issue Create: Best for default values when creating issues

  • Issue Transition: Pre-fill fields during status changes

circle-info

Note: Set Field Value is not supported on Issue View. Use Global Issue Create or Issue Transition screens for pre-filling values.

Combine with Progressive Disclosure

Show and pre-fill fields together for seamless experience.

Pattern:

  1. Rule 1: Show field when relevant

  2. Rule 2: Pre-fill field with smart default

Example:

  • Show "SLA Deadline" when Customer Tier = Premium

  • Pre-fill "SLA Deadline" = today().plusBusinessDays(1) when Customer Tier = Premium


Common Patterns

Pattern 1: Static Default Value

Set fixed value based on condition.

Pattern 2: Date Calculation

Use Smart Values for dynamic dates.

Pattern 3: User Assignment

Auto-assign based on context.

Pattern 4: Current User

Set field to whoever is creating the issue.

Pattern 5: Field Reference

Copy value from another field.


Troubleshooting

"Field doesn't pre-fill when I expect it"

Check:

  • Are conditions met when form opens?

  • Is the rule enabled?

  • Is the screen correct (Global Issue Create for new issues)?

  • Does scope match issue type?

Solution: Verify conditions evaluate to true at the moment the form loads or when the triggering field changes.

"Pre-filled value gets overwritten"

Check:

  • Is there another rule setting the same field?

  • Is the field being auto-filled by Jira's own defaults?

Solution: Review all rules affecting the target field. Disable conflicting rules or adjust conditions.

"Smart Value shows error or doesn't work"

Check:

  • Is the Smart Value syntax correct?

  • Are you referencing fields that exist?

  • Is the Smart Value function supported? (See Using Smart Values)

Solution: Verify function name and parameters. Check field IDs are correct.

"User can't edit pre-filled value"

Check:

  • Is there a separate "Lock Field" rule active?

  • Is the field configured as read-only in Jira settings?

Solution: Pre-fill action doesn't lock fields. Check for other rules or Jira configuration locking the field.


Smart Values Reference

Common Smart Values for pre-filling:

Date functions:

  • today() - Today at midnight

  • now() - Current date and time

  • nextMonday() - Next Monday

  • startOfWeek() - This Monday

  • endOfMonth() - Last day of month

  • today().plusBusinessDays(N) - N business days from today

  • addDays(today(), N) - N days from today

User functions:

  • currentUser() - Current user creating/editing issue

Field references:

  • field("fieldname") - Copy value from another field

  • field("duedate") - Get Due Date field value

  • field("customfield_10001") - Get custom field by ID

See complete reference: Using Smart Values


Pre-fill vs Other Actions

Understanding differences helps choose the right action.

Goal
Action
Use Case

Set default value

Set Field Value

Auto-populate fields when form opens

Show field conditionally

Show/Hide Field

Progressive disclosure

Prevent editing

Lock Field

Protect values from changes

Enforce filling

Make Field Required

Validation before submission

Combined example:

  • Show "SLA Deadline" when Premium customer (Show/Hide)

  • Pre-fill with today().plusBusinessDays(1) (Set Field Value)

  • Require field before saving (Make Field Required)


Progressive Disclosure: Show fields conditionally, then pre-fill with smart defaults

Dynamic Required Fields: Pre-fill with default, require user to confirm or change

Field Locking on Transitions: Pre-fill value during transitions, then lock to prevent changes (supported on Issue Transition screen only)


Next Steps

Implement your first pre-fill rule:

Learn Smart Values:

Combine with other patterns:

See practical examples:

Ready to implement pre-filling? Start with a simple static value and expand to Smart Values for dynamic defaults.

Last updated