ScreenshotNeo

BlogHow-to

HTML.to.design Importing Blank Pages: Fix Website Loading Issues

Why is html.to.design importing a blank page? Follow the right fix for public URLs, logged-in pages, incomplete captures, and file imports.

By the ScreenshotNeo team4 October 20266 min read

If html.to.design imports a blank page, the result alone does not identify the cause. Start with the route you used: use the Web tab for a public page with an open URL, the browser extension for pages that need your logged-in browser state, and the File tab for supported local files. If only the first screen appears, follow the separate full-page capture steps below.

1. Check the page and import route

  1. Is the page public and open without signing in? In the plugin, open the Web tab, paste the URL, and import it. This is the documented route for public websites with an open URL. html.to.design: Import any page from the Web.
  2. Does the page require a login, VPN, CAPTCHA, or browser-specific state? Open it in your browser, sign in or solve the CAPTCHA there, then capture it with the html.to.design browser extension. URL import does not automatically inherit your authenticated browser session or solve a CAPTCHA.
  3. Is the page content present but cut off after the first screen? That is a page-length issue, not necessarily a wholly blank render. Use the full-page workaround in section 3.
  4. Are you importing a local file? Confirm its format is supported and, for HTML, that its referenced assets can be reached. See section 4.

Try the standard public URL import once if it applies. If it still produces a blank result, switch to the browser extension when the page depends on browser state. The docs do not identify one universal cause for every blank import.

2. Capture pages that need a browser session

The extension captures the page as it appears in your browser. The official guidance recommends it for private pages, pages behind a login or VPN, pages after solving a CAPTCHA, and some page-state or language cases that URL import may not handle. html.to.design: Import private pages

  1. Open the target page in your browser.
  2. Complete any required sign-in or CAPTCHA yourself and wait until the page content is visible.
  3. Use the html.to.design browser extension to capture the page.
  4. Send the capture to the plugin’s Extension tab, or save it as a local .h2d file and drop that file into the plugin.

The private-page guide says a locally saved .h2d file remains on your computer and does not reach the service’s servers. Use the extension route when the browser can display the needed content but importing the URL directly cannot.

3. Fix a capture that stops at the visible viewport

If the import contains only the visible viewport instead of the full page, use the documented extension workaround. The docs explain: “So, it may happen that the plugin only captures what you see, as opposed to the full length of the page.” html.to.design: Not capturing full page

  1. Open the page in Chrome.
  2. Open Chrome DevTools and turn on Device Mode.
  3. Set the viewport height to a very large value so more of the page is available to the capture.
  4. Use the extension’s Capture full page option.
  5. Import the resulting .h2d file into the plugin.

This workaround addresses a capture that is limited to viewport length. It is not documented as a fix for every completely blank render; if the result is still blank, return to the route checks above and escalate with the details in section 6.

4. Import a supported file and check its dependencies

The plugin’s File tab supports .h2d, HTML/HTM, ZIP, email formats, and MHTML/MHT. html.to.design: Import local files

An HTML file may refer to external stylesheets, fonts, images, scripts, or other assets. If those resources are not publicly available when the import runs, they may fail to load and the result can be incomplete. When the source HTML depends on inaccessible external resources, open the page in a browser where it renders correctly and capture it with the extension instead.

5. Distinguish a blank page from a font problem

A missing font is a typography issue when the page content otherwise renders. If the plugin shows a Download missing fonts button, check the font’s internal rendered name and whether Figma recognizes it. The official guide also covers local and organization-wide font installation. html.to.design: Missing fonts

That guidance does not establish that a font caused a completely blank page. First get the page content to appear; then address font substitution or missing-font prompts separately.

6. Troubleshoot by symptom

What you see Likely route to try Cause to check and next step
The entire import is blank after Web URL import Confirm the URL is public and open; retry once. If it needs a session, use the extension. The page may require authentication or browser state, or the URL import may have a rendering issue. A blank result alone does not reveal which.
A login page, access denial, or CAPTCHA appears Open the page in your browser, authenticate or solve the challenge, then capture with the extension. URL import does not use your logged-in browser session or solve CAPTCHA challenges automatically.
Only the top portion of the page appears Use Chrome DevTools Device Mode, set a very large viewport height, then choose the extension’s Capture full page and import its .h2d. This is the documented workaround for viewport-only page length. It is not a general blank-page repair.
HTML imports without images, styling, or other assets Check whether the HTML’s external resources are reachable; use an extension capture if they are not. Local HTML can reference resources that are unavailable to the importer.
Content renders but typography differs Follow the missing-font guide and inspect the font’s internal name and Figma recognition. Treat this as a font issue after content renders, not as a confirmed cause of a blank page.
The extension capture or URL import still renders incorrectly Record the capture details and contact support through the product’s Discord channel. The official issue-report page points to Discord for rendering problems; it does not promise a universal fix.

7. What to include when reporting a rendering issue

If the documented routes do not resolve the problem, avoid guessing at the cause. Collect these details before reporting it:

  • The URL, if it is safe to share.
  • Whether the page is public, behind a login, or behind a VPN.
  • Whether a CAPTCHA was involved and whether you solved it in the browser.
  • Your browser and whether you used Web URL import, the extension, or the File tab.
  • What appeared in Figma: wholly blank, partial content, missing assets, or a font issue.
  • The steps you already tried, including the full-page workaround if relevant.

The official issue-report page directs users with remaining rendering problems to the product’s Discord support channel. html.to.design: Report an issue

Or skip the browser setup

If your goal is to get a clean website screenshot for reference, documentation, or a design workflow, ScreenshotNeo returns a screenshot from one GET request. It removes cookie banners, newsletter popups, and chat widgets before the shot; bot checks, blank pages, and failed loads are never billed; and its MCP server lets AI agents take screenshots. The free plan includes 1,000 screenshots a month with no card, and paid plans start at $5 for 3,000. See the ScreenshotNeo API documentation.

curl -G "https://api.screenshotneo.com/v1/shot" -d access_key=YOUR_API_KEY --data-urlencode url=https://stripe.com -o shot.webp
import requests

r = requests.get(
    "https://api.screenshotneo.com/v1/shot",
    params={"access_key": "YOUR_API_KEY", "url": "https://stripe.com"},
    timeout=90,
)
open("shot.webp", "wb").write(r.content)
const q = new URLSearchParams({ access_key: 'YOUR_API_KEY', url: 'https://stripe.com' });
const res = await fetch(`https://api.screenshotneo.com/v1/shot?${q}`);

Create a free ScreenshotNeo account for 1,000 screenshots a month with no card.

FAQ

Can html.to.design import a page after I sign in?

Use the browser extension to capture the page as it appears in your authenticated browser. The Web tab is the documented route for public pages with an open URL.

Does the extension solve a CAPTCHA for me?

No automatic CAPTCHA solution is documented. Solve the challenge in your browser first, then capture the page with the extension.

Will the large-viewport workaround fix every blank page?

No. It is documented for a page captured only to the visible viewport. For a wholly blank result, check access requirements and capture route, then report unresolved rendering issues.

Is a missing font the same as a blank-page problem?

No. The missing-font instructions apply when content renders but a font is unavailable or substituted.