Dependent Custom Fields (Conditional Logic)

Dependent Custom Fields (Conditional Logic)

Dependent Custom Fields (also known as conditional logic or cascading fields) help you build smarter booking and inquiry forms by showing only the questions that apply based on a customer’s previous selection.

This keeps online booking flows shorter, reduces form abandonment, improves the accuracy of captured job details, and can automatically apply price adjustments and extra service duration when specific options are chosen.

Custom field dependency and conditional logic diagram

On this page


What are dependent custom fields?

A dependent field is a follow-up question that appears only when a customer selects a specific option in another custom field (the parent field).

In OctopusPro, the dependency is set at the option level inside the parent field. You can also configure that same option to apply:

  • Extra price (surcharge or discount)
  • Extra time (additional duration added to the service)

This is ideal for add-ons, upgrades, eligibility questions, special handling requirements, and “only ask if relevant” follow-ups.


Why use conditional logic?

  • Shorter forms: customers see fewer irrelevant questions, which improves completion rates.
  • Cleaner data: prevents invalid combinations and reduces admin edits later.
  • Accurate pricing & scheduling: totals and duration update automatically based on selections.
  • Better preparation: admins and fieldworkers see the right job details upfront.

How it works (parent vs dependent)

Conditional logic follows a simple rule:

  • IF the customer selects Option X in the parent field
  • THEN show Field Y (the dependent field).

Common parent field types (best for dependencies) include single-select fields such as:


Before you start

  • Create both your parent field and your dependent field first.
  • Make sure both fields are assigned to the correct service(s), otherwise they may not appear during booking.

Helpful guides:

Tip: If you want customers to see add-on pricing on the service page before booking, you can enable portal pricing display (optional):


How to set up dependent fields

Step 1: Open the parent custom field

Go to Settings ▸ Service Settings ▸ Services ▸ Custom Fields, then open the custom field you want to use as the parent (the field that contains the option customers choose first).

Edit the parent custom field option (pencil icon)

Step 2: Edit the option that should trigger the follow-up

Find the selection option that should reveal a dependent field (e.g., “Platinum”), then click the edit icon for that option.

Add dependent field under the selected option

Step 3: Add the dependent field

Click + Add dependent, then select the follow-up custom field from the dropdown list.

Select the dependent custom field from the dropdown

Step 4 (Optional): Apply extra price and/or extra duration

If this option should change the cost or expected time, configure:

  • Price Adjustment (surcharge/discount)
  • Extra Duration (minutes/hours added to the service)

Set additional cost and time for the selected option

Step 5: Save

Save your changes. The conditional logic will now apply anywhere that service custom field appears (Customer Portal/Branded App, Admin Portal, and Fieldworker app).


Where it appears

Customer Portal & Branded App

During booking, customers see the parent question first. When they select the triggering option, the dependent question appears immediately, keeping the booking flow short and mobile-friendly. If you’ve configured pricing/time changes, the estimate updates in real time.

Customer selects the parent option in the Customer Portal

Dependent field appears and estimate updates after selecting the triggering option

If you’re using a website inquiry form (lead capture), the same approach can be used to show relevant questions only when needed:

Admin Portal

Admins can review parent and dependent answers together inside the booking/quote, making it easy to confirm the correct scope, pricing, and duration.

Fieldworker app

Fieldworkers can view the captured answers on the job, including dependent selections and any adjusted pricing/time, so they arrive prepared with the right tools and expectations.

Dependent custom field answers shown in the Fieldworker app


Real-world examples

Beauty industry

A salon offers Facial Treatment Type with options like Classic, Hydration Boost, and Micro-Needling. Selecting Hydration Boost reveals a dependent field: Select Skin Type (Dry, Oily, Sensitive). If the customer selects Sensitive, you can add extra prep time and a surcharge to cover specialised products—while keeping the form clean and relevant.

Childcare industry

A daycare’s Care Session field includes Half-Day and Full-Day. Choosing Full-Day triggers a dependent dropdown: Select Meal Plan (Standard, Vegetarian, Allergy-Friendly). If Allergy-Friendly is selected, you can add a surcharge and store dietary notes for staff—without showing meal questions to half-day bookings.

Tip: You can also use multi-select add-ons and still apply conditional logic for follow-up questions when specific add-ons are selected:


Best-practice tips

  • Make the parent question crystal clear: customers should instantly understand why a follow-up appeared.
  • Keep dependency chains short: 1–2 levels is usually ideal (especially on mobile).
  • Use helper text for pricing/time: e.g., “SUV requires extra time and products (+$X / +Y mins).”
  • Test the full booking flow: verify the dependent field appears, and that totals/duration update as expected.
  • Review regularly: update dependencies when packages, pricing rules, or service durations change.

Troubleshooting

  • The dependent field doesn’t appear
    • Confirm you selected the correct option (the one with the dependent field attached).
    • Confirm the dependent field exists and is selected correctly under + Add dependent.
    • Confirm both fields are assigned to the same service and are active.
    • Confirm the dependent field isn’t hidden in the portal/app based on your visibility settings.
  • Pricing or duration isn’t updating
    • Confirm the Price Adjustment and/or Extra Duration is set on the correct option in the parent field.
    • Save changes, then test again from a fresh booking session (private/incognito window can help).
  • Too many follow-up questions
    • Reduce the chain length or group fields into steps using Custom Field Groups.
    • Keep only the “must-have” follow-ups and move non-essential questions to notes or optional fields.

To stay updated, please subscribe to our YouTube channel.

Scroll to top