{"id":403373,"date":"2026-11-09T17:11:02","date_gmt":"2026-11-09T17:11:02","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/mammoth-forms\/"},"modified":"2026-11-09T17:10:27","modified_gmt":"2026-11-09T17:10:27","slug":"mammoth-forms","status":"publish","type":"plugin","link":"https:\/\/wordpress.org\/plugins\/mammoth-forms\/","author":17359158,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"1.0.0","stable_tag":"1.0.0","tested":"7.1.4","requires":"6.2","requires_php":"7.4","requires_plugins":null,"header_name":"Mammoth Forms","header_author":"Perforks","header_description":"Drag & drop form builder with calculated fields. Build quote calculators, price estimators and cost forms \u2014 no code.","assets_banners_color":"7e716b","last_updated":"2026-11-09 17:10:27","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"https:\/\/mammoth.perforks.com","header_author_uri":"https:\/\/perforks.com","rating":0,"author_block_rating":0,"active_installs":0,"downloads":93,"num_ratings":0,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"1.0.0":{"tag":"1.0.0","author":"jbosnakis","date":"2026-11-09 17:10:27","revision":3792923}},"upgrade_notice":[],"ratings":[],"assets_icons":{"icon-128x128.png":{"filename":"icon-128x128.png","revision":3792923,"resolution":"128x128","location":"assets","locale":"","width":128,"height":128},"icon-256x256.png":{"filename":"icon-256x256.png","revision":3792923,"resolution":"256x256","location":"assets","locale":"","width":256,"height":256},"icon.svg":{"filename":"icon.svg","revision":3792923,"resolution":false,"location":"assets","locale":false}},"assets_banners":{"banner-1544x500.png":{"filename":"banner-1544x500.png","revision":3792923,"resolution":"1544x500","location":"assets","locale":"","width":1544,"height":500},"banner-772x250.png":{"filename":"banner-772x250.png","revision":3792923,"resolution":"772x250","location":"assets","locale":"","width":772,"height":250}},"assets_blueprints":{},"all_blocks":{"mammoth\/form":{"$schema":"https:\/\/schemas.wp.org\/trunk\/block.json","apiVersion":3,"name":"mammoth\/form","title":"Mammoth Form","category":"widgets","description":"Show a Mammoth Forms calculator or form.","keywords":["form","calculator","quote","price","mammoth"],"textdomain":"mammoth-forms","attributes":{"formId":{"type":"number","default":0},"showTitle":{"type":"boolean","default":false}},"supports":{"html":false,"align":["wide","full"],"spacing":{"margin":true,"padding":true}},"example":{"attributes":{"formId":-1}},"editorScript":"mammoth-block-editor","style":"mammoth-form"}},"tagged_versions":["1.0.0"],"block_files":[],"assets_screenshots":{"screenshot-1.png":{"filename":"screenshot-1.png","revision":3792923,"resolution":"1","location":"assets","locale":"","width":776,"height":835},"screenshot-2.png":{"filename":"screenshot-2.png","revision":3792923,"resolution":"2","location":"assets","locale":"","width":1280,"height":860},"screenshot-3.png":{"filename":"screenshot-3.png","revision":3792923,"resolution":"3","location":"assets","locale":"","width":1280,"height":860},"screenshot-4.png":{"filename":"screenshot-4.png","revision":3792923,"resolution":"4","location":"assets","locale":"","width":1280,"height":860},"screenshot-5.png":{"filename":"screenshot-5.png","revision":3792923,"resolution":"5","location":"assets","locale":"","width":1280,"height":860},"screenshot-6.png":{"filename":"screenshot-6.png","revision":3792923,"resolution":"6","location":"assets","locale":"","width":1280,"height":860},"screenshot-7.png":{"filename":"screenshot-7.png","revision":3792923,"resolution":"7","location":"assets","locale":"","width":701,"height":1465}},"screenshots":{"1":"A renovation quote on the site: the totals update as the visitor answers.","2":"The builder: fields on the canvas, a formula with click-to-insert keys and a test result.","3":"Add New: ten ready-made calculators to start from.","4":"A form's settings: the look, with your own colour, corners, size and width.","5":"Entries with search, unread and starred filters, stars and bulk actions.","6":"Spam protection: Cloudflare Turnstile, hCaptcha or Google reCAPTCHA v3, a limit per visitor, and Akismet.","7":"New fields and checks: date and time, number range, country, address, a format of your own, and \"Save and continue later\"."}},"plugin_section":[],"plugin_tags":[157137,716,2253,15432,56778],"plugin_category":[59],"plugin_contributors":[286953],"plugin_business_model":[],"class_list":["post-403373","plugin","type-plugin","status-publish","hentry","plugin_tags-calculated-fields","plugin_tags-calculator","plugin_tags-form-builder","plugin_tags-price-calculator","plugin_tags-quote-form","plugin_category-utilities-and-tools","plugin_contributors-jbosnakis","plugin_committers-jbosnakis"],"banners":{"banner":"https:\/\/ps.w.org\/mammoth-forms\/assets\/banner-772x250.png?rev=3792923","banner_2x":"https:\/\/ps.w.org\/mammoth-forms\/assets\/banner-1544x500.png?rev=3792923","banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":"https:\/\/ps.w.org\/mammoth-forms\/assets\/icon.svg?rev=3792923","icon":"https:\/\/ps.w.org\/mammoth-forms\/assets\/icon.svg?rev=3792923","icon_2x":false,"generated":false},"screenshots":[{"src":"https:\/\/ps.w.org\/mammoth-forms\/assets\/screenshot-1.png?rev=3792923","caption":"A renovation quote on the site: the totals update as the visitor answers."},{"src":"https:\/\/ps.w.org\/mammoth-forms\/assets\/screenshot-2.png?rev=3792923","caption":"The builder: fields on the canvas, a formula with click-to-insert keys and a test result."},{"src":"https:\/\/ps.w.org\/mammoth-forms\/assets\/screenshot-3.png?rev=3792923","caption":"Add New: ten ready-made calculators to start from."},{"src":"https:\/\/ps.w.org\/mammoth-forms\/assets\/screenshot-4.png?rev=3792923","caption":"A form's settings: the look, with your own colour, corners, size and width."},{"src":"https:\/\/ps.w.org\/mammoth-forms\/assets\/screenshot-5.png?rev=3792923","caption":"Entries with search, unread and starred filters, stars and bulk actions."},{"src":"https:\/\/ps.w.org\/mammoth-forms\/assets\/screenshot-6.png?rev=3792923","caption":"Spam protection: Cloudflare Turnstile, hCaptcha or Google reCAPTCHA v3, a limit per visitor, and Akismet."},{"src":"https:\/\/ps.w.org\/mammoth-forms\/assets\/screenshot-7.png?rev=3792923","caption":"New fields and checks: date and time, number range, country, address, a format of your own, and \"Save and continue later\"."}],"raw_content":"<!--section=description-->\n<p>Mammoth Forms is a form builder for forms that do maths. Drop fields on a canvas,\nwrite a formula such as <code>{quantity} * {unit_price} + 24%<\/code>, and the result updates\nas the visitor types.<\/p>\n\n<p><strong>What the free plugin does<\/strong><\/p>\n\n<ul>\n<li>Drag &amp; drop builder: palette, canvas with column widths, live settings panel<\/li>\n<li>10 ready-made calculators to start from: renovation quote, cleaning service, website estimate, event &amp; catering, equipment rental, shipping cost, loan repayment, price &amp; discount, BMI and a contact form<\/li>\n<li>Images anywhere in a form, from the media library \u2014 and with conditional logic they change with the answers<\/li>\n<li>Tables of your own text, live values and formulas: a price breakdown that updates as the visitor types (<code>{area}<\/code>, <code>{room:label}<\/code>, <code>={qty} * {price}<\/code>)<\/li>\n<li>A \"Mammoth Form\" block for the block editor, with a live preview, a \"Mammoth Form\" widget for Elementor \u2014 or use the shortcode anywhere<\/li>\n<li>23 field types, including slider, dropdown, radio, checkbox group, date, date and time, number range, country, address, image, table and GDPR consent<\/li>\n<li>Checks of your own on any field: an allowed format (a regular expression, such as two letters and four digits) and a \"must be true\" rule that reads every answer and result \u2014 <code>{end} &gt; {start}<\/code>, <code>{guests} &lt;= 40<\/code>, <code>{total} &gt;= 50<\/code> \u2014 each with your own message, in the browser and again on the server<\/li>\n<li>Save and continue later: a second button keeps the visitor's answers and gives them a private link (also by email) to finish the form later, on any device<\/li>\n<li>Choices as a list or as buttons<\/li>\n<li>Form styles (Clean, Soft &amp; rounded) with your own colour, corners, size and width \u2014 no CSS needed<\/li>\n<li>Links that fill in the form: ?mf_room=Kitchen&amp;mf_area=20<\/li>\n<li>Calculated fields with <code>+ - * \/ ^<\/code>, parentheses and percentages<\/li>\n<li>Percentages the way a calculator does them: <code>{total} + 24%<\/code> adds 24% VAT, <code>{price} - 10%<\/code> takes 10% off<\/li>\n<li>Custom numbers anywhere in a formula: <code>{hours} * 45 + 30<\/code><\/li>\n<li>Numbers written the way your visitors read them: 10,000.00, 10.000,00, 10 000,00, 10'000.00, without a thousands separator, or with separators of your own \u2014 per form, with a site-wide default that follows your site's language<\/li>\n<li>Conditional logic \u2014 show or hide any field based on the answers above it<\/li>\n<li>Live preview inside the builder, and a test result under every formula<\/li>\n<li>Entries with search, unread \/ read, stars, notes, editing and bulk actions; export to CSV or JSON with the columns and dates you choose, import from CSV, JSON or NDJSON with column matching \u2014 in batches with a progress bar, so tens of thousands of rows import without timeouts<\/li>\n<li>After sending: a message (text or HTML with the visitor's answers), another page, or any address \u2014 and the form can hide itself<\/li>\n<li>A \"we received your message\" email to the visitor, limited per address so the form cannot be used to send mail to strangers<\/li>\n<li>Admin notification you write yourself: recipients, Bcc, sender, Reply-To, HTML or plain text, {all_fields} or single fields<\/li>\n<li>SMTP: send form emails (or every email of the site) through Gmail, Microsoft 365, your host or any mail service, with a test button; the password is stored encrypted<\/li>\n<li>Emails in the background: the visitor sees the confirmation at once and the emails follow a few seconds later \u2014 for the whole site or per form<\/li>\n<li>Spam protection: honeypot, Cloudflare Turnstile, hCaptcha or Google reCAPTCHA v3, Akismet (when the site uses it), and a limit of submissions per visitor per hour; logged-in-only forms<\/li>\n<li>Export forms to a JSON file and import them on this or another site<\/li>\n<li>Every value recalculated on the server, so the stored total cannot be forged<\/li>\n<\/ul>\n\n<p><strong>Mammoth Forms Pro<\/strong><\/p>\n\n<ul>\n<li>Formula functions: IF, ROUND, CEIL, FLOOR, MIN, MAX, SUM, AVG, ABS, MOD, POW, CLAMP<\/li>\n<li>Price tables \u2014 tiered pricing and rate lookups with <code>LOOKUP()<\/code> and <code>TIER()<\/code><\/li>\n<li>Chained calculations: one calculated field feeding another, resolved in order<\/li>\n<li>Forms in steps, with Next \/ Back and a progress bar<\/li>\n<li>Repeater: rows the visitor adds as needed (rooms, order lines), with a formula per row and column totals<\/li>\n<li>Quote page: each submission gets a private page where the customer accepts the quote with their name and signature, or declines it<\/li>\n<li>More fields: time, stepper (\u2212 \/ +), star rating and file upload; choices as picture cards<\/li>\n<li>Bold and Dark form styles, and the total kept in sight at the bottom of the screen on phones<\/li>\n<li>Calculator insights: views, conversion and where visitors stop, popular choices, a [mammoth_stat] shortcode and live statistics in tables<\/li>\n<li>Result emails to the visitor, with your own template<\/li>\n<li>PDF quote attached to the email<\/li>\n<li>Payments: charge the calculated amount with Stripe or PayPal<\/li>\n<li>WooCommerce: send the calculated total to the cart as a custom-priced product<\/li>\n<\/ul>\n\n<h3>External services<\/h3>\n\n<p>Mammoth Forms works without any outside service. These optional services can be switched on by the site owner:<\/p>\n\n<ul>\n<li><strong>Cloudflare Turnstile<\/strong> \u2014 when chosen under Mammoth Forms &gt; Settings &gt; Spam protection, pages with a protected form load Cloudflare's script from challenges.cloudflare.com, and each submission's check token, together with the visitor's IP address, is sent to Cloudflare to confirm the visitor is not a bot. <a href=\"https:\/\/www.cloudflare.com\/website-terms\/\">Terms<\/a>, <a href=\"https:\/\/www.cloudflare.com\/privacypolicy\/\">Privacy policy<\/a>.<\/li>\n<li><strong>hCaptcha<\/strong> (Intuition Machines) \u2014 when chosen instead, pages with a protected form load hCaptcha's script from js.hcaptcha.com, and each submission's check token, the site key and the visitor's IP address are sent to api.hcaptcha.com to confirm the visitor is not a bot. <a href=\"https:\/\/www.hcaptcha.com\/terms\">Terms<\/a>, <a href=\"https:\/\/www.hcaptcha.com\/privacy\">Privacy policy<\/a>.<\/li>\n<li><strong>Akismet<\/strong> (Automattic) \u2014 only when the Akismet Anti-spam plugin is active and connected, and \"Check every submission with Akismet\" is ticked under Settings &gt; Spam protection. Each valid submission's first name and email answers, its text answers, the visitor's IP address, browser and the page address are then sent through the Akismet plugin to Akismet to check for spam. <a href=\"https:\/\/akismet.com\/tos\/\">Terms<\/a>, <a href=\"https:\/\/automattic.com\/privacy\/\">Privacy policy<\/a>.<\/li>\n<li><strong>Google reCAPTCHA v3<\/strong> \u2014 when chosen instead, pages with a protected form load Google's script from www.google.com, which assesses the visit, and each submission's token and the visitor's IP address are sent to Google for a score. <a href=\"https:\/\/policies.google.com\/terms\">Terms<\/a>, <a href=\"https:\/\/policies.google.com\/privacy\">Privacy policy<\/a>.<\/li>\n<\/ul>\n\n<p>Email is sent through your own server, or \u2014 only if you enter one under Settings &gt; Email (SMTP) \u2014 through that SMTP server (for example Gmail, Microsoft 365 or your host). The plugin then connects to the address you entered and sends it the messages (recipients, subject, content) and the user name and password you gave it; nothing goes anywhere else. That provider's own terms and privacy policy apply.<\/p>\n\n<!--section=installation-->\n<ol>\n<li>Upload the <code>mammoth-forms<\/code> folder to <code>\/wp-content\/plugins\/<\/code>.<\/li>\n<li>Activate the plugin.<\/li>\n<li>Go to Mammoth Forms \u2192 Add New and pick a template, or start blank.<\/li>\n<li>Add the \"Mammoth Form\" block to a page and choose your form \u2014 or paste the shortcode, for example <code>[mammoth id=\"1\"]<\/code>.<\/li>\n<\/ol>\n\n<!--section=faq-->\n<dl>\n<dt id=\"emails%20do%20not%20arrive%20or%20land%20in%20spam\"><h3>Emails do not arrive or land in spam<\/h3><\/dt>\n<dd><p>Go to Mammoth Forms &gt; Settings &gt; Email (SMTP), enter your mail provider's SMTP details and send a test email. Use a From address of your own domain.<\/p><\/dd>\n<dt id=\"can%20i%20import%20entries%3F\"><h3>Can I import entries?<\/h3><\/dt>\n<dd><p>Yes: Entries &gt; choose a form &gt; Import. CSV, JSON (a list of objects, or a Mammoth Forms JSON export) and NDJSON \/ JSON Lines are accepted. Choices can be written as their label or their value; missing columns take the form's default values. Rows are imported in batches, so very large files work too \u2014 NDJSON is the lightest format for those.<\/p><\/dd>\n<dt id=\"how%20do%20i%20add%20vat%3F\"><h3>How do I add VAT?<\/h3><\/dt>\n<dd><p>Put <code>+ 24%<\/code> at the end of your formula: <code>{quantity} * {price} + 24%<\/code>. Percent\nfollows calculator rules, so that adds 24% of the running total.<\/p><\/dd>\n<dt id=\"how%20do%20i%20reference%20another%20field%3F\"><h3>How do I reference another field?<\/h3><\/dt>\n<dd><p>Use its key in braces: <code>{unit_price}<\/code>. The builder lists every available key\nunder the formula box \u2014 click one to insert it.<\/p><\/dd>\n<dt id=\"can%20a%20calculated%20field%20use%20another%20calculated%20field%3F\"><h3>Can a calculated field use another calculated field?<\/h3><\/dt>\n<dd><p>Formulas read the fields visitors fill in, so a reference to another calculated field counts as 0. To build on a result, repeat its formula inside the new one, for example <code>({quantity} * {price}) + 24%<\/code>.<\/p><\/dd>\n<dt id=\"is%20the%20total%20safe%20from%20tampering%3F\"><h3>Is the total safe from tampering?<\/h3><\/dt>\n<dd><p>Yes. The browser calculation is for display only; every formula is evaluated\nagain on the server before anything is stored or emailed.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>1.0.0<\/h4>\n\n<ul>\n<li>First release.<\/li>\n<\/ul>","raw_excerpt":"Build forms whose fields calculate from other fields. Quotes, price estimators and cost calculators, with a drag &amp; drop builder.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/403373","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=403373"}],"author":[{"embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/jbosnakis"}],"wp:attachment":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=403373"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=403373"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=403373"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=403373"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=403373"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=403373"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}