Back
Scan complete

zidanwith.vercel.app

1 page · 0.3s · Scanned just now

0/ 100
AI automation score

Mostly human-written

72% confidence

How to read this score
0–35 · Mostly human35–65 · Mixed signals65–100 · Mostly AI

The score is a fingerprint of automation, not a quality judgment. A high score means the page reads as machine-generated. It doesn't mean the page is bad.

What we saw

This is a personal developer portfolio with substantial, project-specific content (808 words) and strong human signals throughout. The project descriptions contain concrete technical choices (PHP Native, Laravel, MySQL, DomPDF), numbered feature lists tied to real workflows (role-based access, payroll calculation, menu CRUD), and internal references (links to specific projects). The structure is a standard portfolio template, but the asymmetry (5 projects listed, varying project depths, "View all projects" link) and all-alt-text-present imagery suggest careful manual authorship rather than AI generation. The tone is distinctly personal — the author names themselves "Dan" / "Zidan", self-identifies as a 7th-semester student, and uses first-person throughout with minimal marketing speak. No listicles, no "leverage" or "unlock", no hedge-and-explain patterns.

65/100Caution
AI Governance· financial

1 governance risk detected

1 critical
What we scanned
Page title
Maulana Yusuf Zidan | Portfolio
Meta description
Explore Dan's portfolio: a web developer building fast, accessible apps with Next.js, Laravel, Node.js, and more.
Canonical URL
Robots directive
index, follow
Language
en
Built with
Next.js
Search & social preview

How the page presents itself in a Google result and as a shared link, rebuilt from the tags we crawled.

Google result
z
zidanwith.vercel.appzidanwith.vercel.app

Maulana Yusuf Zidan | Portfolio

Explore Dan's portfolio: a web developer building fast, accessible apps with Next.js, Laravel, Node.js, and more.

  • Title · 31 characters
  • Description · 113 characters
Fine-tune this snippet in the SERP simulator
Shared link card
zidanwith.vercel.app

Dan | Web Developer

Explore Dan's portfolio: a full-stack web developer building fast, accessible apps with Next.js, Laravel, Node.js, and more.

  • No og:image — shared links render as bare text with no picture
AI Governancefinancial · 34%
65/100
Caution1 risk detected
criticalSite classified as financial content

AI-generated financial content may constitute unlicensed investment advice

Content that discusses investment strategies, specific securities, or financial products and is generated by AI without licensed advisor review can violate SEC and FINRA rules on investment advice. The FTC also scrutinises AI-generated financial claims for deceptive practices.

SEC Rule 206(4)-7FINRA Rule 2010FTC Act §5
Fix
Financial disclaimer template
## Financial Disclaimer

The content on this website is provided for informational and educational
purposes only and does not constitute investment advice, financial advice,
trading advice, or any other type of professional advice.

Nothing on this site should be construed as a recommendation to buy, sell, or
hold any security or financial instrument. Past performance is not indicative
of future results.

> Some content on this site is created or assisted by AI. AI-generated
> financial content may contain errors or outdated information. Always
> consult a licensed financial advisor before making investment decisions.

_Disclaimer last reviewed: [DATE]_
Financial disclaimer component (HTML)Pro
Available on the Pro plan.See pricing →
Top findings
  • Worth notingStructure

    Skill list repeats 6 times identically, suggesting copy-paste or templating artifact

    Evidence
    • HTML✦CSS✦PHP✦JavaScript✦Next.js✦Laravel✦Node.js✦MySQL✦×6body
    Try this

    Remove duplicate skill listings; display the stack once or vary it by project context to avoid the appearance of bloat or templating

What's working

Signals of human authorship the page is doing well.

  • Content

    Project descriptions are specific to real workflows: payroll calculation, menu CRUD, catering booking, decision-support logic

  • Imagery

    All 10 images include descriptive alt text and semantic titles matching their content (e.g., 'Dashboard Overview — HR Management Dashboard')

SEO auditGood
86/100
AI breakdown by category
  • Content22

    Specific project descriptions with real tech stacks (PHP Native, Laravel, MySQL), role-based features, and concrete deliverables; minimal marketing phrasing

  • Structure35

    Standard portfolio layout (hero → about → projects → CTA) with some repetition in project cards, but asymmetric project counts and custom component naming suggest hand-built rather than AI-templated

  • Imagery32

    10 images with zero missing alt attributes and descriptive titles (Dashboard Overview, Menu Homepage) indicate careful curation; no visible stock-photo uniformity or AI generation artifacts

  • Tone38

    First-person voice ("I'm a 7th-semester student", "I enjoy learning") with specific context (location, university, semester level); consistent but not aggressively uniform across sections

By the numbers
  • Words808
  • Images10
  • Alt coverage100%
  • Internal links13
  • External links6
  • Schema blocks0
  • HTML size79 KB
  • Text-to-HTML9%
LLM-marker phrases

No common LLM-marker phrases found — none of the stock AI vocabulary we scan for appears in the body text even once.

SEO audit detail
  • Meta tags
    Missing canonical
    Why this matters

    Why it matters. Title and description are the two strings Google shows in search results. They decide whether anyone clicks. A canonical tag tells Google which URL is the source of truth when the same content lives at multiple paths.

    Passing looks like. A non-empty title under 60 characters, a meta description under 160, and a self-referencing canonical link.

    Fix. Add the missing tags inside the page head. Treat the title as a headline you'd want to read in a SERP, not a brand slogan.

  • Heading structure
    1 H1, 4 H2
    Why this matters

    Why it matters. Headings are how crawlers and assistive tech understand a page's outline. One H1 names the page. H2s break it into sections. Skipped levels and missing H1s confuse both.

    Passing looks like. Exactly one H1, at least one H2, and no skipped levels (no H1 to H3 jumps).

    Fix. Replace the missing or duplicate H1 with a single, descriptive heading. Promote section titles to H2. Demote sub-points to H3.

  • Mobile readiness
    Responsive
    Why this matters

    Why it matters. Google indexes mobile-first. A page without a responsive viewport renders zoomed-out on phones, fails Core Web Vitals on touch, and loses its mobile ranking.

    Passing looks like. A meta viewport tag with width=device-width and a layout that reflows under 600px.

    Fix. Add a viewport meta tag set to width=device-width and initial-scale=1, then audit your largest blocks at mobile widths.

  • Page speed signals
    0.3s · 79 KB
    Why this matters

    Why it matters. Page weight and response time directly feed Core Web Vitals. Slow LCP and oversized HTML hurt rankings more than people expect.

    Passing looks like. First-byte under 1.5s, HTML payload under 500 KB, fewer than 30 images on the initial render.

    Fix. Trim render-blocking scripts, defer non-critical CSS, and serve compressed images sized to the viewport. Move heavy components below the fold.

  • Schema markup
    No JSON-LD
    Why this matters

    Why it matters. JSON-LD structured data is how you earn rich results: review stars, FAQ accordions, breadcrumbs, article cards. Skip it and Google has nothing structured to pull from when it builds your SERP card.

    Passing looks like. At least one valid JSON-LD block matching schema.org types relevant to the page (Article, Product, FAQPage, Organization).

    Fix. Add an application/ld+json script block describing the page. Validate with Google's Rich Results Test before deploying.

  • Broken links
    0/5 broken in sample
    Why this matters

    Why it matters. Broken internal links waste crawl budget, degrade UX, and signal to Google that the site isn't well-maintained. They also cap how deep crawlers reach.

    Passing looks like. Every internal link in the sample returns 2xx or 3xx. No dead anchors, no stale paths.

    Fix. Use the link list above to spot the broken paths. Either restore the missing pages or update the links to point at live URLs.

  • Image alt text
    All have alt
    Why this matters

    Why it matters. Alt text is what screen readers read aloud, and what Google reads instead of pixels. Skip it and you lose on both fronts.

    Passing looks like. Every meaningful image has a descriptive alt attribute. Decorative images can use alt="" to be skipped intentionally.

    Fix. Audit images in /assets and CMS uploads. Write alts that describe what's in the image, not what it links to.

Heading outline

Every H1, H2, and H3 we found on the page, in document order.

Show heading outline
  1. H1Hi, I’m Zidan.
  2. H2About — Full-Stack Web Developer
  3. H2About Me
  4. H2Selected projects
  5. H2Let’s Work Together
  6. H3Payroll Management System
  7. H3Restaurant Ordering Website
  8. H3SPK SAW CV Gardenia Setia Utama
  9. H3Personal Portfolio
  10. H3CV Gardenia Setia Utama
  11. H3Projects & Volunteer Experience
  12. H3Civic Rights & Duties Education Program
Sampled links

We HEAD-check up to five internal links to spot broken paths quickly.

Show sampled links

Was this report useful?

Share this scan

Every CrawlRanker scan gets a public, shareable URL. Send it to a client, post it in a thread, or benchmark a competitor.

Preview scan. SEO checks are live. AI scoring is in beta.