Common Issues

Quick answers to the 10 most frequently asked questions.

Beginnerownermanagersales repcrew leadUpdated 2026-04-23

Common Issues

Quick answers to the 10 most frequently asked questions about CE Pro.


1. "My estimate won't send"

Check that the customer has an email address or phone number. At least one is required for delivery.

Verify a telecom provider is configured if you are sending via SMS. Go to Settings > Phone / Voice and confirm Esendex or Twilio is saved for the workspace.

Make sure your account is active and not past due on billing.

If you see an error toast message, note the exact text and contact support.

Screenshot placeholder
Estimate send dialog showing an error when no email or phone is provided

2. "Client says they didn't receive the estimate"

For email delivery, ask the client to check their spam or junk folder. Some email providers flag automated messages.

For SMS delivery, verify the phone number is correct. It should be 10 digits in US format with no country code prefix.

Go to Messages in the sidebar and check if the outbound message shows a delivery error.

Screenshot placeholder
Messages inbox showing an outbound message with a delivery error indicator

3. "My pricing doesn't look right"

Go to Pricing Manager and verify your default rates are set correctly.

Check if the estimate has manual overrides on individual services. Manual overrides replace the default pricing calculation.

Make sure the dirtiness level is set correctly. Heavy dirtiness adds a significant multiplier to the base price.

Screenshot placeholder
Pricing Manager showing default rates for common services

4. "I can't see a feature"

Some features are restricted by role. Sales Reps cannot access Billing, Settings, or Team Management.

Ask your account owner to check your role. Go to Settings --> Team to view and update team member roles.

Screenshot placeholder
Team page showing a list of team members with their assigned roles

5. "How do I change my plan?"

  1. Go to Billing in the sidebar.
  2. Click Manage Subscription.
  3. The Stripe customer portal opens.
  4. From there you can upgrade, downgrade, or update your payment method.
Screenshot placeholder
Billing page with the "Manage Subscription" button highlighted

6. "How do I cancel a sent estimate?"

You cannot unsend an estimate. However, you can change its status.

  1. Open the estimate from the Estimates list.
  2. Update the status to Expired or Cancelled.
  3. The customer sees the updated status if they visit the estimate link.
Screenshot placeholder
Estimate detail page with the status dropdown showing Expired and Cancelled options

7. "Can I edit an estimate after sending?"

No. Sent estimates are locked to preserve the record of what the customer received.

To make changes:

  1. Open the sent estimate.
  2. Click Duplicate to create a new draft with the same details.
  3. Edit the duplicate.
  4. Send the new version to the customer.
Screenshot placeholder
Estimate detail page with the Duplicate button highlighted

8. "How do I export data?"

Most table views have an Export or CSV button. You can find it on the Clients, Estimates, and Jobs pages.

  1. Apply any filters you want (date range, status, etc.).
  2. Click Export or CSV.
  3. A spreadsheet file downloads with the current filtered view.
Screenshot placeholder
Estimates list page with the Export button highlighted in the toolbar

9. "The app is slow"

Try these steps in order:

  1. Clear your browser cache.
  2. Switch to Chrome or Edge if you are using a different browser.
  3. Check your internet connection speed.
  4. Wait a few minutes and try again. The issue may be a temporary server spike.

If the problem persists across multiple browsers and devices, contact support.


10. "I forgot my password"

  1. Go to the login page.
  2. Click Forgot password?
  3. Enter your email address.
  4. Check your inbox for a reset link.
  5. Click the link, set a new password, and log in.
Screenshot placeholder
Login page with the "Forgot password?" link highlighted

The reset link expires after a limited time. If it has expired, request a new one.

If the Sign In page now shows the shorter Email or password is incorrect message, that is expected. CleanEstimate Pro keeps the low-level auth provider details out of the login card now, so the next step is to double-check the email address, retry the password, or use Forgot password? for a fresh access email.

If CE Pro says password reset email delivery is not configured, the reset flow itself is available but the workspace or environment is missing outbound email setup. Contact support so email delivery can be enabled.

If a brand-new reset or setup email opens straight to Invalid or expired reset link, request one more fresh link. CleanEstimate Pro now routes recovery and invite emails through a browser handoff screen that finishes the Supabase session in the app before opening the password form, so fresh links no longer fail just because the old server callback could not read the auth fragment from the email provider redirect.


If your workspace was provisioned through the early-access waitlist, use the same invited email address from the onboarding email.

If the original setup link has expired or was already used:

  1. Open the link anyway.
  2. On the password setup screen, click Use Forgot Password Instead.
  3. If you land on Sign In instead, click Forgot password?
  4. Enter the same invited email address.

CleanEstimate Pro now routes expired invite recovery through the same shared forgot-password flow used everywhere else. That keeps the email response generic, rate-limited, and still sends the right workspace-specific setup or recovery link for provisioned accounts without dropping you back into the public waitlist flow.

If you choose Forgot password? before the invited account has ever completed setup, CleanEstimate Pro now detects that pending workspace state and sends another setup email automatically instead of a generic password-reset email.

Fresh workspace setup emails now open through a short Finishing Sign-In screen before the password card. That handoff is expected and fixes the earlier issue where a brand-new setup email could still bounce to Invalid or expired reset link even though the Supabase invite was valid.

If you do land on the expired-link screen, CE Pro now lets you send yourself a fresh link right there from the same card. The button keeps the invited email address attached, so you do not need to retype it on a separate forgot-password page first.

If the shorter Finishing Sign-In handoff screen is the part that fails, its Need A New Link? link now preserves the same workspace redirect too. That retry path should keep you aimed at the invited workspace instead of falling back to a generic sign-in destination.

If the workspace-auth lookup has a temporary hiccup while that pending-invite check runs, CE Pro now falls back to the standard recovery email path instead of showing a hard server error from the forgot-password screen.

If an older invite email shows http:// or a localhost address, do not use that email. Request a fresh setup link. New workspace setup emails now force the production CleanEstimate URL outside local development so invite links do not point at a developer machine.

The password setup and forgot-password cards now use the shared CleanEstimate logo treatment too. If you still see the older plain text logo after deploy, refresh once to pull the latest auth screen bundle.


12. "My onboarding Services or Pricing step is blank"

If you are entering a brand-new workspace from a waitlist or invite flow and the Services or Pricing step looks empty, refresh once first.

CleanEstimate Pro now repairs the default onboarding catalog automatically when a provisioned workspace is missing starter setup records. The page should repopulate the standard service list and starter pricing fields instead of leaving you stuck on a blank step or a pricing save error.

If the page still stays empty after refresh, report the workspace email address and company name to support so the org bootstrap data can be inspected directly.


13. "Onboarding says failed to save company info" or another setup step

If you are a provisioned manager entering a workspace that is still unfinished, the onboarding flow should now let you complete the Company Info, Services, Pricing, and final completion steps without waiting for the owner to log in first.

If you still see a save error:

  1. Refresh once and retry the same step.
  2. Note the full inline error text shown in the onboarding card.
  3. Confirm which workspace you are entering, especially if you belong to a franchise operator and a child location.

CleanEstimate Pro now shows the real onboarding API error message instead of the older generic Failed to save company info message, so support can usually diagnose the issue from that exact text.


14. "An admin page says it failed to load"

If the Estimates, Jobs, or Invoices pages show a load error right after a rollout, refresh once first. CleanEstimate Pro now falls back to the core record tables while newer read models and optional payroll tables catch up, so those pages should keep loading even during schema rollout windows.

If the Estimates page was blank with a Failed to load estimates toast on March 16, 2026, that was a server-side loading bug in the estimate summary call path, not a data-loss issue. The fix is now live; if you still see the old error after deploy, hard refresh the admin app once and retry.

If the invoice page opens and Create Pay Link shows a setup error, the workspace is missing secure invoice-link signing. Ask support to confirm CUSTOMER_TOKEN_SECRET is set for the environment. Send Invoice can still succeed in that state, but the outgoing email will skip the online pay button until secure link signing is configured.

If Billing says the portal is temporarily unavailable, Stripe may still be missing customer-portal configuration or the workspace may not have a Stripe customer record yet.

If Messages, Billing, or account recovery now show a short plain-language error instead of a long technical provider message, that is expected. CE Pro now keeps the low-level Stripe, Twilio, Mailgun, Supabase, and database details in server logs and shows the operator the next useful action instead.


Need to report a bug?

Use the floating Report a Bug button in the lower-right corner of the admin app.

When you submit a bug report, CleanEstimate Pro automatically captures the current window, browser details, recent errors, and other diagnostics to help the team troubleshoot faster.

See [Reporting Bugs](/troubleshooting/reporting-bugs) for the full workflow.

Workspace Switcher Says the Workspace Identifier Is Invalid

If you were already signed in during a franchise rollout, the browser may hold an older workspace identifier briefly after a deploy.

CleanEstimate Pro now accepts the current workspace UUID, the readable workspace slug, and the exact workspace name when switching orgs, including older root-workspace ids that do not look like version-stamped UUIDs. If the switcher still feels stuck, refresh the admin app once and try again.

Was this article helpful?

Still need help? Contact support