Product Icon

Gravity Forms Product Options for WooCommerce

Connect Gravity Forms to WooCommerce products: forms price and configure them, and every order becomes a Gravity Forms entry.
Choose a billing option
$69
Save 20%
$138 $110.40

Product comparison

Subscription includes

  • Product updates and improvements
  • Customer support
  • 30-day money-back guarantee

Gravity Forms Product Options for WooCommerce brings Gravity Forms to your products. Attach a form to a product and it renders on the product page, exactly as you built it: conditional logic, every field type, uploads, multi-page flows. Its Product, Option and Quantity fields price the item as the customer fills it in, and each sale becomes a Gravity Forms entry that carries the order number and the amount actually paid.

If your business already runs on Gravity Forms, its notifications, its add-ons for PDFs, spreadsheets, Zapier, Mailchimp or post creation, its exports, this is how those keep working when the form is selling a product. One form builder, one place where the answers live, and WooCommerce doing what it does best: cart, checkout, payment and shipping.

Key Benefits

  • Your Gravity Forms, On Your Products – The form editor stays the one place you build the experience: conditional logic, uploads, multi-page forms and every field type behave on the product page as they do anywhere else
  • Every Sale Is An Entry – Each ordered item gets one Gravity Forms entry with the order number, the full line total paid and a payment status that follows the order, so feeds, exports and add-ons reconcile with WooCommerce
  • Notifications That Wait For The Order – Form notifications go out once, and only when the order reaches a status you choose; a declined card sends nothing
  • Orders That Read Like Orders – The cart and the order show the customer’s answers, not the form’s plumbing: hidden and admin-only fields stay out, priced choices read “Ribbon +$2.00”, uploads show by name
  • Form Fields That Drive The Sale – A field can set the quantity, the weight and dimensions WooCommerce rates shipping on, or the cart thumbnail

Main Features

  • Live Price Breakdown – Base price, options and total update as the customer chooses, then the store confirms the exact figure so tax display, currency switchers and pricing plugins are honoured
  • Discounts As Options – A negative option price takes money off; the unit price never goes below zero
  • Every Gravity Forms Field Type – Conditional logic, multi-page forms, uploads, dates, addresses and calculations behave exactly as in a standalone form, because Gravity Forms’ own API renders and validates them
  • Gravity Forms Pricing Fields – Product, Option, Quantity, Shipping and Calculation fields price the item with Gravity Forms’ own arithmetic; a percentage discount is a Calculation field, not a plugin setting
  • Entries Where Your Add-ons Expect Them – Created when the order is placed, or when the item is added to the cart for add-ons that need to react earlier; never duplicated by a later status change
  • Cart Editing – An Edit link reopens the product with the customer’s answers and priced options filled in; saving replaces the line or adds one
  • Quantity From A Field – A form field sets the line quantity, or leaves it alone and reduces stock by its value for products sold by the piece and stocked by the metre
  • Customer Image As Thumbnail – An uploaded image becomes the item’s picture in the cart
  • Summary Modes – Visible fields, every field, a chosen list, or a template written with merge tags
  • Reorder And Renewals – Order again carries the original choices; subscription renewals get their own entries
  • Shortcode – Place a configured product’s form on any page
  • Structured Data As A Range – Stop search engines quoting the base price as the price
  • Eight Tools For AI Assistants – Registered with the WordPress Abilities API, under the same WooCommerce permissions as the screens
  • Blocks, HPOS, Multisite – Cart and Checkout blocks, High-Performance Order Storage, block themes and networks

Entries You Can Reconcile

Gravity Forms add-ons, exports and notifications all run on entries. Each ordered item gets exactly one, created once the order exists and never duplicated by a later status change. It carries the order number, the order item, the product, the base price and the full line total paid, and its payment status follows the order from Pending through Paid to Refunded. An entry that says 12 for a product that sold for 62 is a reconciliation job; these say 62.

Built On Gravity Forms’ Public API, Not Around It

Validation runs through GFAPI, entries through the same lead builder Gravity Forms uses for its own submissions, and the form renders through gravity_form(). Nothing bypasses the plugin’s rules, which is why conditional logic, required fields, uploads and multi-page forms keep working as Gravity Forms updates. Developers get seven filters and two actions, a REST API behind the settings screen, and eight WordPress Abilities API tools.

Priced By Gravity Forms, Confirmed By WooCommerce

The breakdown on the product page uses Gravity Forms’ own arithmetic, so options, quantities, calculated products and negative prices behave exactly as they do in a Gravity Forms order summary. The store then confirms the figure, which is how tax display, currency switchers and pricing plugins are honoured without a second implementation of any of them. Cart, order and entry all read the same number.

The Order Is The Product

For a configured product, the order item is the manufacturing instruction. It should say what the customer chose and nothing else. Hidden fields, administrative fields, section breaks and the running total are left out by default; what remains is labelled the way the form labels it, priced choices show what they added, and uploaded files open from the order screen. When that is still too much or too little, pick the fields yourself or write one line with merge tags.

How It Works

1. Build The Form In Gravity Forms

Use the form editor you already know. Add Product, Option and Quantity fields wherever a choice should change the price, and any other field for what the customer needs to tell you. Conditional logic, notifications and feeds are configured there too.

2. Attach It To A Product

Open the product, choose the form on its Gravity Forms tab, and set any behaviour this product should handle differently from the store default. The tab links straight back to the form in Gravity Forms.

3. Sell

The form appears above the add-to-cart button with a live breakdown. WooCommerce’s own button adds the configured item, and the choices follow it through the cart, the checkout, the order, the emails and My Account.

4. Fulfil, From Either Side

The WooCommerce order lists the answers and links to the entry; the Gravity Forms entry carries the order number and the amount paid, and your feeds, exports and notifications run from it as they always have.

How Does It Compare To Other Gravity Forms Extensions For WooCommerce?

Two extensions on the Marketplace connect Gravity Forms to products. The established one, Gravity Forms Product Add-ons by Element Stark, has done so for over a decade; Gravity Forms Configurator by WPExperts is the other, and we make no claims about it beyond its listing since we could not examine it. The difference with the incumbent is not whether a form can price a product, both do that; it is how far the Gravity Forms side is taken: what the entry records, when notifications fire, and what reaches the order, what the entry records, and what the store can do with a form field beyond the price.

Gravity Forms Product Options Gravity Forms Product Add-ons
by Element Stark
Fields shown in cart and order Visible fields by default; every field, a chosen list, or a merge-tag template on request All fields, hidden ones included, per its published feature comparison
Weight and dimensions from a form field Yes, mapped per product No weight or dimension mapping in its settings
Quantity from a form field Cart quantity, or stock reduction only Cart quantity, or stock reduction only
Customer image as cart thumbnail Yes No
Entry payment amount Full line total paid The part of the price the form added, per its published feature comparison
Notifications on a failed payment Never; sent once at chosen statuses Sent when enabled; suppressing them on failed orders is an open feature request
Shortcode to place the form elsewhere Yes No
Reset the form after adding Yes No
Cart editing and reorder Yes Yes
Bookings, Bulk Variations, Nested Forms, Quick View Pro Not yet Yes
Tools for AI assistants Eight WordPress Abilities API tools No

Who Is It For?

Stores Already Running On Gravity Forms

Your forms, notifications, feeds and exports are set up and trusted. This puts them on your products without a second form builder, and every sale lands in the entries your add-ons already read.

Personalised And Made-To-Order Stores

Engraving, printing, embroidery, custom framing: the form asks exactly what production needs, and the order item becomes the instruction.

Made-To-Measure Products

Blinds, boards, fabric, glass: measurements entered in the form rate the shipping and set the quantity, with stock kept by the metre.

Agencies Replacing A Custom Build

Gravity Forms’ public API underneath, store defaults with per-product overrides, a REST API and tools for assistants on top.

What You Get

  • One year of updates and support
  • Any Gravity Form on any product, priced by its own pricing fields, with live totals
  • Cart and order summaries, cart editing and reorder
  • Quantity, weight, dimension and image mapping from form fields
  • One Gravity Forms entry per ordered item, with payment status following the order and notifications sent at the statuses you choose
  • Store defaults with per-product overrides, a shortcode and structured data as a range
  • Seven filters, two actions, a REST API and eight WordPress Abilities API tools
  • Compatible with the Cart and Checkout blocks, HPOS, block themes and multisite

Frequently asked questions

Do I need Gravity Forms?

Yes, with any licence tier. The plugin renders, validates and stores forms through Gravity Forms' own API, which is what keeps conditional logic, multi-page forms, uploads and every field type behaving exactly as they do in a standalone form.

How is the price calculated?

From Gravity Forms' own pricing fields: Product, Option, Quantity and Shipping. The browser shows a breakdown of base price, options and total that moves as the customer chooses, and the store then confirms the exact figure so tax display, currency switchers and pricing plugins are honoured. A negative option price takes money off, which is how a discount is expressed in a form.

Can I offer a percentage discount, or a price calculated from other fields?

Yes, with Gravity Forms' own Calculation product field: its formula can reference any other field, so a 10% discount, a price per square metre or a tiered price is a formula in the form editor rather than a setting in the plugin. The result is added to the product price like any other pricing field, and the store confirms the total.

Why does the form's own Total field disappear on the product page?

Because it would only ever show what the options add, next to a breakdown whose total includes the product itself. When the price breakdown is on, the plugin hides the form's Total field; turn the breakdown off and the field is shown as Gravity Forms renders it.

What does the customer see in the cart and on the order?

Their answers, not the form's plumbing. By default every field they could see and filled in appears, while hidden fields, admin-only fields, layout fields and the total stay out. Priced choices read as "Ribbon +$2.00" and uploads show by name. You can widen the list, narrow it to chosen fields, or replace it with a template using merge tags.

Can a form field decide the shipping weight or size?

Yes. Map a Number field to weight, length, width or height and WooCommerce rates the shipping on the configured item rather than the product's defaults. This is the difference for made-to-measure products, and it is the most requested feature in this category.

Can the shipping weight be calculated from what the customer enters?

Yes. Add a Number field with a calculation to the form, for example width × height × thickness × a density figure, and map that field to the weight. The customer never sees a weight, only their measurements; WooCommerce rates the parcel on the calculated figure. Dimensions work the same way, each from its own field or calculation.

Can a form field set the quantity?

Yes, in two ways. It can set the cart line quantity, or leave the line quantity as entered and reduce stock by the field's value per unit, for products sold by the piece but stocked by the metre or the sheet.

Can a customer change their choices from the cart?

Yes. An "Edit your choices" link under the item name on the cart page reopens the product with their answers filled in, priced options included. Saving replaces the original line, or adds a second one if you prefer.

What happens to Gravity Forms entries?

Each ordered item gets one entry, created when the order is placed and never duplicated by a later status change. It carries the order number, the order item, the product, the base price and the full line total paid, and its payment status follows the order: Paid, Pending, Failed, Cancelled or Refunded. Entries can also be created when the item is added to the cart, for stores whose Gravity Forms add-ons need to react earlier.

Will the form's notifications go out on a failed payment?

No. Notifications are sent once per item and only when the order reaches a status you choose, Processing and Completed by default. A declined card sends nothing.

Can I set behaviour per product?

Yes. Every setting has a store-wide default, and any product can override any of them from its Gravity Forms tab. Each setting is a single selector that reads "Store default (…)" until you pick a value for the product, so nothing drifts silently.

Does it work with variable products?

Yes. The form lives on the parent, the base price follows the selected variation, and the form total is added to it.

Does it work with multi-page forms?

Yes. Each page is validated as the customer moves forward and the item is added only when the last page is submitted and valid. Each page change is a page load, as with any non-AJAX Gravity Form; AJAX page changes are on the roadmap.

Does it work with the Cart and Checkout blocks, and with HPOS?

Yes. Orders placed through the Checkout block get their item details and entries like any other, and the plugin declares compatibility with High-Performance Order Storage. The one difference is that the Cart block shows item details as plain text, so the edit link appears on the classic cart page only.

Does it work with WooCommerce Subscriptions?

Yes. The parent order and every renewal order get their own entries with their own payment record.

Can I put a configurable product on a landing page?

Yes. `[gfpo_product id="123"]` prints the product's add-to-cart form, options included, wherever you use it.

What about search engines and the price?

A configurable product has no single price. You can publish a price range in the product's structured data instead, so search engines stop quoting the base price as the price.

What if I edit the form after customers added the product to their cart?

Items carry a fingerprint of the form they were configured with. If the fields changed since, checkout asks the customer to remove and re-add the item rather than placing an order whose choices no longer match the form.

Can I extend it?

Yes. Filters cover the form attached to a product, its effective configuration, the amount the form adds, the base price, the summary lines, the output hook and the payment status written to entries; actions fire when an entry is created and when defaults are saved. A REST API backs the settings screen, and eight tools registered with the WordPress Abilities API let an MCP-connected assistant inspect and manage the configuration under the same permissions.

What happens if I deactivate the plugin?

Nothing is deleted. Products keep their form and overrides, orders keep their item details, and entries stay in Gravity Forms.

Use of your personal data
We and our partners process your personal data (such as browsing data, IP Addresses, cookie information, and other unique identifiers) based on your consent and/or our legitimate interest to optimize our website, marketing activities, and your user experience.