Skip to content

Latest commit

 

History

History
420 lines (327 loc) · 11.6 KB

File metadata and controls

420 lines (327 loc) · 11.6 KB

Google AdSense Application Guide

For ADMENSION Project
Goal: Get approved for AdSense to unlock $6-20 RPM revenue


Prerequisites Checklist ✓

Before applying, verify ALL items are complete:

  • Privacy Policy Live: /privacy-policy.html exists and accessible
  • Ad Containers Added: 23/23 containers in place (Stats, Docs, Manage, Admin rails completed)
  • Consent System Working: GDPR/CCPA banner shows and blocks ads until consent
  • Site Deployed: Live URL accessible (not localhost)
  • Original Content: Your landing pages have unique content
  • Navigation Works: All pages load properly
  • Mobile Responsive: Site works on mobile devices
  • No Prohibited Content: No adult content, violence, copyright violations

Application Process (Step-by-Step)

Step 1: Create Google Account (if needed)

  1. Go to https://accounts.google.com/signup
  2. Use a professional email (not temporary/disposable)
  3. Important: Use the same email you'll use for payments
  4. Verify your email address

Step 2: Apply for AdSense

  1. Go to https://www.google.com/adsense/start/
  2. Click "Sign Up Now" or "Get Started"
  3. Fill out the application form:

Application Form Details:

Website URL: https://[your-domain].com
    ↳ Enter your live production URL (no http://, just domain)
    ↳ Must be publicly accessible
    ↳ Cannot be localhost or staging subdomain

Email: [your-professional-email]
    ↳ Gmail recommended for easier account management
    ↳ This will be your AdSense account email

Country/Territory: [Your Country]
    ↳ Must match your payment address
    ↳ Cannot change after account creation

Receive customized help: ☑ Yes (recommended)
    ↳ Google will send optimization tips

Terms and Conditions: ☑ I accept
  1. Click "Save and Continue"

Step 3: Connect Your Site to AdSense

Google will provide an AdSense code snippet. DO NOT add this manually.

For ADMENSION (already configured):

  1. AdSense will give you a publisher ID like: ca-pub-1234567890123456
  2. Copy the 16-digit number after ca-pub-
  3. Open ads-config.js in your code editor
  4. Find line 18: client: 'ca-pub-XXXXXXXXXXXXXXXX',
  5. Replace XXXXXXXXXXXXXXXX with your 16-digit ID
  6. Save and deploy

Verification Code (if required):

  • Google may show: "Add this code between <head> and </head>"
  • Our ads-config.js already loads AdSense correctly
  • The script at line 190 in ads-config.js handles this:
    script.src = `https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js?client=${AD_CONFIG.adsense.client}`;
  • Once you update line 18, the verification will pass automatically

Step 4: Verify Site Ownership

Google will check if your site loads their AdSense script.

How to verify it's working:

  1. Deploy your updated ads-config.js with your real publisher ID
  2. Visit your site in a browser
  3. Open Developer Tools (F12)
  4. Go to Console tab
  5. Look for: [AdManager] Loading AdSense
  6. Go to Network tab
  7. Filter for adsbygoogle.js
  8. You should see the script loading successfully

Alternative: View Page Source

  1. Right-click on your site → "View Page Source"
  2. Search for adsbygoogle.js?client=ca-pub-
  3. Confirm your 16-digit ID is present

Step 5: Wait for Review

Timeline: 3-7 days typically (can be up to 14 days)

What Google Reviews:

  • ✅ Privacy policy exists and is accessible
  • ✅ Site has substantial original content
  • ✅ Navigation is clear and functional
  • ✅ No prohibited content (adult, violence, etc.)
  • ✅ Site complies with AdSense Program Policies
  • ✅ Site loads properly on desktop and mobile

During Review - DO NOT:

  • ❌ Change your site structure dramatically
  • ❌ Add prohibited content
  • ❌ Remove privacy policy
  • ❌ Make the site inaccessible
  • ❌ Use invalid traffic methods (bots, click farms)

During Review - DO:

  • ✅ Keep site live and accessible
  • ✅ Add more quality content if possible
  • ✅ Fix any broken links
  • ✅ Test mobile responsiveness

Step 6: Approval & Setup

If Approved ✓

You'll receive an email: "Your AdSense account has been approved"

Immediate Next Steps:

  1. Log in to https://adsense.google.com
  2. Go to AdsBy ad unit
  3. Click "+ New ad unit"
  4. Create 7 ad units (one at a time):

Ad Unit Setup (repeat 7 times):

Unit 1: Sticky Footer

Ad unit name: ADMENSION-Sticky-Footer
Ad type: Display ads
Ad size: Responsive
    ↳ Or manually set: 728x90, 970x90, 320x50

→ Click "Create"
→ Copy the Ad unit code (looks like /12345678/admension-sticky-footer)
→ Paste into your notes

Unit 2: Top Banner

Ad unit name: ADMENSION-Top-Banner
Ad type: Display ads
Ad size: Responsive

Unit 3: Rail Right

Ad unit name: ADMENSION-Rail-Right
Ad type: Display ads
Ad size: 300x600 or 300x250

Unit 4: In-Content Tall

Ad unit name: ADMENSION-In-Content-Tall
Ad type: Display ads
Ad size: 300x600, 300x250, 336x280

Unit 5: Footer Banner

Ad unit name: ADMENSION-Footer-Banner
Ad type: Display ads
Ad size: 728x90, 320x50

Unit 6: Create Page Rail

Ad unit name: ADMENSION-Create-Rail
Ad type: Display ads
Ad size: 300x600

Unit 7: Manage Page Rail

Ad unit name: ADMENSION-Manage-Rail
Ad type: Display ads
Ad size: 300x600
  1. Update ads-config.js lines 78-144 with your ad unit codes:
// Line 78
adsenseSlot: '/12345678/admension-sticky-footer', // Replace with YOUR slot

// Line 88
adsenseSlot: '/12345678/admension-top-banner',

// Line 98 (rail-left can use same as rail-right)
adsenseSlot: '/12345678/admension-rail-right',

// Line 109
adsenseSlot: '/12345678/admension-rail-right',

// Line 120
adsenseSlot: '/12345678/admension-in-content-tall',

// Line 130 (side-left uses own slot)
adsenseSlot: '/12345678/admension-side-left',

// Line 141 (side-right uses own slot)
adsenseSlot: '/12345678/admension-side-right',
  1. Update ads.txt file:
google.com, pub-1234567890123456, DIRECT, f08c47fec0942fa0

Replace pub-1234567890123456 with your actual publisher ID.

  1. Deploy updated code to production

  2. Test First Impression:

  • Visit your site
  • Accept cookies/consent
  • Open browser DevTools → Console
  • Look for: [AdManager] Consent granted, proceeding with ad initialization
  • Wait 5-10 seconds for ads to load
  • You should see ad placeholders or real ads
  1. Monitor AdSense Dashboard:
  • Log in to https://adsense.google.com
  • Go to ReportsOverview
  • Within 24-48 hours you should see impressions
  • Initial fill rate: 50-60% (improves over 7-14 days)

If Rejected ❌

You'll receive an email with rejection reason(s).

Common Rejection Reasons & Fixes:

"Insufficient content"

  • Fix: Add 10-15 more pages of unique content (300+ words each)
  • Wait 2 weeks, then reapply

"Site navigation is difficult"

  • Fix: Ensure all navigation links work
  • Add breadcrumbs or footer navigation
  • Test on mobile devices

"Policy violation"

"Website not accessible"

  • Fix: Ensure site is live 24/7 (not on localhost)
  • Check DNS settings
  • Test from different devices/locations

"Misleading content"

  • Fix: Remove any clickbait, false claims, or deceptive elements
  • Ensure transparency about how payouts work

Reapplication:

  • Fix all issues mentioned in rejection email
  • Wait minimum 7 days before reapplying
  • Do NOT reapply immediately (will be auto-rejected)

Post-Approval: Week 1 Actions

Day 1-2: First Impressions

Expected Metrics:

  • Impressions: Should start within 24 hours
  • Fill rate: 40-50% initially
  • CPM: $1-2 (will improve)
  • RPM: $3-5 baseline

Actions:

  • Monitor Console for errors
  • Check that all 23 ad containers load
  • Verify consent banner works properly
  • Test on mobile and desktop

Day 3-7: Optimization Phase

Watch AdSense Dashboard:

  • Go to ReportsAd units
  • Identify high-performing units (high CPM, high CTR)
  • Identify low-performing units

Optimize:

  • Disable any units with <30% fill rate
  • Test different ad sizes for low performers
  • Ensure viewability >50% (use browser DevTools)

Expected Improvement:

  • Fill rate: 50% → 70%
  • CPM: $1-2 → $2-3
  • RPM: $3-5 → $6-8

Revenue Timeline (Conservative Estimates)

Week 1-2: Initial Revenue Unlock

  • RPM: $3-6 (learning phase)
  • At 100 DAU: $0.30-0.60/day = $9-18/month
  • At 1,000 DAU: $3-6/day = $90-180/month

Week 3-4: Baseline Achievement

  • RPM: $6-11 (optimized)
  • At 100 DAU: $0.60-1.10/day = $18-33/month
  • At 1,000 DAU: $6-11/day = $180-330/month

Week 8-12: Header Bidding Prep

  • RPM: $11-16 (mature account)
  • At 1,000 DAU: $11-16/day = $330-480/month

Month 4+: Header Bidding Live

  • RPM: $20-25 (with Prebid.js)
  • At 1,000 DAU: $20-25/day = $600-750/month
  • At 2,000 DAU: $40-50/day = $1,200-1,500/month

Troubleshooting

"Ads not showing"

Causes:

  1. Consent not granted → Check consent banner works
  2. Ad blocker active → Test in incognito without extensions
  3. Fill rate low → Normal for first 48 hours
  4. Geo-restricted → AdSense may not serve in all countries
  5. Publisher ID wrong → Verify line 18 in ads-config.js

Debug:

Open DevTools Console:
- Look for: [AdManager] Loading AdSense
- Look for: [AdManager] Consent granted
- Check Network tab for adsbygoogle.js (should load)
- Check for errors mentioning "adsbygoogle"

"Low fill rate"

Normal Fill Rates:

  • Days 1-7: 40-60%
  • Days 8-14: 60-75%
  • Days 15-30: 75-85%
  • Month 2+: 85-90%

Improvement Actions:

  • Enable "Auto ads" in AdSense dashboard (optional)
  • Test different ad sizes
  • Improve viewability (50%+ visible for 1+ second)
  • Focus on Tier-1 traffic (US, CA, UK, AU)

"Payment threshold not reached"

AdSense Payment Threshold: $100

  • You must earn $100 before first payout
  • Set up payment method at $10 earned
  • Payouts occur monthly (21st-26th)

Time to $100:

  • At 100 DAU, baseline: ~6-12 months
  • At 1,000 DAU, baseline: ~1 month
  • At 1,000 DAU, optimized: ~2 weeks

Support Resources

AdSense Help Center: https://support.google.com/adsense

Policy Center: https://support.google.com/adsense/answer/48182

Community Forum: https://support.google.com/adsense/community

Contact AdSense Support:

  1. Log in to https://adsense.google.com
  2. Click Help (?) icon in top right
  3. Choose "Contact us"
  4. Select your issue category
  5. Options: Email, Chat, or Phone (depends on account status)

Next Steps After AdSense Approval

Once AdSense is live and generating revenue:

  1. Week 2-4: Baseline Optimization

    • Implement viewability tracking (PROJECT_REVIEW_EXECUTION_PLAN.md)
    • Enable navigation-based refresh
    • Monitor fill rates daily
  2. Week 5-8: Traffic Quality

    • Focus on Tier-1 geo traffic (US/CA/UK)
    • A/B test ad placements
    • Optimize for session depth (pages/session)
  3. Week 9-12: Header Bidding Prep

    • Reach 100+ DAU minimum
    • Build custom Prebid.js bundle
    • Apply for SSP accounts (Index Exchange, OpenX, Sovrn, PubMatic)
  4. Month 4+: Scale to $20+ RPM

    • Enable Prebid.js on 25% traffic (test)
    • Scale to 100% traffic
    • Implement advanced strategies from plan

Congratulations!

Once approved, you've unlocked the foundation for $6-20+ RPM revenue. The architecture is production-ready, ads are policy-compliant, and the path to $20 RPM is validated.

Your project is 90% complete. The last 10% is AdSense credentials.

Apply today at: https://www.google.com/adsense/start/