On-page SEO is the practical work that happens directly on your website to help search engines, and increasingly AI systems, understand what each page is about and decide whether to show it to people who are searching. It covers the words in your page titles and meta descriptions, the structure of your headings, the way your images are described, the internal links that connect your pages, and the structured data that quietly tells Google exactly who you are and what you do. Get this right and you give yourself the best possible chance of ranking, of earning the click, and of turning that click into a genuine enquiry.
For a business like iVigee, operating in global pharmacovigilance, regulatory and compliance services, this matters even more than it does for the average website. Your buyers are sophisticated. They are drug safety professionals, regulatory leads and procurement teams who expect precision and trust before they will ever pick up the phone. When your title tag, your headings and your structured data all line up cleanly, search engines reward you with stronger visibility and Google is far more likely to present your own carefully written snippet rather than rewriting one for you. That snippet is your shop window in the search results, and it directly influences your click-through rate and the quality of the leads you attract.
The good news is that your homepage already has a solid spine. It returns a healthy 200 status, the canonical tag is spot on, the page is set to index and follow, and you have Yoast SEO and Google Tag Manager in place. The less good news is that a handful of high-impact issues are quietly holding you back: every single image is missing alt text, you have two identical H1 tags, your title and meta description are both too long, and your structured data is present but not actually doing anything useful. None of these are catastrophic on their own, but together they are leaving visibility, trust and clicks on the table. Below we break each area down, show you the evidence, and tell you exactly what to fix.
How You Are Doing – 6.5/10
Your homepage scores a fair but firmly mid-table 6.5 out of 10. The fundamentals that keep you in the game are present: the page is reachable, correctly served as text/html, indexable, canonicalised to itself, and supported by sensible security headers and a working tag manager. That stops this being a low score and shows the site was built by people who knew the basics.
What pulls the score down are issues that are entirely fixable but genuinely costing you. All 38 images lack alt text, which is both an accessibility failing and a missed SEO opportunity, and in a regulated sector that carries real compliance risk too. You also have duplicate H1 tags, an overlong title and meta description, empty Twitter tags, and structured data with no usable types. Clear these and you would comfortably move into the 8 to 9 range. The path to a better score here is short and very achievable.
Page Basics and Indexability
This is the plumbing. Before anything else can work, search engines need to reach your page, understand the file type, and be allowed to index it. Get this wrong and nothing else matters, so it is reassuring that the foundations here are largely sound.
Your page returns a clean status of 200, the content type is correctly set to text/html; charset=UTF-8, and your cache-control header is present at max-age=600, must-revalidate. The robots meta tag reads index, follow, max-image-preview:large, max-snippet:-1, max-video-preview:-1, which is exactly what you want for a homepage you are trying to rank. The flags confirm the page is both indexable and followable. The only loose thread is an empty X-Robots-Tag header, which is harmless while your meta robots tag is doing its job, but mixed signals are best avoided. We also noticed the page.url field came back empty in the export and response time was not detected, so we cannot baseline speed from this data.
- Either remove the empty X-Robots-Tag header or set it explicitly to index, follow so it matches your meta tag (developer).
- Keep the cache-control header, but review the max-age against how often you update homepage content (developer).
- Capture response time in future crawls so we can baseline performance (SEO).
Canonical Tags
A canonical tag tells search engines which version of a URL is the definitive one, so all the link equity and ranking signals are pooled in one place rather than split across duplicates. This is a small detail that protects your homepage authority.
This is your strongest area. The canonical is set to https://ivigee.com/ and it is correctly self-referential, with flags.canonicalSelf returning true and flags.canonicalMissing false. There is nothing to fix here, only to protect.
- Keep the absolute homepage canonical exactly as it is (developer).
- Confirm that www, non-www, http and trailing-slash variants all 301 redirect to this canonical (developer).
Titles and Meta Descriptions
Your title tag and meta description are the single biggest influence on how your listing looks in search results and whether people click it. A tight, benefit-led title earns clicks. An overlong one gets truncated or quietly rewritten by Google, and you lose control of your own message.
Both elements are flagged as too long. Your current title is ‘Global Pharmacovigilance, Regulatory & Compliance Experts – iVigee’ and your meta description is ‘End-to-end pharmacovigilance and regulatory services – from development to post-marketing. Global & local PV coverage, quality management, and AI-powered drug safety.’ The keywords are right, but the length means Google may chop or replace them in the results, weakening your click-through rate.
- Rewrite the title to between 30 and 60 characters, for example: ‘Pharmacovigilance & Regulatory Compliance Experts | iVigee’ (content writer in Yoast).
- Trim the meta description to 70 to 160 characters, for example: ‘End-to-end pharmacovigilance and regulatory services from development to post-marketing. Global PV coverage, quality systems and AI-enabled drug safety.’ (content writer).
- After publishing, monitor Search Console for any rewrites and iterate (SEO).
Heading Tags and Content
Headings give your page structure for both readers and search engines. A single clear H1 states the main topic, while H2s and H3s organise everything underneath. Duplicate H1s muddy that primary signal.
You have two identical H1 tags, both reading ‘Pharmacovigilance Solutions From Those Who Wrote the Rules’, which triggers the h1Multiple flag. Your H2s and H3s are otherwise strong and topical, covering services, consultancy and physician-led positioning, and the page carries a healthy 1,213 words, so thin content is not an issue. The structure is good, it just needs that duplicate removed.
- Remove one H1 so a single, unique H1 remains using your current strong wording (developer).
- Keep the H2 and H3 hierarchy logical and avoid skipping levels (content writer).
- Add a short intro line under key H2s to support related search phrases (content writer).
Images and Accessibility
Alt text describes images to screen readers, to search engines and to AI systems reading your HTML. Without it you lose image search traffic, you fail visually impaired users, and in a regulated, compliance-focused sector you expose yourself to accessibility risk.
This is your weakest area and the clearest priority. All 38 images are missing alt text, including meaningful ones like logo-08-scaled.webp, Dr.-Jan-Petracek.webp and regulator logos such as FDA-white.webp, PMDA-white.webp and MHRA-white_R.webp. These carry real meaning and should be described.
- Add descriptive alt text to every meaningful image, for example ‘Dr Jan Petracek, physician-led pharmacovigilance expert at iVigee’ (content writer).
- Set alt=” only for purely decorative images (developer).
- Make alt text a required field on all future uploads in WordPress (SEO/design).
Social and Brand Signals
Open Graph and Twitter tags control how your pages look when shared on social platforms. Strong previews lift click-through from social and reinforce brand trust.
Open Graph is complete, with a title, description and image (logo-07-scaled.webp), and your LinkedIn company page is linked. However twitter.title and twitter.description are both empty, even though twitter.card is set to summary_large_image, so X previews are not under your control.
- Populate twitter:title and twitter:description with punchy versions of your new title and meta (content writer).
- Ensure the OG image is a clear, branded 1200x630px asset (design).
- Add any other official social profiles to strengthen brand signals (SEO).
Structured Data
Structured data, written in JSON-LD, spells out to search engines exactly who you are. Done well it unlocks rich results and knowledge panel features that boost visibility and trust.
A single schema block is present (schema.count: 1) but schema.types is empty, so it is not delivering usable information. This is a missed opportunity rather than an error.
- Add Organization, WebSite and BreadcrumbList types with name, url, logo, sameAs and contactPoint (developer/SEO).
- Validate with Google’s Rich Results Test before deploying (SEO).
- Monitor Search Console for structured data warnings (SEO).
Security Headers
Security headers build user and enterprise trust and protect against common attacks. For buyers in a compliance-driven sector, this quietly matters.
You have Strict-Transport-Security at max-age=15768000, X-Frame-Options set to SAMEORIGIN, and X-Content-Type-Options at nosniff. The gap is a missing Content-Security-Policy, which is your best defence against cross-site scripting.
- Add a Content-Security-Policy, testing in report-only mode first (developer).
- Consider HSTS includeSubDomains and preload once ready (developer).
- Add Referrer-Policy and Permissions-Policy headers for further hardening (developer).