Customer List Performance
Fast search and filtering with optimized queries
Overview
The customer list loads quickly even with thousands of customers by using optimized database queries, server-side search, and efficient filtering. Search by name, email, phone, or address to find customers instantly without waiting for full table scans.
How Search Works
Server-Side Search
When you type in the search box:
- Query runs on the server - Not in your browser
- Searches multiple fields - Name, email, phone, address, city
- Returns up to 500 results - Prevents overwhelming the UI
- Separate queries for homeowners and businesses - Runs in parallel for speed
What Gets Searched
For homeowner customers:
- User name
- User email
- User phone
For business/builder customers:
- Company name
- Company email
- Company phone
- Company address
- Company city
- Contact name
- Contact email
- Contact phone
Performance Optimizations
Parallel Queries
Customer search runs two queries simultaneously:
- Homeowner search - Finds individual customers
- Company search - Finds business and builder customers
Results are combined and returned together, cutting search time in half.
Result Limits
- 500 homeowners max per search
- 500 companies max per search
- 1000 total results max displayed
If your search returns more than 500 matches in either category, refine your search term to narrow results.
Case-Insensitive Search
All searches ignore capitalization, so "john smith", "John Smith", and "JOHN SMITH" return the same results.
Filtering
By Customer Type
Use the filter dropdown to show:
- All customers - Default view
- Homeowners only - Individual residential customers
- Builders only - Construction companies
- Businesses only - Commercial customers
By Status
Filter by:
- Active - Current customers
- Inactive - Archived customers
- All - Both active and inactive
Pagination
The customer list shows 10 customers per page by default. Use the page size dropdown to show 25, 50, or 100 per page.
Tips
- Be specific in search - Searching "john" returns all Johns, "john smith 512" narrows to specific matches
- Use partial phone numbers - Search "512" to find all customers with 512 area code
- Search by city - Find all customers in a specific location
- Filter before searching - Select customer type first to reduce result set
Questions
Q: Why doesn't my search return all matching customers? A: Search is capped at 500 homeowners and 500 businesses to keep the list fast. Refine your search term to narrow results.
Q: Can I search by address? A: Yes - address and city are included in business/builder customer search, but not homeowner search (since homeowners link to properties separately).
Q: Why is search so fast? A: Server-side queries with database indexes, parallel execution, result limits, and case-insensitive matching keep searches under 200ms even with large customer databases.