A complete step-by-step guide covering every method to upload, link, embed, and deliver PDF files on your GoHighLevel website or funnel — from the Media Library to iFrame embedding, download buttons, lead magnets, and more.
GoHighLevel (GHL) is an all-in-one sales and marketing automation platform built specifically for agencies and businesses. It combines a powerful CRM, email and SMS marketing, funnel and website building, appointment scheduling, and automation workflows — all under a single dashboard. For marketing agencies, it is one of the most comprehensive platforms available, replacing the need for half a dozen separate tools.
One of the most common and practical tasks GHL users encounter is adding PDF files to their websites or funnels. PDFs are indispensable in digital marketing — they serve as brochures, lead magnets, pricing guides, user manuals, case studies, eBooks, contracts, and resource downloads. Knowing how to correctly add, link, embed, and deliver PDF files within GoHighLevel is a foundational skill for anyone building marketing pages on the platform.
GoHighLevel supports PDF file uploads through its Media Library, with a maximum file size of 20MB per PDF. Once uploaded, you can link your PDF to buttons, text links, images, SVGs, and embed it directly on a page using a Custom Code / iFrame block. You can also use the dedicated Download File Action feature on buttons to trigger a direct file download — one of the most user-friendly PDF delivery methods on the platform.
Before uploading your PDF to GoHighLevel, take a few minutes to prepare the file properly. A well-prepared PDF loads faster, looks more professional, and causes fewer technical issues after upload.
GoHighLevel’s Media Library supports PDF files of up to 20MB. If your PDF exceeds this limit, you will need to compress it before uploading. Free tools like Smallpdf, ILovePDF, or Adobe Acrobat’s online compressor can reduce file size significantly without visible quality loss. Aim for the smallest file size that maintains acceptable visual quality — smaller PDFs load faster and create a better user experience.
PDFs designed for print are often formatted for A4 or US Letter paper sizes with small body text — layouts that are difficult to read on screens. If your PDF will be viewed online (rather than downloaded and printed), consider:
GoHighLevel allows you to rename files in the Media Library, but starting with a clean, professional filename saves confusion later. Use descriptive, hyphenated filenames rather than generic ones:
2025-marketing-pricing-guide.pdfacme-agency-capabilities-brochure.pdfdocument_final_v3_USE_THIS_ONE.pdfuntitled.pdfOpen the PDF yourself before uploading to confirm it displays correctly, contains no formatting errors, and shows the right content on the first page. This sounds obvious — but uploading a broken or incomplete PDF and discovering it only after it has been live on your website is an avoidable embarrassment.
The Media Library is the central file management hub in GoHighLevel. Uploading your PDF here first makes it accessible across your entire account — you can link it from multiple pages, funnels, emails, and automations without re-uploading.
Step 1: Log in to your GoHighLevel account and navigate to your sub-account dashboard.
Step 2: In the left-hand navigation menu, look for “Media Storage” or access it via Settings > Media Library depending on your GHL version. In most current versions, it is accessible from the main navigation.
Step 3: Once inside the Media Library, click the “Upload” button (usually in the top right corner of the interface).
Step 4: A file picker dialogue will open. Navigate to the location of your PDF file on your computer and select it. Alternatively, some versions of GHL support drag-and-drop — simply drag your PDF file from your computer’s file browser and drop it into the Media Library window.
Step 5: Wait for the upload to complete. Depending on your file size and internet connection, this may take a few seconds to a minute. A progress indicator will display during the upload.
Step 6: Once uploaded, your PDF will appear in the Media Library. Click on it to open its details panel.
Step 7: In the details panel, locate the file URL — a direct link to the PDF hosted on GoHighLevel’s servers. Copy this URL and save it somewhere accessible (e.g., a notes document). You will use this URL in the subsequent methods to link to or embed your PDF.
Pro Tip: Organise your Media Library using folders. If you manage multiple clients or websites within the same GHL account, create a folder structure (e.g.,
/client-name/pdfs/) to keep assets organised and easy to locate later.
The most common way to add a PDF to a GoHighLevel website or funnel page is to link it to a button. This creates a simple, familiar interaction: the visitor clicks the button, and the PDF opens in a new browser tab.
Step 1: From your GoHighLevel dashboard, navigate to Sites in the left-hand menu.
Step 2: Select Websites or Funnels depending on where your page lives, then click on the specific site or funnel you want to edit.
Step 3: Find the page where you want to add the PDF button and click Edit Page (or the pencil icon) to open the page builder.
Step 4: In the page builder, either locate an existing button element on the page, or add a new one by clicking “+ Add Element” and selecting Button from the element menu. Drag it into position on your page.
Step 5: Click on the button element to select it. The right-hand settings panel will display the button’s properties.
Step 6: In the settings panel, locate the Action or Link field. You will see options for the button’s click action — select “Open URL” or “URL” from the dropdown options.
Step 7: In the URL field, paste the direct link to your PDF that you copied from the Media Library in Method 1. Make sure the URL ends in .pdf to confirm you have the correct link.
Step 8: Below the URL field, look for a setting that controls how the link opens. Select “Open in New Tab” — this ensures that clicking the button opens the PDF in a new browser tab rather than navigating away from your website, keeping the visitor on your page.
Step 9: Update the button’s label text to something clear and action-oriented: “Download the Guide”, “View Our Brochure”, “Access the PDF”, or “Download Free Checklist” — whatever is most appropriate for your content.
Step 10: Click Save in the page builder, then use the Preview button to test the button. Click it and confirm the PDF opens correctly in a new tab.
GoHighLevel introduced a dedicated Download File Action feature for buttons, images, and SVG elements. This is different from Method 2 — instead of opening the PDF in a browser tab, it triggers a direct file download, prompting the visitor’s browser to save the file to their device. This is the best method when you specifically want visitors to download and keep the PDF rather than view it online.
Step 1: Open your GoHighLevel website or funnel in the page builder as described in Method 2.
Step 2: Select the Button, Image, or SVG element you want to use as the download trigger. (Buttons are the most common choice for this purpose.)
Step 3: In the right-hand settings panel, look for a toggle labelled “Download”. Toggle it ON. This activates the download file action for this element.
Step 4: Once the Download toggle is enabled, a “Link File” option will appear below it. Click “Link File” to open the Media Picker.
Step 5: In the Media Picker, browse to the PDF you uploaded to the Media Library. Click on it to select it. The file will now be linked to this element as a download trigger.
Step 6: (Optional but recommended) Look for a “File Name” or “Download Name” field in the settings panel. This allows you to customise what the downloaded file will be named on the visitor’s device. Instead of a generic filename like file_123.pdf, rename it to something professional and descriptive: 2025-pricing-guide.pdf or free-marketing-checklist.pdf. This small touch significantly improves the professional impression your content makes.
Step 7: Update your button label to reflect the download action: “Download Now”, “Get Your Free PDF”, “Download the Report”, etc.
Step 8: Click Save and use Preview to test. Click the button and confirm your browser prompts a file download rather than opening the PDF in a tab.
Important Note: Each button or element can only be linked to a single downloadable file using this feature. If you need to offer multiple downloads on one page, create separate buttons for each PDF.
If you want the PDF to display directly on your page — so visitors can read it without downloading or opening a new tab — you can embed it using a Custom Code block with an iFrame. This creates an inline document viewer experience directly within your webpage.
An iFrame (inline frame) is an HTML element that embeds external content within a webpage. When you embed a PDF via iFrame, a scrollable document viewer appears directly on your page, allowing visitors to read the full PDF without leaving your site. This is ideal for portfolios, capability statements, menus, brochures, and any PDF you want visitors to read on-screen.
Step 1: Obtain the direct URL of your PDF from the GoHighLevel Media Library (as described in Method 1). For a hosted PDF, the URL will look something like: https://storage.googleapis.com/[your-account]/[filename].pdf
Step 2: Open your GoHighLevel page in the page builder. Navigate to the section of the page where you want the embedded PDF viewer to appear.
Step 3: Click “+ Add Element” and search for or select “Custom Code” (also labelled “Custom HTML” in some GHL versions). Drag this element onto your page in the desired position.
Step 4: Click on the Custom Code element to open its code editor.
Step 5: Paste the following iFrame code into the editor, replacing YOUR_PDF_URL_HERE with the actual URL of your PDF from the Media Library:
<iframe
src="YOUR_PDF_URL_HERE"
width="100%"
height="800px"
style="border: none; border-radius: 6px;"
title="PDF Document Viewer">
</iframe>
Step 6: Adjust the height value to control how tall the PDF viewer appears on your page. Common values are 600px for a compact view, 800px for a standard view, and 1000px or more for a full-page document experience.
Step 7: Click Save and Preview the page to see how the embedded PDF viewer looks. Scroll within the iFrame to confirm the document displays fully and the scrolling behaviour works correctly.
If your PDF is hosted on Google Drive rather than the GHL Media Library, you can use Google’s built-in PDF viewer by following the steps in Method 7. This is particularly useful for PDFs larger than GHL’s 20MB limit.
Beyond buttons, you can attach a PDF link to any text or image element on your page. This is useful for creating inline document references within your content — for example, linking the phrase “download our full pricing guide” within a paragraph, or making a brochure thumbnail image clickable.
Step 1: Open your page in the GHL page builder and click on the text element containing the words you want to hyperlink to your PDF.
Step 2: Highlight the specific words you want to turn into a link (e.g., “download our capability statement”).
Step 3: In the text formatting toolbar that appears, click the Link icon (usually depicted as a chain link or hyperlink symbol).
Step 4: In the link URL field, paste the direct URL of your PDF from the Media Library.
Step 5: Set the link to open in a new tab to avoid navigating visitors away from your page.
Step 6: Click Apply or Save to set the link. The linked text will typically appear underlined or in your theme’s link colour.
Step 1: Click on the image element in the page builder to select it.
Step 2: In the right-hand settings panel, look for an “Action” or “Link” setting.
Step 3: Set the action to “Open URL” and paste your PDF link into the URL field.
Step 4: Enable “Open in New Tab” to ensure clicking the image opens the PDF without navigating away from your page.
Step 5: Save and preview. Click the image to confirm the PDF opens correctly.
Design Tip: If you are using an image to link to a PDF, overlay a small “PDF” badge, download icon, or call-to-action label on the image using GHL’s design tools. This makes it immediately clear to visitors that clicking the image will open or download a document.
One of the most powerful marketing applications for PDF files in GoHighLevel is as a lead magnet — a free valuable resource that visitors receive in exchange for submitting their email address. GHL’s built-in form and automation tools make this workflow seamless to set up and completely automatic once configured.
Step 1 — Upload your PDF to the Media Library and copy the direct download URL as described in Method 1.
Step 2 — Create your opt-in page in the GHL website or funnel builder. This page should clearly communicate the value of the PDF, include compelling copy about what the visitor will learn or receive, and present the opt-in form prominently.
Step 3 — Add a Form element to your opt-in page. In the page builder, click “+ Add Element” and select Form. Either use an existing form from your account or create a new one by clicking through to the Form Builder.
Step 4 — Configure the form in the Form Builder with the fields you need — typically First Name and Email Address are sufficient for a lead magnet opt-in. Keep the form short to maximise conversions.
Step 5 — Set the form’s submission action. In the Form Builder settings, configure what happens after submission. You can either redirect the visitor to a thank-you page (which can contain the PDF download link directly) or trigger an automation.
Step 6 — Create an automation workflow in GoHighLevel’s Automation section:
Step 7 — Test the entire workflow by submitting the form with a real email address and confirming that: (a) the thank-you page or redirect works correctly, (b) the delivery email arrives promptly, and (c) the PDF link in the email opens or downloads the correct file.
Pro Tip: Always gate your PDF behind a form for lead generation purposes — but if you want to use a PDF purely for credibility (e.g., a published case study or press coverage), an ungated direct link is often more appropriate. Match your delivery method to your marketing objective.
If your PDF exceeds GoHighLevel’s 20MB Media Library limit, or if you want to use a PDF that is frequently updated (so you only need to update it in one place), hosting it on Google Drive and linking or embedding it from there is an excellent alternative.
Step 1: Open Google Drive and upload your PDF file. Once uploaded, right-click the file and select “Share”.
Step 2: In the sharing settings, change access from “Restricted” to “Anyone with the link” and set the permission level to “Viewer”. Click “Copy link” to copy the shareable link, then click Done.
Step 3: The shareable link from Google Drive looks like this: https://drive.google.com/file/d/FILE_ID/view?usp=sharing
You can use this link directly in a button or text link on your GHL page (Methods 2, 4, or 5), and it will open the PDF in Google Drive’s built-in viewer.
To embed the PDF directly on your page using Google’s viewer, modify the URL format slightly:
Step 1: Take your Google Drive sharing link and identify the FILE_ID portion — the long alphanumeric string between /d/ and /view in the URL.
Step 2: Construct a Google Docs viewer embed URL in this format: https://drive.google.com/file/d/FILE_ID/preview
Step 3: Add this URL to a Custom Code / iFrame block in the GHL page builder using this code:
<iframe
src="https://drive.google.com/file/d/YOUR_FILE_ID/preview"
width="100%"
height="800px"
style="border: none;"
allow="autoplay"
title="Document Viewer">
</iframe>
Step 4: Replace YOUR_FILE_ID with the actual ID from your Google Drive file URL.
Step 5: Save and preview the page to confirm the Google Drive PDF viewer displays correctly within the iFrame.
Important: For the Google Drive embed to work, the file must be shared with “Anyone with the link” access. Files set to “Restricted” will display an error or permission prompt in the iFrame rather than the document itself.
Even with correct implementation, you may encounter issues with PDF files on your GHL website. Here are the most common problems and their solutions.
Cause: The PDF was deleted from the Media Library, or the URL was copied incorrectly.
Solution: Return to the Media Library, locate the PDF, and re-copy the direct URL. If the file was accidentally deleted, re-upload it. Update all links and buttons on your pages with the corrected URL.
Cause: The Media Library file URL may have changed, or there is a file permission issue.
Solution: Verify the URL is correct and accessible by pasting it directly into a browser address bar. If using Google Drive, confirm the sharing settings are set to “Anyone with the link” rather than restricted access.
Cause: The source URL may be incorrect, the PDF may be hosted behind a login or restriction, or the iFrame height may be set too small.
Solution:
src value in your iFrame code exactly matches the PDF URL with no extra spaces or charactersheight value in the iFrame code/preview URL format rather than the standard sharing linkCause: The button is configured with the standard “Open URL” action rather than the dedicated Download File Action.
Solution: Follow Method 3 — use the Download toggle in the button settings panel and link the file through the Media Picker. This forces a download rather than opening the file in a browser tab.
Cause: The file exceeds the 20MB limit, or the file is corrupted.
Solution:
Cause: The iFrame width or height values do not match the page layout, or the PDF’s original page dimensions are unusual.
Solution: Adjust the width (set to 100% for full-width responsiveness) and height values in the iFrame code. For very wide PDFs, adding overflow: auto; -webkit-overflow-scrolling: touch; as inline styles on a wrapping div element can improve the scrolling experience on mobile devices.
Cause: The automation workflow is misconfigured, the email is going to spam, or the form trigger is not correctly linked.
Solution:
Following these best practices ensures your PDF integration is professional, effective, and maximally useful for both your visitors and your marketing objectives.
Even though GoHighLevel supports PDFs up to 20MB, aim to keep your files as small as possible — ideally under 5MB. Large files take longer to load and download, increasing the likelihood that visitors will abandon the process before accessing your content. Compress images within the PDF, use web-optimised export settings, and remove any unnecessary embedded fonts or metadata.
The button or link text you use for your PDF matters enormously for conversion. Avoid generic labels like “Click Here” or “PDF.” Instead, use specific, value-focused language that tells visitors exactly what they will get:
A significant proportion of your website visitors will be on mobile devices. Before publishing any page with a PDF link or embedded viewer, preview it on a mobile screen. iFrame-embedded PDFs in particular can be awkward to navigate on small screens — if the mobile experience is poor, consider using a download button instead of inline embedding for mobile visitors.
If you have invested time and expertise in creating a genuinely valuable PDF — a comprehensive guide, a detailed research report, a template library — gate it behind an opt-in form rather than making it freely available. This converts document traffic into qualified leads that you can follow up with through GoHighLevel’s automation and email marketing tools.
Use the Download File Action’s custom filename feature (Method 3) to ensure visitors receive a professionally named file. macroter-seo-guide-2025.pdf makes a far better impression than file_847392.pdf and is more likely to be saved, retained, and shared by the recipient.
Use GoHighLevel’s built-in analytics and, where applicable, UTM parameters on your PDF links to track how many visitors are clicking through to your PDFs. High click rates indicate that your PDF offers are resonating with your audience; low click rates suggest that the call-to-action copy, button placement, or the perceived value of the offer may need improvement.
Out-of-date PDFs with incorrect pricing, obsolete information, or old branding erode trust. Schedule periodic reviews of all PDFs linked from your website — quarterly for pricing and services documents, annually for evergreen guides and resources. When you update a PDF, re-upload it to the Media Library and update the relevant links, or use Google Drive hosting so you can update the file without changing the URL.
GoHighLevel’s Media Library supports PDF files of up to 20MB. Files larger than this limit must be compressed before uploading, or hosted on a third-party platform like Google Drive and linked or embedded externally.
No — you cannot upload PDFs directly from within the funnel or website page builder. PDF files must be uploaded through the Media Library first (accessible via Settings or the main navigation), and then linked or embedded into your pages from there.
Linking a PDF opens it in a new browser tab or triggers a download when a visitor clicks a button or link. Embedding a PDF displays an inline document viewer directly on your webpage, so visitors can read the content without leaving the page. Both approaches are valid — the right choice depends on whether you want visitors to read the document on-site or download and keep it.
Use the Download File Action feature on a button element (Method 3). Toggle the Download option on in the button settings, link the file through the Media Picker, and optionally set a custom download filename. This forces the visitor’s browser to download the file rather than opening it in a tab.
Absolutely — and it is one of the most effective uses of PDF files in GHL. Upload your PDF to the Media Library, create an opt-in form, and build a simple automation workflow that sends a delivery email containing the PDF link upon form submission. This approach captures leads, delivers value immediately, and automatically adds contacts to your nurture sequences.
GoHighLevel does not have a native PDF password-protection feature. You can password-protect the PDF file itself before uploading (using Adobe Acrobat or similar tools), but visitors would need to know the password to open it. For access control, gating behind a form or a members area is typically a more user-friendly approach.
If a PDF is deleted from the Media Library, all links pointing to that file will break — returning a 404 error or a blank page. Always check for existing links before deleting any file from your Media Library, and update or remove those links before deleting.
Content inside an iFrame is generally not indexed by Google as part of your page. If the PDF contains valuable text content that you want search engines to find, consider also adding a summary of the content as regular page text alongside the embedded viewer. For lead magnet PDFs or downloadable resources, this is rarely a concern — but for informational PDFs whose content you want discovered in search, text-based alternatives or summaries are advisable.
Yes. The Media Library URL of your uploaded PDF can be used in GoHighLevel email campaigns just like any other link — paste it into a button or hyperlinked text within the email builder. Ensure you test that the link works correctly before sending to your list.
Adding PDF files to your GoHighLevel website is a straightforward process once you understand the platform’s tools and the different methods available. Whether you are creating a simple brochure download, embedding a document viewer directly on a page, gating a lead magnet behind an opt-in form, or automating PDF delivery through a workflow, GoHighLevel provides everything you need to execute it professionally.
The key steps in summary:
Mastering PDF management in GoHighLevel is one component of building a high-performing digital marketing presence. If you want expert help building, optimising, and growing your GoHighLevel website — including SEO, content marketing, PPC advertising, website development, social media management, and SEO content writing — the team at Macroter is here to help.
Published by Macroter Digital | GoHighLevel Guides & Digital Marketing Resources | Updated 2025
I’m Md Nasir Uddin, a digital marketing consultant with over 9 years of experience helping businesses grow through strategic and data-driven marketing. As the founder of Macroter, my goal is to provide businesses with innovative solutions that lead to measurable results. Therefore, I’m passionate about staying ahead of industry trends and helping businesses thrive in the digital landscape. Let’s work together to take your marketing efforts to the next level.
Berlin is one of Europe's most electrifying digital economies — a city where underground culture,…
Toronto's digital landscape is one of the most competitive in North America. From the innovation…
Sydney is more than Australia's most iconic harbour city — it is the country's undisputed…
Los Angeles is not just the entertainment capital of the world — it's the…
Singapore has firmly established itself as the digital marketing capital of Asia-Pacific. As one of…
Dubai has transformed itself from a trading port into one of the world's most dynamic…