Skip to main content

Smart field reference guide

A comprehensive list of every smart field in Dubsado, organized by category.

Written by Trevor
Updated today

Smart fields are placeholder tokens that automatically fill in project, client, invoice, and other details when Dubsado sends an email, renders a form, or displays a contract. This article lists every smart field available, organized by the categories in the smart field menu.


How to insert a smart field

In any text editor — email templates, form builders, contract templates — click the Smart Fields button in the toolbar (circuit board icon).

A popover opens with a search bar and a list of expandable category sections. Type in the Search fields... bar to filter across all categories at once, or expand a category to browse its fields. Click any smart field to insert it at your cursor position. Each field in the popover shows its label, description, and the raw handlebars syntax.

Always insert smart fields using the Smart Fields menu. Do not copy and paste the handlebars code from this article — pasting smart field syntax from an external source may cause formatting errors when the field tries to render.


Project smart fields

Project smart fields autofill basic information about the project. You can use them in any form or email sent through a project.

Project title

  • {​{job.title}}

  • Displays the title of the project

  • Example: Photography — Johnson Wedding

Project start date

  • {​{job.start | mediumDate}}

  • Displays the starting date of the project in MMM D, YYYY format

  • Example: Feb 9, 2023

Project start time

  • {​{job.start | shortTime}}

  • Displays the starting time of the project in H:MM format

  • Example: 10:45 AM

Project end date

  • {​{job.end | mediumDate}}

  • Displays the ending date of the project in MMM D, YYYY format

  • Example: Feb 9, 2023

Project end time

  • {​{job.end | shortTime}}

  • Displays the ending time of the project in H:MM format

  • Example: 10:45 AM

Location address

  • {​{job.address | address}}

  • Displays the project location address with line breaks, including location name, street address, city, state/province, zip/postal, and country

  • Example: Dub Design Co 123 Main St Suite 102 Burbank, CA 91502 USA

Location name

  • {​{job.address | addressLocationName}}

  • Displays the project location name only

  • Example: Dub Design Co

Location contact name

  • {​{job.contactName}}

  • Displays the project location contact name

  • Example: Sarah Chen

If you have custom fields set up for projects, they also appear at the end of this category in the smart field menu. See map a form field to learn how custom fields connect to project data.


Client smart fields

Client smart fields autofill information about the client linked to a project. All information pulls from the client's record in Contacts. You can use these fields in any email or form sent through a project.

Full name

  • {​{client.name}}

  • Displays the first and last name of the primary client

  • Example: Becca Berg

First name

  • {​{client.firstName}}

  • Displays the first name of the primary client

  • Example: Becca

Last name

  • {​{client.lastName}}

  • Displays the last name of the primary client

  • Example: Berg

Email

  • {​{client.email}}

  • Displays the email address of the primary client

Phone

  • {​{client.phone}}

  • Displays the phone number of the primary client

  • Example: (818) 555-0123

Company name

  • {​{client.company.name}}

  • Displays the client's company name

  • Example: Berg Creative Studio

Street address (multi-line)

  • {​{client.address | address}}

  • Displays the address from the client profile, formatted with line breaks

  • Example: 456 Main St Apt 204 Burbank, California 91501

Street address (single line)

  • {​{client.address | address : true}}

  • Displays the address from the client profile all on one line

  • Example: 456 Main St Apt 204, Burbank, California 91501

Shipping address

  • {​{client.shippingAddress | address}}

  • Displays the shipping address from the client profile, formatted with line breaks

  • Example: 456 Main St Apt 204 Burbank, California 91501

Alt. contact first name

  • {​{client.altContact.firstName}}

  • Displays the first name of the alternate contact on the client record

  • Example: Jordan

Alt. contact last name

  • {​{client.altContact.lastName}}

  • Displays the last name of the alternate contact on the client record

  • Example: Berg

Alt. contact email

  • {​{client.altContact.email}}

  • Displays the email address of the alternate contact

Alt. contact phone

  • {​{client.altContact.phone}}

  • Displays the phone number of the alternate contact

  • Example: (818) 555-0456

If you have custom fields set up for contacts, they also appear at the end of this category in the smart field menu. See map a form field to learn how custom fields connect to client data.


Invoice smart fields

Invoice smart fields autofill information from the primary invoice on a project. If a project has multiple invoices, these fields only pull from the one marked as primary.

You can add invoice smart fields to a contract template and attach that contract to a proposal. When the client submits the proposal, the invoice gets created automatically and the smart fields autofill the invoice details in the contract.

Invoice total (with tax)

  • {​{job.invoice | total}}

  • Displays the total invoice amount, including tax and discounts

  • Example: $3,210.00

Invoice subtotal

  • {​{job.invoice | subtotal}}

  • Displays the invoice subtotal before taxes and discounts

  • Example: $5,350.00

Total tax amount

  • {​{job.invoice | invoiceTaxTotalFormatted}}

  • Displays the total amount of tax charged on the invoice

  • Example: $8.49

Amount remaining

  • {​{job.invoice | remainder}}

  • Displays the remaining balance left to pay on the invoice

  • Example: $3,151.67

Amount paid

  • {​{job.invoice | paid}}

  • Displays the total amount the client has paid on the invoice so far

  • Example: $2,140.82

Amount discounted

  • {​{job.invoice | discountTotalFormatted}}

  • Displays the total dollar amount discounted from the invoice

  • Example: $259.00

Full invoice table

  • {​{job.invoice | packageItems:true}}

  • Displays a table showing the invoice item name, description, quantity, unit price, tax, and subtotal for each line item

Item names & descriptions

  • {​{job.invoice | invoiceItemNamesDesc}}

  • Displays each line item name followed by a bulleted list of the line item's description

  • Example: Business Package

    • Up to 12 pages

    • 6 months of support

    • 10 email accounts

Item names

  • {​{job.invoice.items | packageItemNames}}

  • Displays the name of each invoice line item, separated by line breaks

  • Example: Business Package A/B Add-on

Invoice number

  • {​{job.invoice.number}}

  • Displays the invoice number as listed in Dubsado

  • Example: 23

Invoice title

  • {​{job.invoice.title}}

  • Displays the title of the invoice, if you manually changed it from the default

Payment plan

  • {​{paymentSchedule | paymentScheduleFilter}}

  • Displays a table showing the due date and amount due for each installment in the invoice payment plan


Brand smart fields

Brand smart fields autofill information about you and your workspace. These fields pull from your workspace settings, not from individual team members' profiles.

Brand smart fields only display information for the workspace owner. They do not pull information about team members added to your workspace.

Full name

  • {​{user.name}}

  • Displays your first and last name, set in Settings ➔ Name & Sign-in

  • Example: Becca Berg

First name

  • {​{user.contact.firstName}}

  • Displays your first name, set in Settings ➔ Name & Sign-in

  • Example: Becca

Last name

  • {​{user.contact.lastName}}

  • Displays your last name, set in Settings ➔ Name & Sign-in

  • Example: Berg

Business email

  • {​{brand.email}}

  • Displays your business email address, set in Settings ➔ Business Info

Phone

  • {​{brand.phone}}

  • Displays your business phone number, set in Settings ➔ Business Info

  • Example: (818) 555-0100

Logo

  • {​{brand.logo | logo}}

  • Displays your uploaded logo image, set in Settings ➔ Styling

Business name

  • {​{brand.name}}

  • Displays the name of your business, set in Settings ➔ Business Info

  • Example: Berg Creative Studio

Business address

  • {​{brand.address | address}}

  • Displays your business address with line breaks, set in Settings ➔ Business Info

  • Example: 123 Main St Suite 102 Burbank, CA 91502

Email signature

  • {​{brand.emailTemplate.signature}}

  • Displays your email signature, configured in Settings ➔ Emails


Date smart fields

Date smart fields autofill the current date and time at the moment the email or form is rendered. For example, if your contract template includes a date smart field and you add that contract to a project on June 3, the date fills in as June 3 and stays that way.

Date and time formatting follows your local conventions based on the time zone set in Settings ➔ Calendar & time zone.

Current date & time

  • {​{curDate | medium}}

  • Displays the current date and time

  • Example: Feb 9, 2021 1:30:00 PM

Current time

  • {​{curDate | shortTime}}

  • Displays the current time only

  • Example: 1:30 PM

Long date (full month)

  • {​{curDate | longDate}}

  • Displays the current date with the full month name spelled out

  • Example: February 9, 2021

Medium date (abbr. month)

  • {​{curDate | mediumDate}}

  • Displays the current date with an abbreviated month name

  • Example: Feb 9, 2021

Short date (MM/DD/YY)

  • {​{curDate | shortDate}}

  • Displays the current date in short numeric format

  • Example: 2/9/21


Links

Link smart fields generate branded buttons that link to Dubsado documents. They display as a large button in your workspace color. Link smart fields are most commonly used in email templates. For guidance on using them effectively, see using link smart fields in email templates.

Primary invoice

  • {​{job | invoiceLink}}

  • Displays a button that links the client to the primary invoice on the project

Contract

  • {​{job | contractLink}}

  • Displays a button that links the client to the project contract. The default button text shows the contract title.

Client portal

  • {​{client | portalLink}}

  • Displays a button that links the client to their client portal

Portal password

  • {​{client | portalPassword}}

  • Displays the client portal password as plain text

  • Example: joedubsado123

Form

  • {​{form | formLink}}

  • Displays a button that links to a sub-agreement, questionnaire, or proposal. The default button text shows the form title.

Scheduler

  • {​{scheduler | schedulerLink}}

  • Displays a button that links to a scheduler

Scheduler group

  • {​{schedulerGroup | schedulerGroupLink}}

  • Displays a button that links to a scheduler group


Package smart fields

Package smart fields pull information from a package template. They can only be used inside a package element text box when building a proposal — they are not available in other forms or email templates.

Package smart fields fall into two groups: fields that display information about the package, and selection buttons that let clients choose a package.

Package information fields

These fields display details about the package, similar to how invoice smart fields display invoice details.

Package Name

  • {​{package.name}}

  • Displays the name of the package as it appears in Invoicing ➔ Packages

  • Example: Business Package

Package Total With Tax

  • {​{package.items | invoiceTotal : false | currency}}

  • Displays the total cost of the package, including tax

  • Example: $500.00

Package Total No Tax

  • {​{package.items | invoiceTotal : true | currency}}

  • Displays the total cost of the package before tax

  • Example: $500.00

Package Tax Total

  • {​{package.items | invoiceTaxTotal | currency}}

  • Displays the sum of all tax charged in the package

  • Example: $8.59

Package Items Names & Amounts

  • {​{package.items | packageItems}}

  • Displays a table with the item name, description, quantity, unit price, tax, and subtotal for each line item in the package

Package Item Names & Descriptions

  • {​{package.items | packageItemNamesDesc}}

  • Displays each line item name followed by a bulleted list of the item's description

  • Example: Basic Package

    • Up to 3 pages

    • 1 email account

Package Item Names

  • {​{package.items | packageItemNames}}

  • Displays the name of each item in the package, separated by line breaks

  • Example: Basic Package Warranty

Package selection buttons

These fields display something the client can click to select a package. You can add your own text above or beside a quantity box or checkbox to label it.

Quantity

  • {​{packages | packageQuantity}}

  • Displays an editable quantity box the client can type into. Entering a quantity selects the package — no additional checkbox or button is needed.

Large Checkbox

  • {​{packages | packageLargeCheckbox}}

  • Displays a large checkbox the client can click to select the package

Small Checkbox

  • {​{packages | packageSmallCheckbox}}

  • Displays a small checkbox the client can click to select the package

Button

  • {​{packages | packageButton}}

  • Displays a button the client can click to select the package. The default button text is "Select."


Appointment smart fields

Appointment smart fields autofill details about a scheduled appointment. They are valid in two contexts:

  1. The default appointment email templates in Messages ➔ Default templates (specifically the appointment confirmed, appointment rescheduled, and appointment cancelled templates)

  2. Custom email templates assigned to a scheduler template in Events ➔ Scheduler Templates for confirmation or reminder emails

Appointment smart fields will not work in other email templates. Because these fields reference a specific booked appointment, they can only be used in templates that are triggered by appointment events.

Appointment Name

  • {​{appointment.title}}

  • Displays the first and last name of the client who booked, followed by a dash and the appointment name pulled from the scheduler template

  • Example: Becca Berg — Consultation Call

Appointment Location

  • {​{appointment.location}}

  • Displays the location of the appointment, pulled from the Location field on the scheduler template

  • Example: 123 Main St, Burbank, CA

Appointment Duration

  • {​{appointment.duration | duration}}

  • Displays how long the appointment lasts, pulled from the Appointment duration setting on the scheduler template

  • Example: 30 minutes

Appointment Start Date

  • {​{appointment.start | mediumDate}}

  • Displays the start date of the appointment in MMM D, YYYY format

  • Example: Feb 9, 2023

Appointment End Date

  • {​{appointment.end | mediumDate}}

  • Displays the end date of the appointment in MMM D, YYYY format

  • Example: Feb 9, 2023

Appointment Start Time

  • {​{appointment.start | shortTime}}

  • Displays the start time of the appointment in H:MM format, along with the client's time zone

  • Example: 3:30 PM (PST)

Appointment End Time

  • {​{appointment.end | shortTime}}

  • Displays the end time of the appointment in H:MM format, along with the client's time zone

  • Example: 4:00 PM (PST)

Appointment Cancellation Reason

  • {​{appointment.cancelled.reason}}

  • Displays the cancellation reason provided by the client when they cancel an appointment

  • This field only works in the Appointment Cancelled default template in Messages ➔ Default templates

Appointment Reschedule Button

  • {​{appointment | appointmentRescheduleBtn}}

  • Displays a button in your workspace color that allows the client to reschedule their appointment on their own

Appointment Cancel Button

  • {​{appointment | appointmentCancelBtn}}

  • Displays a button that allows the client to cancel their appointment on their own. The button color cannot be changed.

Appointment Conferencing Link

  • {​{appointment | appointmentConferencingLink}}

  • Displays a clickable link to the video conferencing session generated by the scheduler

The Appointment Conferencing Link field requires video conferencing to be connected to your workspace and enabled on the scheduler template.

Appointment Add to Calendar Link

  • {​{appointment | calendarLink}}

  • Displays a clickable link the client can use to add the scheduled appointment to their calendar


Form smart fields

Form smart fields reference the specific sub-agreement, questionnaire, or proposal being sent. They work in an email template when sending a form through a project, either manually or through a flow.

Form Title

  • {​{form.title}}

  • Displays the form title as text, as it appears in Forms ➔ Form Templates

  • Example: Design Co Questions

Form Link

  • {​{form | formLink}}

  • Displays a button that links to the sub-agreement, questionnaire, or proposal. The default button text shows the form title.

Form Type

  • {​{form.kind}}

  • Displays the type of form being sent as text

  • Example: sub agreement, questionnaire, or proposal

Form Expiration Date

  • {​{form.expiryDate | mediumDate}}

  • Displays the expiration date of the form, if one was set in the form settings

  • Example: Mar 15, 2023

Form Expiration Date only works in the Form Reminder template in Messages ➔ Default templates. It will not fill in if used in other email templates.


Payment plan smart fields

Payment plan smart fields autofill details about an individual installment in an invoice payment plan. They only work in payment reminder emails — if you send an email with these fields manually or through a flow outside of a payment reminder, the fields will not fill in.

The Payment Plan category only appears in the smart field menu when you are editing a template. It is not shown when composing a one-off email inside a project.

Due Date + info

  • {​{scheduledPayment | paymentDueDate : job}}

  • Displays the due date of the payment installment in M/D/YY format. If the payment has a relative trigger, the trigger description is appended.

  • Example with a relative trigger: 2/18/21 - 30 day(s) before project start date

  • Example without a relative trigger: 2/18/21

Due Date

  • {​{scheduledPayment | paymentDueDate : job : true}}

  • Displays the due date of the payment installment only, without any relative trigger information

  • Example: 2/18/21

Amount Due + info

  • {​{scheduledPayment | paymentAmountDue : job.invoice.schedule : job.invoice}}

  • Displays the amount due for the installment along with its percentage of the remaining invoice balance

  • Example: $900.00 - 50% of remaining invoice

Amount due

  • {​{scheduledPayment | paymentAmountDueSimple : job.invoice.schedule : job.invoice}}

  • Displays the amount due for the installment only, without the percentage information

  • Example: $900.00


FAQ

Why is a smart field showing the raw code instead of the actual value?

This usually happens when a smart field was copied and pasted from an external source rather than inserted using the Smart Fields button. Delete the raw code and re-insert the field using the menu. Also check that you're using the field in a supported context — for example, appointment fields only work in appointment templates, and payment plan fields only work in payment reminder emails.

Can I use smart fields in any email or form?

Most smart fields work in any email or form sent through a project. The exceptions are: appointment fields (appointment templates only), payment plan fields (payment reminder emails only), package fields (proposal package elements only), and Form Expiration Date (the Form Reminder default template only).

Do smart fields work for team members added to my workspace?

Brand smart fields pull from the workspace owner's settings only. They do not display information for team members added to your workspace.

Can I search for a smart field without browsing through categories?

Yes. After clicking the Smart Fields button in the toolbar, type in the Search fields... bar to filter across all categories at once.

Where do custom fields appear in the smart field menu?

Custom fields appear at the end of the Project or Client category, depending on which type the custom field was created for.

Did this answer your question?