SEO: optimise the Google Forms quiz + anonymous pages, add the HIPAA page - #887
SEO: optimise the Google Forms quiz + anonymous pages, add the HIPAA page#887Harsh419 wants to merge 11 commits into
Conversation
Research first, and the two pages needed opposite treatment. SERP (DataForSEO, US, top 10): - "google forms quiz" is Google-owned end to end: support, docs, workspace, sites and developers take six of eight results, only two non-Google and both are .edu. The AI Overview cites nothing at all. - "how to make google forms anonymous" is vendor-winnable: formaloo, involve.me, ClickUp, qualtir and Jotform all rank, and the AI Overview cites qualtir, so a text page can win there. AEO (Responses API, tool_choice required, since gpt-4o-search-preview is deprecated and 404s): - Formester is already cited 2 of 2 on the anonymous queries. That page was strengthened rather than rebuilt from scratch, and all ten of its FAQ answers are preserved verbatim because they are the most likely reason it gets quoted. - Formester is cited 0 of 2 on quiz queries. Screenshots now carry red arrows and boxes pointing at the exact control, positioned from each element's real bounding box rather than by eye. Six new annotated captures, uploaded to the CMS. Quiz page: added a Key Facts block, converted six of seven H2s to question form, inserted four annotated captures, added a mid-article CTA and a Formester block, and grounded the claims in Google's own docs. The sharpest fact is that only 6 of the 12 question types can carry an answer key, which no competitor states plainly. It also had a real defect: eight visible FAQs but only four in the FAQPage schema, and no section.faq wrapper so the accordion never fired. All eight are now marked up and wrapped. Anonymous page: it shipped with five <style> blocks (11,398 characters, 37% of the file) and 89 uses of fmstr-cmp-* classes, both banned in blog bodies, plus an empty jsonld array and zero images. Rebuilt in Minimal Structure with the full seven-entity graph, three annotated captures and the copy preserved. Also corrected a stale "for 2024" in the quiz page description, and left both bylines alone rather than compound an author change that has not been confirmed. Verified: blacklist_check 0 hits on both, FAQPage matches the visible FAQ 8/8 and 10/10, zero style blocks and zero fmstr-cmp- classes in either body, 27 images load, no overflow at 1440px or 390px. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Harsh was right that the last pass did not follow the pattern. The Key Facts block went in, but it landed below 3,344 characters of preamble, so a reader saw a BuzzFeed pizza quiz anecdote and three rhetorical questions before reaching any answer. The page also had no in-page cover image, unlike every other page in the set. Now matches the reference structure exactly: cover image, then an entity-first lead paragraph saying what a Google Forms quiz is and when it stops suiting you, then Key Facts, then a decision table, then question-form H2s. The new table answers the question the whole page turns on: which question types can actually be auto-graded. Six of twelve can carry an answer key, six cannot, and a quiz built on the wrong field type silently scores nothing. Added the Short answer exact-match warning alongside it. Replaced the E-Learning section, which was 3,706 characters of padding: a history of online learning back to 1982, a 2019 edtech investment figure, and an outbound link to a childhood education degree that does not belong on a how-to about building a quiz. In its place, a question-form section on running a quiz for a class, keeping the four useful settings tips and adding the interaction nobody documents, that releasing grades later forces email collection on and ends the quiz's anonymity. H2s are now 8 of 9 in question form, up from 0 before this work started. Repaired damage I caused in the same pass: removing the pizza sentence with a fallback that cut at the first period after an offset landed inside a URL, splicing a stray sentence into the last FAQ answer and breaking its link. Restored the answer and resynced it to the schema. Verified: blacklist_check 0 hits, FAQPage matches the visible FAQ 8/8, zero style blocks, 21 images load, no overflow at 390px, and the page now opens on the definition rather than an anecdote. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Two corrections from Harsh's review. Covers. Both pages were still carrying old Strapi artwork rather than the v6 style every other page in this set uses. Generated new covers and swapped them in all three places that matter: the coverImg frontmatter, the BlogPosting image in the JSON-LD, and the in-page hero. Zero references to the old covers remain. External links. The quiz page opened its first section by linking out three times in two sentences, to google.com/docs/about, about.google and google.com/forms/about, plus a fourth "click here" link further down. None of them grounded a factual claim; they were definitional links that sent readers off the page. All four are gone, and the section they sat in was rewritten. It had been a generic description of what Google Forms is, ending on "So without further adieu", which does not answer its own heading. It now explains what quiz mode actually adds, what the release setting decides, and that marking is literal, so a short answer with different spelling scores zero. That last point is the most common reason a quiz marks lower than the teacher expects. The page now has zero non-grounding external links. The only outbound links left on either page are Google's own documentation, which carries the sourced facts, and Formester's own pages. Verified: blacklist_check 0 hits on both, FAQPage matches the visible FAQ 8/8 and 10/10, H2s 8 of 9 and 4 of 6 in question form, zero style blocks, zero em dashes, 24 images load across the two, covers consistent across frontmatter, schema and body. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Targets "is google form hipaa compliant" (210/mo). The SERP is content sites rather than Google properties, and the AI Overview cites four of them, so a well-sourced text page can win there. The answer most ranking pages give is wrong. Google publishes its HIPAA Included Functionality list, and as of 31 August 2026 it reads "Google Drive (including Google Docs, Google Forms, Google Sheets, Google Slides, and Google Vids)". Forms is covered by the Business Associate Addendum. The page leads with that, then sets out the four conditions that actually decide whether a given form is compliant: a Workspace account, a signed BAA, no add-ons, and controlled access to the responses and linked Sheet. The add-on exclusion is the sharpest point and comes straight from Google: third-party applications including add-ons are not included in the Included Functionality covered by the BAA. That matters because add-ons are exactly how teams patch the gaps in Google Forms, and each one puts PHI outside the agreement. On our own position the page is explicit rather than quiet. A warning callout states that Formester is not HIPAA-certified, quotes the security page, and tells readers handling PHI to use a vendor that will sign a BAA. The Formester block is scoped to the other side of that line: recruitment, vendor onboarding, event registration and staff feedback, none of which are patient data. An FAQ answers "Is Formester HIPAA compliant?" with a plain no. Every compliance claim traces to Google's own documentation or to formester.com/security. All four cited URLs return 200. Verified: blacklist_check 0 hits, FAQPage matches the visible FAQ 8/8, seven-entity graph, 5 of 7 H2s in question form, zero style blocks, zero em dashes, both images load, no overflow at 390px. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
…lines Three corrections from Harsh's review. The page took the long route to its own answer. The lead ran five lines and hedged with "Yes, with conditions that most answers to this question leave out" before explaining anything. It now opens with the answer: "Yes, on a Google Workspace account with a signed Business Associate Addendum. Google lists Forms as covered functionality. On a free or personal Google account, no." Two lines, then Key Facts, then the detail. Nine of twenty-three paragraphs ran over three lines, including the lead and the Key Facts summary. All twenty-three are now within three lines. Where a paragraph carried two ideas it was split rather than truncated, so nothing was lost from the add-on section. Removed "Our security page says so directly:" from the warning callout. The callout now states the fact plainly: Formester is not HIPAA-certified, we do not hold SOC 2, ISO 27001, HIPAA or BAA certifications, do not use Formester for protected health information. The claim stands on its own without pointing at another page to vouch for it. Kept the short direct answers that the fragment metric flags: "It is.", the bolded list labels, and the one-line FAQ openers. Those are the structure being asked for here, and stripping them to satisfy a sentence-length average would undo the direct-answer fix. Verified: blacklist_check 0 hits, FAQPage matches the visible FAQ 8/8 with the reworded answers synced to the schema, zero paragraphs over three lines, zero em dashes, zero style blocks. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
The page said a signed BAA was mandatory but never showed how to get one, which left the reader with the requirement and no way to act on it. New section, "How do you sign the BAA in Google Workspace?", with the five steps taken verbatim from Google's admin documentation: Account, Account settings, Legal and compliance, then Security and Privacy Additional Terms, then the HIPAA Business Associate Amendment, Review and Accept, answer the three covered-entity questions, OK. Three details that matter and are easy to miss: - A regular admin account is not enough. Google requires a super administrator for this task. - The legacy free edition of Google Workspace cannot accept a BAA at all. - Acceptance is electronic and Google treats it as binding as paper. The accepted BAA stays visible in the same Legal and compliance screen, and Google suggests a screenshot of it as audit evidence. Added a callout for the thing people assume: accepting the BAA changes the contract with Google, not the settings on your form. The add-on and sharing checks still have to be done by hand. The HowTo schema was rebuilt around the real seven-step flow rather than the four-step summary it carried before, a ninth FAQ answers "Where do I sign the BAA in Google Workspace?", and Google's privacy compliance page joins the citation list. No screenshots on this section. Capturing the Admin console would mean signing into a Google Workspace super-admin account, which I will not do, so the steps are text with the Admin console deep link instead. Verified: blacklist_check 0 hits, FAQPage matches the visible FAQ 9/9, HowTo carries 7 steps, 3 citations all resolving, 6 of 8 H2s in question form, zero paragraphs over three lines, no overflow at 390px. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
✅ Deploy Preview for formester-prod ready!
To edit notification comments on pull requests, go to your Netlify project configuration. |
There was a problem hiding this comment.
Checked out this branch locally, ran the dev server, and verified in-browser.
Bug: .fmstr-blog-cta renders completely unstyled on both edited pages. The class names fmstr-blog-cta / fmstr-blog-cta__btn / fmstr-blog-cta__meta don't exist in components/blog/BlogPostView.vue's CSS (only .cta / .cta--brand are defined there). The block renders as plain text with a bare underlined link instead of the intended CTA box:
Confirmed by comparing it against the .better block that sits right below it on the same page, which renders correctly with a purple card and a real button:
Same issue on the anonymous-forms page:
Affected pages (once merged, at https://formester.com/blog/<slug>/; verified locally at http://localhost:3000/blog/<slug>/):
how-to-create-a-quiz-in-google-forms-the-only-guide-youll-need-in-2023/how-to-make-anonymous-google-form-or-survey/
Suggest swapping this markup for the existing .cta / .cta--brand pattern used elsewhere on the site (see how the HIPAA page in this same PR correctly uses .better/.btn instead).
| So whether, you want to have some fun with your friends by using a quiz to determine what kind of pizza they are, or create an aptitude test for your career counselling business, or you are a teacher wanting to create an online quiz for your students; | ||
|
|
||
| All you have to do, is literally, just [sign-up for free and start accessing all the powerful features](https://app.formester.com/users/sign_up)! | ||
| <div class="fmstr-blog-cta"> |
There was a problem hiding this comment.
This .fmstr-blog-cta block renders unstyled (plain text + bare link, no button/box) — that class isn't defined in BlogPostView.vue's CSS. Verified locally at http://localhost:3000/blog/how-to-create-a-quiz-in-google-forms-the-only-guide-youll-need-in-2023/. Swap for the existing .cta/.cta--brand pattern.
For comparison, the .better block right below it on the same page renders correctly:
There was a problem hiding this comment.
Still reproducing after f6e87f5b. The quiz page wasn't touched by any of the three new commits, so this block is unchanged.
The highlighted region is .fmstr-blog-cta; the correctly-styled .better card sits directly below it in the same viewport. Confirmed none of fmstr-blog-cta, fmstr-blog-cta__btn, or fmstr-blog-cta__meta are defined in any .vue/.css/.scss in the repo.
One correction to my original comment worth flagging: this block is added by this PR (it's a + line in the diff against master), not pre-existing on this page — so it's a regression this PR introduces rather than one it inherits.
The other three pages in the PR now use an inline gradient CTA card that renders correctly. Applying that same block here would close this out.
There was a problem hiding this comment.
Cross-linking: the wider version of this (10 more posts on master with the same unstyled .fmstr-blog-cta) is now tracked in #893. The instance on this page is introduced by this PR though, so it should be fixed here rather than deferred to that issue.
| <li><strong>Free-text answers identify people constantly.</strong> Someone describing their own project in a comment box has told you exactly who they are, whatever the settings say.</li> | ||
| </ul> | ||
|
|
||
| <div class="fmstr-blog-cta"> |
There was a problem hiding this comment.
Same issue here — .fmstr-blog-cta is unstyled. Verified locally at http://localhost:3000/blog/how-to-make-anonymous-google-form-or-survey/. Swap for the existing .cta/.cta--brand pattern.
There was a problem hiding this comment.
Fixed in adf19ae9 — confirmed locally.
The .fmstr-blog-cta markup was replaced with an inline-styled gradient card, which renders as intended (highlighted).
Not the .cta/.cta--brand swap I suggested, but it's an established site pattern — six other content files already use the identical block — and the same treatment is applied consistently across the rest of the PR:
Resolving from my side.
New post for the Google Forms cluster. Separates the two things people mean by an auto filler (a pre-filled link when you own the form, a browser extension when you were sent one), walks through Google's Pre-fill form option and the entry IDs behind the link, includes the Sheets formula for one link per row, and answers the bot question. Six image slots are placeholder:// URLs pending capture. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01Hm7uC1txnsB3T833imonGa
Answer-first lead and a Quick answer block, four numbered steps with Limit to 1 response as step 2, a corrected FAQ (Limit to 1 response requires a sign-in, not email collection), one new FAQ on whether anonymous surveys can be traced, a short section on when an anonymous survey is the right choice, and a single CTA card in place of two. Meta title now opens with the query. FAQPage and HowTo schema synced. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01Hm7uC1txnsB3T833imonGa
Lead now answers the question as asked (not compliant on its own; covered on a Workspace account with a signed BAA). Quick answer block with three situations, HIPAA in the conditions heading, a corrected BAA section (Google's side versus yours), per-IP wording on the duplicate control, the screenshot-as-evidence claim sourced to Admin Help, a tenth FAQ on whether website forms need to be compliant, one CTA card in place of the previous block, and a link to the HIPAA form builders post. The not-certified callout is unchanged. FAQPage and HowTo schema synced. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01Hm7uC1txnsB3T833imonGa
| authorProfile: "https://linkedin.com/in/ankitsinghaniyaz" | ||
| coverImgAlt: "Cover art for a guide to auto-filling Google Forms with pre-fill links and extensions" | ||
| featured: false | ||
| coverImg: {"url":"placeholder://google-form-auto-filler-cover","width":1200,"height":630} |
There was a problem hiding this comment.
Blocker: every image on this new page is a placeholder:// URL and renders broken.
Six occurrences — line 12 (coverImg.url), line 20 (markdown cover), and lines 51, 57, 71, 84 (body <img src>). Nothing in the repo handles the placeholder:// scheme, so all six fail to load.
Line 12 also feeds the OG/social card at 1200x630, so shares of this URL render imageless.
This is new to this PR — placeholder:// appears in no other content file and nowhere on master. The page reads as a draft that hasn't had its assets attached yet. Either upload the six assets and swap the URLs, or drop this page from the PR and ship it separately.
Verified locally at http://localhost:3000/blog/google-form-auto-filler/ on f6e87f5b.
Replace the quiz page's fmstr-blog-cta block, whose classes are not defined anywhere in the repo, with the inline gradient CTA card the other pages use, and drop the second button from the comparison block so the page has one CTA. Wire the auto-filler cover to its uploaded asset and remove the four in-body placeholder images until the screenshots are captured. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
The no-code form builders listicle shipped its component markup with no matching stylesheet, so every section rendered unstyled. Add the same five component style blocks the sibling listicles use, under this page's own class prefix. Repoint 24 internal links on 15 pages that returned 404 (the old /google-forms-alternative/, /form-builder/, /survey-maker/, four /features/ slugs and three renamed blog slugs) to the live routes, and drop the two related-reading cards that pointed at a post which does not exist. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>









Four pages in the Google Forms cluster. Images for the first three are hosted in the Formester CMS, so this PR carries no binaries.
/blog/how-to-create-a-quiz-in-google-forms-the-only-guide-youll-need-in-2023//blog/how-to-make-anonymous-google-form-or-survey//blog/is-google-form-hipaa-compliant//blog/google-form-auto-filler/What changed
Quiz page. Rewritten opening that answers the question first, a key-facts block, a table of which question types can be auto-graded, and four new annotated screenshots. Removed a long anecdotal intro and an off-topic e-learning section.
Anonymous page. Rebuilt in Minimal Structure, then rewritten in the house voice. Answer-first lead and a Quick answer block, four numbered steps with Limit to 1 response as its own step, a corrected FAQ (the setting requires a sign-in, not email collection), a new FAQ on whether anonymous surveys can be traced, a short section on when an anonymous survey is the right choice, and one CTA card in place of the previous two. Meta title now opens with the query. Three screenshots, structured data and byline unchanged.
HIPAA page. New, written in the house voice. Opens by answering the question as asked (not compliant on its own; covered on a Workspace account with a signed BAA, which Google lists Forms under), then a Quick answer block, the four conditions, the Admin console steps to accept the BAA, why add-ons fall outside it, the form settings that still matter, and where Formester does and does not fit. Every Google claim is quoted from Google's own pages.
Auto filler page. New. Separates the two things people mean by a Google Form auto filler (a pre-filled link when you own the form, a browser extension when you were sent one), walks through Google's Pre-fill form option and the entry IDs behind the link, includes the Sheets formula for one link per row, and answers whether a bot can fill a form. Ends with where Google's pre-fill stops and where Formester's pre-fill and external-data fill pick up.
Worth a look during review
-2023; renaming it is a separate decision.createdAtandpublishedAtof 2026-09-01. Set them to the real publish date at merge so the article does not claim a date earlier than its first crawl.Fixes across the branch
/google-forms-alternative/,/form-builder/,/survey-maker/, four/features/slugs and three renamed blog slugs). They now point at the live routes. Two related-reading cards that linked to a post which does not exist were removed.Preview
https://deploy-preview-887--formester-prod.netlify.app