Animations for Power Apps

Add animated progress indicators and charts to visualize data and loading states. These components bring life to your dashboards and feedback experiences.

When to use animations

Animated components work great for showing progress, visualizing completion percentages, and providing feedback during loading or processing operations.

These components use Power Apps' built-in animation capabilities. They work in both published apps and the preview mode.

Choose your animation component

Modern Progress Bar

Horizontal progress bar with smooth animation. Shows percentage completion with optional label.

Best for: File uploads, form completion tracking, multi-step processes, and loading indicators.

Settings you can customize:

  • Bar width and height
  • Animation duration
  • Show/hide percentage text
  • Trigger button text
  • Progress color

Modern Progress Circle

Circular progress indicator with animated fill. Shows percentage in the center of the circle.

Best for: Dashboard KPIs, completion metrics, single statistic displays, and status indicators.

Settings you can customize:

  • Circle size (width/height)
  • Stroke width (ring thickness)
  • Animation duration
  • Show/hide value text
  • Label text

Implementation steps

1. Select your animation

Go to Animations and choose the component that fits your visualization needs.

Use Progress Bar for linear processes (uploads, form steps). Use Progress Circle for standalone metrics (completion rate, score, percentage).

2. Configure the animation

Click on your chosen component and use the Settings tab to adjust:

  • Size - Width, height, stroke width
  • Animation - Duration of the fill animation
  • Display - Show/hide percentage labels
  • Colors - Match your app's design

3. Copy YAML code

Switch to the YAML tab and copy the generated Power Apps code to your clipboard.

4. Paste into Power Apps

Open Power Apps Studio, right-click in the Tree view, and select "Paste code".

Connect to dynamic data

After pasting, connect the animations to real data:

Set progress from variable

// Progress bar - set percentage (0-100)
varUploadProgress

// On timer or update
Set(varUploadProgress, varUploadProgress + 10)

Calculate from data

// Circle chart - calculate completion percentage
CountRows(Filter(Tasks, Status.Value = "Complete")) / CountRows(Tasks) * 100

Animate on button click

// Start progress animation
Set(varShowProgress, true);
Set(varProgressValue, 0);

// Timer to increment (in Timer.OnTimerEnd)
If(varProgressValue < 100,
    Set(varProgressValue, varProgressValue + 5),
    Set(varShowProgress, false)
)

Bind to form completion

// Track form fields filled
(
    If(!IsBlank(txtName.Text), 25, 0) +
    If(!IsBlank(txtEmail.Text), 25, 0) +
    If(!IsBlank(txtPhone.Text), 25, 0) +
    If(!IsBlank(txtAddress.Text), 25, 0)
)

Show loading during data operation

// Before operation
Set(varIsLoading, true);
Set(varProgress, 0);

// After operation completes
Set(varProgress, 100);
Set(varIsLoading, false)

Common use cases

File upload indicator

Use Progress Bar to show upload progress. Update the percentage as the file uploads.

Form completion tracker

Use Progress Bar to show users how much of a form they've filled out. Encourages completion.

Dashboard KPI

Use Progress Circle to show a key metric like "85% of tasks complete" or "Revenue: 72% of goal".

Loading feedback

Use Progress Bar with animation to indicate that data is loading or processing.

Goal tracking

Use Progress Circle to visualize progress toward a target - sales quota, project milestones, etc.

Step indicator

Use Progress Bar to show current step in a multi-step process (Step 2 of 5 = 40%).

Best practices

  • Match animation speed to operation - Fast animations for quick operations, slower for longer processes
  • Show meaningful percentages - Don't fake progress, show real completion when possible
  • Add context - Include labels like "Uploading..." or "75% Complete"
  • Consider color - Green for success/completion, blue for neutral progress
  • Don't overuse - One or two animated elements per screen is usually enough
  • Handle completion - Show success state when progress reaches 100%

Troubleshooting

Animation not starting

Check that your progress variable is updating. The component animates when the value changes.

Progress stuck at wrong value

Verify your calculation returns a number between 0 and 100. Check for division by zero if calculating percentages.

Animation too fast/slow

Adjust the animation duration in settings. Typical values are 0.5s to 2s.

Percentage text not showing

Make sure "Show Value" or "Show Percentage" is enabled in settings.

Circle not rendering correctly

Check that width and height are equal for a perfect circle. Unequal values create ellipses.

Power Apps has performance limits on animations. Avoid multiple simultaneous animations on complex screens, and test performance on target devices.

PowerLibs - 85+ Power Apps Components with Copy-Paste YAML Code