You don't need to be a developer to build powerful, data-driven websites in Power Pages. Microsoft has designed 4 core tools specifically for makers like youβno code required.
In this guide, I'll show you how to choose the right tool for your needs and avoid common pitfalls.
The Simple Question That Changes Everything
Before you start building, ask yourself:
"What do I want my users to do?"
The answer determines which tool you need:
| User Action | Tool |
|---|---|
| Fill out a form | Basic Form |
| Browse/search data | Lists |
| Complete a multi-step process | Multistep Form |
| See personalized text | PowerFx |
Let's explore each tool in detail.
π§ Tool 1: Basic Forms (For Simple Forms)
What It Does:
Creates forms for users to submit or edit dataβlike a contact form, registration form, or profile editor.
Real-World Examples:
- β’ "Contact Us" form
- β’ Event registration
- β’ Profile update page
- β’ Job application form
β When to Use:
- Single-step forms
- One table (e.g., Contact, Account)
- Standard fields (name, email, phone)
- No complex branching logic
β When NOT to Use:
- Multi-step wizards β Multistep Forms
- Custom UI design β Web API (Developer)
- Multiple tables β Multistep Forms
π‘ How to Set It Up:
- 1. Open Design Studio β Data workspace
- 2. Click + New form
- 3. Select table (e.g., Contact)
- 4. Choose mode:
- Insert: New records (registration, contact form)
- Edit: Update existing records (profile editor)
- ReadOnly: Display info (view details)
- 5. Add to page
- 6. Set Table Permissions (CRITICAL!)
β οΈ Security Tip:
Always enable Table Permissions, or anyone on the internet can see your data!
- 1. Design Studio β Security workspace
- 2. Table permissions β + New permission
- 3. Select table, access type (Global/Contact/Account)
- 4. Assign Web Roles
π Tool 2: Lists (For Displaying Data)
What It Does:
Shows data in a table/grid formatβlike a customer list, product catalog, or search results.
Real-World Examples:
- β’ Active customers list
- β’ Product catalog
- β’ Job openings
- β’ Support tickets
β When to Use:
- Display records in a grid
- Sorting/filtering needed
- Link to detail pages
- Read-only or with actions (edit/delete)
β When NOT to Use:
- Custom HTML layout β Liquid Templates (Developer)
- Real-time updates β Web API (Developer)
π‘ How to Set It Up:
- 1. Design Studio β Data workspace
- 2. Click + New list
- 3. Select table (e.g., Account)
- 4. Choose Dataverse view (e.g., "Active Accounts")
- 5. Configure:
- Page size (records per page)
- Details page (link to form)
- Actions (Create, Edit, Delete)
- 6. Add to page
- 7. Set Table Permissions
π― Pro Tip: Multiple Views
You can add multiple views to a list (e.g., "Active Contacts" and "Inactive Contacts"). Users get a dropdown to switch between them.
π Tool 3: Multistep Forms (For Wizards)
What It Does:
Creates multi-step processesβlike a registration wizard, loan application, or onboarding flow.
Real-World Examples:
- β’ 3-step registration (Personal Info β Address β Confirmation)
- β’ Loan application (Applicant Info β Financial Details β Documents β Submit)
- β’ Event registration (Attendee Info β Session Selection β Payment)
β When to Use:
- Multi-step processes
- Conditional logic (if answer A, go to step X)
- Multiple tables (e.g., Contact + Account)
- Progress indicator
β When NOT to Use:
- Single-step form β Basic Form
- Highly custom UI β Web API (Developer)
π‘ How to Set It Up:
- 1. Design Studio β + Page β Start from blank
- 2. Insert β Multistep form
- 3. Configure steps:
- Load Form Step: Create/edit record
- Condition Step: Branching logic
- Redirect Step: Go to URL
- 4. Set progress indicator (show/hide)
- 5. Configure on success behavior (redirect, message)
- 6. Set Table Permissions for each table
π― Pro Tip: Conditional Logic
Use Condition Steps to create branching:
- β’ If user selects "Company", show company fields
- β’ If user selects "Individual", skip company fields
β‘ Tool 4: PowerFx (For Dynamic UI)
What It Does:
Adds dynamic, personalized text to your pagesβlike "Welcome, John!" or "Your order total: $150".
Real-World Examples:
- β’ Welcome message: "Hello, [User Name]!"
- β’ Dynamic button text: "Edit Profile" (if logged in) or "Sign In" (if not)
- β’ Conditional image: Different banner for different user types
- β’ Calculated value: "Total: [Sum of quantities]"
β When to Use:
- Personalized UI text
- Dynamic button text
- Conditional visibility
- Simple calculations
β When NOT to Use:
- Complex business logic β Server Logic (Developer)
- Data manipulation β Web API (Developer)
- Full CRUD operations β Forms/Lists
π‘ How to Set It Up:
- 1. Design Studio β Select Text, Button, or Image component
- 2. Click fx button in toolbar
- 3. Write PowerFx formula (Excel-like):
=Concatenate("Welcome, ", User.FullName, "!") - 4. Click Save
π» PowerFx Examples:
Personalized Greeting:
=Concatenate("Hello, ", User.FullName, "!")
Conditional Button Text:
=If(User.DataverseUserId <> Blank(), "Edit Profile", "Sign In")
Dynamic Value in Text:
Your order total is ${Sum(OrderLine1.Quantity, OrderLine2.Quantity)}
β οΈ Status:
Preview Feature: PowerFx is in preview. Use it for testing, but avoid production-critical scenarios until it's Generally Available (GA).
π― Decision Tree: Which Tool Do I Use?
Follow this simple flow:
START: What does the user need to do?
β Submit a form (1 step)
β Basic Form
β Submit a form (multiple steps)
β Multistep Form
β Browse/search data
β Lists
β See dynamic text (personalized)
β PowerFx
π Real-World Scenario: Event Registration
Let's build a complete event registration system using these tools.
Requirements:
- 1. Event list page (users browse events)
- 2. Registration form (users sign up)
- 3. Confirmation page (personalized message)
Page 1: Event List
- Tool: Lists
- Table: Event
- View: "Active Events"
- Actions: View Details
- Details Page: β Event Registration Form
Page 2: Event Registration Form
- Tool: Multistep Form
- Step 1: Personal Info (Contact table)
- Step 2: Event Selection (Event Registration table)
- Step 3: Confirmation
- On Success: Redirect to Confirmation Page
Page 3: Confirmation
- Tool: PowerFx (personalized message)
- Text: "Thank you, [User Name]! You're registered for [Event Name]."
β±οΈ Setup Time:
- No code: 30 minutes
- With developer (custom UI): 4-6 hours
Maker Power: You just built a full registration system without writing a single line of code.
β Common Maker Mistakes (and How to Avoid Them)
Mistake 1: Forgetting Table Permissions
Problem: Form/list shows "Access Denied" or exposes data publicly.
Solution: ALWAYS set Table Permissions + Web Roles.
Mistake 2: Using Basic Form for Multi-Step
Problem: Trying to cram multiple steps into one form.
Solution: Use Multistep Form instead.
Mistake 3: Not Testing as Different Users
Problem: Works for you (admin) but not for end users.
Solution: Test with different web roles (anonymous, authenticated).
Mistake 4: Overcomplicating with Custom Code
Problem: Asking developer to code something that Basic Form can do.
Solution: Check if no-code tools can handle it first.
π€ Power User Tip: When to Call a Developer
Sometimes, you'll hit a wall with no-code tools. Here's when to ask for help:
Call a developer if you need:
- β Custom UI design (beyond forms/lists)
- β Hidden business logic (calculations invisible to users)
- β Bulk operations (import 100 records at once)
- β External API integration (e.g., send to DocuSign)
- β Real-time updates without page reload
Developer tools: Web API, Server Logic, Plugins, Custom JavaScript
π Quick Reference Card
Print this and keep it on your desk:
| I Want To... | Tool | Complexity |
|---|---|---|
| Create a simple form | Basic Form | β Easy |
| Show data in a grid | Lists | β Easy |
| Build a multi-step wizard | Multistep Form | ββ Moderate |
| Add dynamic text | PowerFx | β Easy |
| Validate business rules | Business Rules | ββ Moderate |
| Send email notifications | Power Automate | ββ Moderate |
π― Next Steps
-
1.
Practice: Build a simple contact form using Basic Form
-
2.
Learn: Explore Lists by displaying Dataverse data
-
3.
Experiment: Try PowerFx for a welcome message
-
4.
Challenge: Build a 3-step registration wizard
Want to learn more? Check out the Developer's Guide to see what's possible with code.
π Resources
Remember: You don't need code to build powerful websites.
These 4 toolsβBasic Forms, Lists, Multistep Forms, and PowerFxβhandle 80% of maker needs.
Master these, and you'll ship faster than most developers. π