Skip to main content

Build a proposal

How to build a proposal in the form builder, add packages, configure proposal and invoice settings, and customize the design.

Written by Trevor
Updated today

Build a proposal so your clients can choose from a list of your services, sign a contract, and pay — all on one page.


Before you start

Proposals require at least one package template. Packages display your offers so clients can decide what to purchase. Navigate to Invoicing ➔ Packages to create your package templates before building your proposal.


Create a new proposal template

You can create a proposal template from Forms ➔ Form templates, or create a proposal directly inside a project.

From Form templates

  1. Navigate to Forms ➔ Form templates.

  2. Click New Form Template in the sidebar.

  3. Select Proposal from the form type list.

  4. Click Create Template.

This opens the proposal in the form builder.

From inside a project

  1. Open the project and click the Forms tab.

  2. Click Add a Form.

  3. Select New form from the options.

  4. Select Proposal from the form type list.

  5. Click Create Form.


Build the proposal

Once the form builder opens, you're ready to add packages, configure settings, and style the proposal.

Add package elements

Packages are the core of any proposal. You add them to the canvas using the Elements tab.

  1. Open the Elements tab in the sidebar.

  2. Click or drag the Package element onto the form canvas.

  3. Repeat for each package you want to include.

When a package element is first placed on the canvas, it shows a placeholder with a Select package dropdown. Use this to assign a package template to the element.

If you haven't created the package yet, click create a new one below the dropdown. This opens a package drawer where you can create a package inline — it will be saved as a template at Invoicing ➔ Packages.

Use a Container element with multiple columns to display packages side by side for easy comparison. Add the Container first, set the number of columns, then add a Package element inside each column.

Configure package element settings

When you select a package element on the canvas, the sidebar shows settings specific to that element. These let you control which package is displayed and how clients can interact with it.

The settings available are:

  • Select a package — Dropdown to choose an existing package template. Use the search field to find packages by name.

  • Edit package — Opens the package drawer to view and edit the package details. This button is disabled until the form is saved.

  • Pre-selected — When set to Yes, the package appears already selected when the client views the proposal.

  • Quantity settings — Sets the Min quantity and Max quantity for the package, constraining what clients can enter in the quantity field.

Set Pre-selected to Yes and disable the checkbox or button smart field to require a specific package on the proposal. See Require a package on a proposal for details.

Editing a package from within the proposal does not change the original package template at Invoicing ➔ Packages. Changes only affect how the package appears on this specific proposal.

Edit package text and smart fields

You can customize the text inside each package element and control which package details are displayed using Package smart fields.

Double-click the package element on the canvas to enter inline editing mode. A text editor toolbar appears with a Smart fields button. Click it to open the Package smart fields picker, where you can insert fields such as package name, total, description, quantity field, large checkbox, small checkbox, and select button.

When you're done editing, click the check icon to save your changes or the X icon to cancel.

For a full reference of available Package smart fields, see the smart field reference guide.


Configure settings

The Settings tab in the sidebar contains all proposal-specific configuration, divided into three sections: Proposal options, Invoice options, and Public proposal options, followed by General settings.

Proposal options

Open the Settings tab. The first section is Proposal options.

  • Include contract — When set to Yes, a dropdown appears to select a contract template. The selected contract is added to the proposal submission flow so clients can sign immediately after selecting their package. For more details, see Connect a contract and invoice to a proposal.

    When editing a proposal that is already applied to a project, the contract dropdown is replaced by a notice: "Please add the contract directly to the project."

    If the selected contract has a different legacy mode setting than the proposal, a warning banner appears prompting you to reconcile the settings.

  • Multiple packages can be selected — Controls whether clients can select more than one package. This defaults to Yes on new proposals. When set to No, clients can select only one package.

If you set Multiple packages can be selected to No but have pre-selected more than one package, clients will see an error when they try to submit. Make sure this setting matches your intended behavior before sending.

Invoice options

Below Proposal options, the Invoice options section appears.

  • Include invoice — When set to Yes, the invoice that is automatically generated from the client's package selections is shown to the client after they submit the proposal.

  • Allow discounts — When set to Yes, a multi-select dropdown appears where you can choose which discount codes are valid for this proposal. See Allow clients to apply a discount on proposals for details.

  • Payment plan — A dropdown lets you attach a payment plan to the invoice generated by the proposal.

    When editing a proposal already applied to a project, the payment plan dropdown is replaced by a notice: "Please add the payment plan directly to the primary invoice for this project."

If this proposal is sent through a flow that also contains a payment plan, the two plans will conflict and produce errors. Set the payment plan in either the proposal or the flow — not both.

Public proposal options

The Public proposal options section controls whether the proposal can be shared publicly (for example, embedded on your website).

  • Create new project once proposal is completed — When set to Yes, submitting the proposal automatically creates a new project in your account.

    If the public proposal option is enabled, additional fields become available:

    • Default flow — Selects a flow to activate automatically when the client completes the proposal. If the proposal contains a flow element, that takes precedence over the default flow.

    • Redirect URL — Redirects the client to another URL after they submit the proposal. Note that the redirect will not occur if the proposal includes a contract or an invoice. The URL must include http:// or https://.

    • Project Status — Sets the initial project status for the newly created project. Options are categorized by Leads and Jobs.

    • Project title — Sets the title for the newly created project.

    For full setup guidance, see How to set up a public proposal.

Public proposal options require a Premier plan. On Starter plans, the toggle and related fields are disabled.

General settings

Below the proposal-specific sections, General settings applies to the proposal form itself.

  • Expiration date — Sets when the proposal can no longer be submitted. Choose from:

    • Relative — Calculates expiration from a trigger (for example, "2 days after applied to project"). You can set the interval in hours, days, or weeks, and choose from offset options: after project start, before project start, after project end, before project end, or after applied to project.

    • Fixed — A specific calendar date and time.

    • No expiration — The default. The proposal does not expire.

  • Reminders — Appears only when an expiration date is set. Lets you schedule reminder notifications before the proposal expires.

  • Completion message header — The heading clients see after submitting.

  • Completion message body — The body text clients see after submitting.

  • Password protection — When set to Yes, the proposal is only accessible through the client portal after the client logs in. By default, anyone with the link can access the proposal directly.


Customize the styling

Open the Styling tab in the sidebar to customize the visual design of the proposal. You can adjust font family, font size, font color, padding, and submit button text.

For a full walkthrough of styling options, see the form builder overview.


Share a public proposal

The Sharing tab in the sidebar is available only when Create new project once proposal is completed is set to Yes in the Settings tab. From here you can copy an embed code to add the proposal to your website, or copy a direct link to share.

See How to set up a public proposal for complete setup details.


Save, test, and send the proposal

Save the proposal

Click Save form in the form builder header to save your work. To save and exit the builder, click Save and close.

Test the proposal

Click Preview in the form builder header to see how the proposal looks to clients. Click Edit form to return to editing.

Preview is useful for visual checks, but it does not allow you to test the full submission flow. To test end-to-end — including package selection, contract signing, and invoice generation — first create a test project, setting yourself as the client. Apply the proposal in your test project, and open the proposal in an incognito browser window or on a device where you are not logged in to Dubsado. Complete the proposal and/or contract and invoice to ensure everything is set to your liking before using the proposal with a real client.

Send the proposal

Once the proposal is saved and tested, you're ready to send it. See Send a proposal, questionnaire, or sub-agreement for sending instructions.

For public proposals, use the Sharing tab to get an embed code or a direct link.


FAQ

Will editing a package from the proposal change my package template?

No. Editing the package within the proposal does not change the original package template at Invoicing ➔ Packages. Changes only affect how the package appears on this specific proposal.

Why can't I share my proposal?

The Sharing tab is only available when Create new project once proposal is completed is set to Yes in the Settings tab. This requires a Premier plan. To send a non-public proposal to a specific client, see Send a proposal, questionnaire, or sub-agreement.

My proposal shows the error "Oops. You can only select one package."

Toggle Multiple packages can be selected to Yes in the Settings tab under Proposal options.

My proposal shows "This form can no longer be used."

This error appears when a public proposal is changed to no longer be public — that is, Create new project once proposal is completed was toggled back to No. Re-enable the setting or create a new public proposal.

My client sees "Error: Invoice ID is required" when trying to submit the proposal.

This error means there is no primary invoice in the client's project. A proposal always applies the client's package selections to the primary invoice in the project. If the primary invoice was deleted before the client submitted, the proposal has nowhere to apply the selections.

To fix it, navigate to the project's Invoicing tab and create a new invoice. Once a primary invoice exists in the project, the proposal should be submittable for the client.

Did this answer your question?