DOMAIN:MARKETING — CONTENT_MARKETING¶
OWNER: tjarda
ALSO_USED_BY: felice (visual assets), joshua (thought leadership input), annegreet (wiki integration)
UPDATED: 2026-03-24
SCOPE: blog strategy for growing-europe.com, SEO, content distribution, repurposing
CORE_PRINCIPLE¶
Content marketing is the long game. Every article published today compounds over time.
A well-written blog post continues to drive traffic for years. A social media post dies in 48 hours.
PHILOSOPHY: "Marketing is no longer about the stuff you make, but the stories you tell." (Seth Godin)
FRAMEWORK: create once, distribute many times, measure what works, do more of that
RULE: every article must serve at least ONE of: attract visitors, build trust, convert evaluators
RULE: quality over quantity. One excellent article > five mediocre ones.
RULE: SEO is not a trick — it is writing the content people are actually searching for
BLOG_STRATEGY¶
GROWING-EUROPE.COM_BLOG¶
PURPOSE: establish GE as a thought leader in agentic software development, attract organic search traffic, provide content for social media distribution, support PR with credibility
FREQUENCY: 2-4 articles per month
WORD_COUNT: 1500-2500 words (long enough to be thorough, short enough to hold attention)
AUDIENCE: SME business owners (primary), tech decision-makers (secondary), AI practitioners (tertiary)
CONTENT_PILLARS¶
Each article should fall into one of these five pillars:
PILLAR_1: AGENTIC_DEVELOPMENT (thought leadership)¶
TARGET_AUDIENCE: tech practitioners, AI engineers, journalists
PURPOSE: establish GE as the authority on multi-agent software development
SEARCH_INTENT: informational ("how do AI agents work", "multi-agent systems")
EXAMPLE_TOPICS:
- "How 59 AI Agents Build Software Together: Inside Our Multi-Agent Architecture"
- "Why We Make Our AI Agents Argue With Each Other (And Why It Produces Better Code)"
- "The Self-Learning Wiki: How Our AI System Remembers What It Learns"
- "From Specification to Deployment: What Happens When No Human Writes Code"
- "Agent Swimming Lanes: Why Specialization Beats General-Purpose AI"
WRITING_APPROACH: technical but accessible. Use analogies (agent = employee role). Include architecture diagrams.
RISK: revealing too much internal architecture. Always get human approval.
PILLAR_2: AI_QUALITY_ASSURANCE (trust building)¶
TARGET_AUDIENCE: skeptical decision-makers, quality-conscious buyers
PURPOSE: address the #1 objection — "but is AI-written code actually good?"
SEARCH_INTENT: informational ("AI code quality", "can AI write good software")
EXAMPLE_TOPICS:
- "The Anti-LLM Pipeline: How We Ensure Quality When AI Writes Every Line"
- "TDD Before Code Exists: How AI Writes Tests Before Writing Software"
- "Mutation Testing on AI-Generated Code: What We Found After 10,000 Mutations"
- "ISO 27001 Compliant AI: Why We Chose the Hardest Path"
- "When Our Security Agent Found a Vulnerability Our Development Agent Missed"
WRITING_APPROACH: data-driven. Include specific metrics, test results, real examples.
KEY_MESSAGE: AI code can be excellent BECAUSE of systematic quality processes, not despite being AI.
PILLAR_3: CLIENT_STORIES (social proof)¶
TARGET_AUDIENCE: potential clients evaluating GE
PURPOSE: show real outcomes for real businesses
SEARCH_INTENT: commercial ("custom software development", "affordable SaaS development")
CASE_STUDY_FORMAT:
## {Client Name} — {One-line Result}
### The Challenge
{What the client needed. Their business context. Why traditional approaches didn't work.}
### The Approach
{What GE built. High-level architecture. Key decisions.}
{Timeline: from scoping to delivery.}
### The Result
{Specific metrics: cost savings, time to market, performance.}
{Client quote (if available).}
### The Takeaway
{One generalizable lesson for readers in similar situations.}
CONSTRAINT: client permission REQUIRED for every case study
CONSTRAINT: Margot coordinates client relationship — Tjarda writes the content
PILLAR_4: SME_ENABLEMENT (market education)¶
TARGET_AUDIENCE: SME business owners who don't know what's possible
PURPOSE: educate the market on what custom software can do for small businesses
SEARCH_INTENT: informational ("custom software for small business", "when to build custom software")
EXAMPLE_TOPICS:
- "When Should a Small Business Invest in Custom Software? A Decision Framework"
- "The Real Cost of Custom Software in 2026: What SMEs Actually Pay"
- "Off-the-Shelf vs Custom: How to Decide What Your Business Needs"
- "Digital Transformation for SMEs: A Practical Guide (Not the Consultant BS Version)"
- "How to Brief a Software Agency: What to Prepare Before Your First Call"
WRITING_APPROACH: accessible, jargon-free, practical. These readers are NOT technical.
PILLAR_5: BEHIND_THE_SCENES (transparency/differentiation)¶
TARGET_AUDIENCE: AI community, tech journalists, curious decision-makers
PURPOSE: differentiate GE by showing how it actually works
SEARCH_INTENT: informational ("how AI software agencies work", "agentic development")
EXAMPLE_TOPICS:
- "A Day in the Life of an AI Software Agency"
- "How Our 59 AI Agents Resolve Disagreements (It Involves Voting)"
- "Building a Self-Learning System: Lessons From 6 Months of Operation"
- "The Constitution That Governs Our AI Agents"
- "What We Got Wrong: Honest Failures From Building an AI Agency"
WRITING_APPROACH: authentic, honest, specific. Admitting mistakes builds more trust than perfection.
SEO_FUNDAMENTALS¶
KEYWORD_RESEARCH¶
PROCESS:
1. IDENTIFY seed keywords from each content pillar
2. EXPAND using search suggest, related searches, "People Also Ask"
3. EVALUATE: search volume, keyword difficulty, search intent
4. PRIORITIZE: high relevance + medium difficulty + clear intent
TOOLS (available without paid subscription):
- Google Search Console (existing site data)
- Google Trends (relative search interest)
- Google Autocomplete (real user queries)
- "People Also Ask" boxes (question-based keywords)
- AnswerThePublic (question mapping)
- Ahrefs free tools (limited keyword data)
KEYWORD_CATEGORIES:
HIGH_PRIORITY (directly relevant to GE):
- "AI software development" / "AI software development agency"
- "custom software for small business"
- "agentic development" / "multi-agent development"
- "AI code quality"
- "affordable custom software"
MEDIUM_PRIORITY (industry topics GE can rank for):
- "TDD for AI-generated code"
- "multi-agent systems architecture"
- "ISO 27001 AI compliance"
- "European AI companies"
- "SME digital transformation"
LONG_TAIL (lower volume but easier to rank):
- "how do AI agents write software together"
- "can AI pass ISO 27001 audit"
- "multi-agent software testing"
- "AI software agency vs human agency"
- "self-learning software development system"
ON-PAGE_SEO¶
FOR EVERY BLOG POST:
TITLE_TAG:
- Include primary keyword
- Under 60 characters
- Compelling (would you click this in search results?)
- EXAMPLE: "How 59 AI Agents Build Software Together | Growing Europe"
META_DESCRIPTION:
- 150-160 characters
- Include primary keyword naturally
- Clear value proposition
- EXAMPLE: "Inside Growing Europe's multi-agent system: how 59 specialized AI agents collaborate to build enterprise-grade software at 10% of traditional agency cost."
HEADINGS:
- H1: one per page, includes primary keyword
- H2: section headings, include secondary keywords
- H3: subsection headings
- Hierarchy must be logical (never skip levels)
URL_STRUCTURE:
- growing-europe.com/blog/{slug}
- Slug: short, readable, includes keyword
- GOOD: /blog/how-ai-agents-build-software
- BAD: /blog/2026/03/24/post-title-here-with-lots-of-words
CONTENT_OPTIMIZATION:
- Primary keyword in first 100 words
- Related keywords distributed naturally
- Internal links to related blog posts (2-3 per article)
- External links to authoritative sources (1-2 per article)
- Images with descriptive alt text
- Short paragraphs (2-4 sentences for web reading)
STRUCTURED_DATA¶
ADD JSON-LD to every blog post:
{
"@context": "https://schema.org",
"@type": "Article",
"headline": "{title}",
"author": {
"@type": "Organization",
"name": "Growing Europe"
},
"datePublished": "{YYYY-MM-DD}",
"dateModified": "{YYYY-MM-DD}",
"description": "{meta description}",
"publisher": {
"@type": "Organization",
"name": "Growing Europe",
"logo": {
"@type": "ImageObject",
"url": "https://growing-europe.com/logo.png"
}
}
}
ALSO_CONSIDER:
- FAQ schema for articles with Q&A sections
- HowTo schema for tutorial/guide articles
- Organization schema on the homepage
- BreadcrumbList schema for navigation
INTERNAL_LINKING¶
STRATEGY:
- Every new article links to 2-3 existing articles
- Update 2-3 existing articles to link to new article
- Use descriptive anchor text (not "click here")
- Create hub pages for each content pillar
- Hub pages link to all articles in that pillar
PILLAR_PAGE_STRUCTURE:
growing-europe.com/ai-software-development/ (hub)
→ /blog/how-ai-agents-build-software
→ /blog/anti-llm-pipeline
→ /blog/agent-swimming-lanes
→ /blog/self-learning-wiki
CONTENT_DISTRIBUTION¶
THE_DISTRIBUTION_RULE¶
RULE: spend as much time distributing content as creating it.
An unpromoted article is an invisible article.
DISTRIBUTION_CHANNELS¶
| Channel | Action | When |
|---|---|---|
| Share with commentary (link in comment) | Same day | |
| X/Twitter | Thread or tweet with key insight | Same day |
| LinkedIn newsletter | Include in weekly/biweekly digest | Next issue |
| Email newsletter | Feature in next newsletter | Next send |
| dev.to | Cross-post (with canonical URL pointing to growing-europe.com) | Day 2-3 |
| Hacker News | Submit if genuinely interesting to HN audience | Day 2-3 |
| Share in relevant subreddits (r/artificial, r/programming) | Day 2-3 | |
| Internal wiki | Reference in Annegreet's knowledge base | Same day |
CANONICAL_URL¶
ALWAYS set canonical URL to growing-europe.com when cross-posting.
This ensures Google credits the original, not the cross-post.
dev.to supports canonical_url in front matter.
CONTENT_REPURPOSING¶
ONE_ARTICLE_BECOMES_MANY¶
A single 2000-word blog post can generate:
- LINKEDIN_POST: key insight from the article, link in comment
- LINKEDIN_CAROUSEL: 5-8 slides summarizing the main points
- X_THREAD: 5-10 tweets covering the key argument
- X_QUOTE_TWEETS: individual insights as standalone tweets
- YOUTUBE_TALKING_POINTS: script outline for a 5-minute explainer
- NEWSLETTER_FEATURE: summary + link in email newsletter
- DEV_TO_CROSS_POST: full article with canonical URL
- PODCAST_OUTLINE: talking points if Dirk-Jan appears on a podcast
- LINKEDIN_POLLS: question derived from article topic
- INFOGRAPHIC: data points visualized (Felice produces)
REPURPOSING_CALENDAR¶
Day 0: Publish blog post on growing-europe.com
Day 0: LinkedIn post + X tweet
Day 1: LinkedIn carousel (Felice designs)
Day 2: X thread (deeper dive)
Day 3: dev.to cross-post
Day 3: Hacker News submission (if appropriate)
Day 7: Newsletter feature
Day 14: YouTube video (if topic warrants)
Day 30: Updated/expanded version if it performed well
EDITORIAL_WORKFLOW¶
FROM_IDEA_TO_PUBLISHED¶
1. IDEATION
- Tjarda maintains a running list of article ideas
- Ideas come from: content calendar, social media trends, client conversations, wiki learnings
- Evaluate each idea against content pillars and SEO potential
2. OUTLINE
- H1, H2, H3 structure
- Key points per section
- Target keyword
- Estimated word count
- Sources/data needed
3. DRAFT
- Write with target audience in mind
- Include data, examples, specifics
- First draft: get ideas down. Don't self-edit yet.
4. TECHNICAL_REVIEW (if needed)
- Route to relevant domain agent for accuracy
- Joshua for innovation/thought leadership angle
- Other agents for domain-specific accuracy
5. EDIT
- Clarity: does every paragraph earn its place?
- Voice: is this confident, factual, not hypey?
- SEO: are keywords included naturally?
- Links: internal + external links present?
6. HUMAN_APPROVAL
- Dirk-Jan reviews and approves
- NO EXCEPTIONS
7. PUBLISH
- Add meta tags, structured data, images
- Set canonical URL
- Publish
8. DISTRIBUTE
- Follow distribution calendar
- Track performance
NEWSLETTER_STRATEGY¶
EMAIL_NEWSLETTER¶
PURPOSE: direct relationship with audience. Email = owned channel (not algorithm-dependent).
FREQUENCY: biweekly or monthly
PLATFORM: choose based on needs (Substack, Buttondown, or self-hosted)
CONTENT:
- 1 featured article from the blog
- 2-3 short insights (original for newsletter)
- 1 industry link with commentary
- 1 GE update (new project, milestone, etc.)
GROWTH_STRATEGY:
- Blog CTA: "Subscribe for weekly AI development insights"
- LinkedIn: promote newsletter in posts
- Lead magnet: downloadable guide (e.g., "The SME Guide to Custom Software")
MEASURING_CONTENT_PERFORMANCE¶
| Metric | What It Tells You | Target |
|---|---|---|
| Organic traffic | SEO is working | Month-over-month growth |
| Time on page | Content is engaging | >3 minutes for long-form |
| Bounce rate | Landing page relevance | <60% for blog posts |
| Pages per session | Internal linking works | >1.5 |
| Backlinks | Others reference your content | Track growth |
| Keyword rankings | SEO progress | Top 10 for target keywords |
| Social shares | Content resonates | Track per article |
| Newsletter signups | Content drives conversion | Track per article |
| Inbound leads | Content attribution | Track source |
CONTENT_SCORING¶
After 30 days, score each article:
| Score | Criteria |
|---|---|
| A | >1000 organic visits/month, strong engagement, generates leads |
| B | 200-1000 visits/month, decent engagement |
| C | <200 visits/month, low engagement |
| D | Minimal traffic, no engagement — consider updating or removing |
A/B articles: repurpose aggressively, expand, create follow-up pieces
C articles: update with better keywords, promote again
D articles: analyze why they failed, apply lessons to future content
ANTI_PATTERNS¶
ANTI_PATTERN: writing for search engines instead of humans
FIX: write for humans first. Optimize for search second. If it reads badly, Google won't rank it either.
ANTI_PATTERN: publishing without distribution
FIX: every article gets the full distribution treatment. Creating content without promoting it is wasting effort.
ANTI_PATTERN: no internal linking
FIX: every new article links to 2-3 existing articles AND 2-3 existing articles link back.
ANTI_PATTERN: ignoring SEO fundamentals
FIX: title tag, meta description, heading hierarchy, structured data. Every time.
ANTI_PATTERN: writing generic AI content ("5 Ways AI Will Change Your Business")
FIX: write from GE's unique perspective. What have WE learned? What do WE know? Specifics, not generalities.
ANTI_PATTERN: no canonical URL on cross-posts
FIX: ALWAYS set canonical to growing-europe.com. Otherwise Google may index the cross-post instead.
ANTI_PATTERN: inconsistent publishing (4 articles one month, zero the next)
FIX: content calendar. 2-4 articles/month, every month. Buffer articles for busy periods.
CROSS_REFERENCES¶
INDEX: domains/marketing/index.md — domain overview
SOCIAL: domains/marketing/social-media-strategy.md — content distribution via social
PR: domains/marketing/pr-earned-media.md — PR amplifies content reach
BRAND: domains/marketing/brand-management.md — brand voice for content
THOUGHT_LEADERS: domains/marketing/thought-leaders.md — content marketing thought leaders
Content marketing strategy loaded. See editorial workflow for article production process.