Install and update Fluent Studio
Marketplace buyer installation
After an approved Marketplace release, install the theme from its actual Marketplace listing into the intended HubSpot account. Confirm the installed theme name before creating pages. A developer ZIP is not the normal Marketplace purchase or installation path.
The current HubSpot Marketplace installation guide lists Content Hub Starter, Professional and Enterprise, and eligible Marketing Hub plans, with Template Marketplace access permission required. Website, blog and landing-page allowances depend on the account. Site search, HubSpot CTAs, native video and other advanced features have plan dependencies. The theme does not unlock HubSpot features that the account does not include. Check the live listing and your account's actual requirements before purchase.
Create a draft page from the appropriate Fluent Studio template. Set the page title, URL, description and social image. Edit the header and footer global content, choose a native navigation menu, set the brand options and replace demo content. Select real HubSpot forms before testing enquiries. Review desktop, tablet and mobile layouts before publishing.
Direct source-package installation
A direct purchase supplies developer source, not a Marketplace install entitlement. Extract the downloaded archive first. The theme folder contains theme.json, fields.json, css, js, modules, sections, templates and images. Upload that complete folder to a new destination in the intended licensed HubSpot account using the official CLI. A generic one-click ZIP importer is not part of the documented workflow.
HubSpot documents custom-coded page/blog/system template creation across its plans with Design tools permission. Its current Marketplace purchase/install guide has its own paid-plan requirements. Neither proves that every included native feature is available on every free account. Buyers must check their account's publishing limits, domain options and required features before purchase. A Professional subscription is not a blanket requirement for uploading theme source.
Install and authenticate the current official HubSpot CLI using your own account. Keep the access key private. From the directory containing the extracted Fluent-Studio folder, a developer can upload to a new isolated destination:
hs cms upload Fluent-Studio fluent-studio --account=YOUR_ACCOUNT --cms-publish-mode=publishThis publishes supporting theme files inside the selected account so the page editor can use the custom modules. It does not publish a website page. Check the upload result for errors, select Fluent Studio in the page-creation screen, create a draft and follow the setup steps above. Never use an existing customer's theme destination, --clean, or a live watch process for a first installation. Contact support if you need help confirming the correct account and destination.
Developer preparation
Use Node.js 20 or later and the current official @hubspot/cli package. The current command namespace is hs cms. Run commands from full-theme/ unless a different directory is specified.
python3 tools/validate-theme.py native --report validation-local.json
hs cms lint nativeThe local integrity check is independent of HubSpot. It checks the source package and writes the actual module field guide. HubSpot's lint is a separate tool and may require an authenticated account. Never place credentials in this package.
Do not assume hs cms theme preview is offline or read-only. The official documentation describes local rendering without uploading, but the installed official CLI 8.16.0 help and public source include upload/watch behaviour, an account-config dependency and a remote destination. Its runner prepares uploadable files and upload callbacks for @hubspot/cms-dev-server. We therefore did not execute that command during the local review stage. Its HTTPS mode may also require permission to register a self-signed certificate. Confirm the exact CLI version and account effects before running it in a future authorised account stage. The browser review supplied here must be labelled as a local rendering facsimile unless genuine native rendering is separately evidenced.
Isolated account validation
Use a suitable development account and a new isolated destination for native validation. Confirm your own account identifier and authorisation before running the command. Do not target an existing customer theme. The command below saves draft files and does not create a public page:
hs cms upload native fluent-studio-review --account=YOUR_DEVELOPMENT_ACCOUNT --cms-publish-mode=draftDo not use --clean on an installed theme. It can reset global content. Avoid a watch process against live assets. Upload defaults can publish file changes, so always specify the mode intentionally.
HubSpot's Marketplace validator tests an account-hosted theme. It cannot validate an unuploaded local ZIP. When the release candidate is in the appropriate account state and the action is authorised, use:
hs cms theme marketplace-validate fluent-studio-review --account=YOUR_DEVELOPMENT_ACCOUNTRecord HubSpot's actual response, compile diagnostics and tested account features. Automated success does not guarantee Marketplace acceptance.
Safe updates
Keep a child theme or controlled customisation layer for code changes. Record the installed version and save copies of edited global content, template assignments and theme settings. Review release notes, test an update away from the live site, then check menus, forms, blog views and system pages. Do not overwrite a customer's content or promise that every code edit will survive an update automatically.
Official reference: current CMS CLI commands.