Semantic Web Enthusiast, Knowledge Graph Geek & Structured Data Wrangler. Schema Markup, SEO & data is my day job and herding kids is my love! DM is open to all

Chicago, Il
Joined August 2007
I waited for today to announce the launch of my Schema Markup consulting website: daveojeda.com/ It is the anniversary of when I started in SEO. Felt like the perfect day to do it. Working on some content & resources for the near future. RTs welcome!
9
28
13
97
Dave Ojeda retweeted
LaunchClub was doing $80k/month before we ever spent a dollar on paid ads. Every client came from these sources: 1. Reddit threads 2. DMs 3. Referrals 4. Google Here's how each one works.
6
10
21
1,682
Speaking at Elevate Festival 2026 When? Thursday Sept 24, 10:45 to 11:35am Toronto, 🇨🇦 Meridian Hall! What? "Crash Course: What AI is Saying About Your Business" 🎉
2
8
475
Dave Ojeda retweeted
The Beta is finally here: OppAlerts might be the first AI Search Optimization tool that helps your team with the real work, and not just audits and rank tracking. Here's what that means: Everything is built on campaigns. You describe the business, the buyer personas, your brands, your competitors, and semantic categories for your content. Thousands of LLM prompts and search queries then run behind the scenes and build a map of your business and your industry. The beta lets you set up 30 of these campaigns. This lets OppAlerts show you who the models actually name in your market, and how many of them agree, top keywords, etc. Use it to get your team up to speed on a client's market, to see where you stand against every competitor, and to find the sites the models trust that you had not considered. -- The News Index added over 6 million documents in August: news, blogs, and podcasts. It monitors all of it for your brand mentions, your link gaps, your competitor mentions, and for content semantically-relevant insights into your industry. -- Link prospecting runs continually, finding new opportunities: brand link gaps, unlinked mentions, competitor links and mentions, etc. Six reports, updated every day. Just open the dashboard and start your outreach. Over a hundred opportunity types are watched continually: guest posts, resource pages, award submissions, event sponsorships, podcast guest slots, op-eds. Awards, sponsorships, and events all put your brand into the text the models learn from. These kinds of links and mentions are the new standard for AI search visibility. -- The Content Optimizer then scores your content against more than 25,000 taxonomy categories, so you know whether it is semantically aligned with your market. This is what optimizing content for AI search looks like for a writer. -- When you have found a site worth contacting, Site Info returns its social accounts, email addresses, phone numbers, and contact pages, from a custom database of almost 40 million sites. -- And yes, rank tracking is in there: AI prompts in ChatGPT, Gemini, and Google AI Mode, keywords in Google, Google's AI Overview, and Bing, on the schedule you choose. Get 10k prompt/keyword searches monitored per week. -- The biggest difference between AI search optimization and SEO is that the whole marketing team gets pulled in. The account manager, the copywriters, the link builders, the PR team, and the SEO all on the same page. I am taking on only five beta customers in September 2026 at a discount of more than 50% off, service through December 31st, 2027. After that, you'll get a lifetime 50% discount. Additionally, we're going to do at least six weekly calls with me and your team: I help your team better understand AI search optimization, workflows, etc, and what you tell me is missing influences new features being quickly added to OppAlerts. Reach out to me here, or see more at oppalerts.com to schedule a demo.
1
3
3
497
Google is leaking user AI Mode and AI Overview fragments and prompts into Google Search Console. SEOs have been trying to find ways to extract these using different techniques, such as regex, pattern matching, and AI. They are all very effective methods. However, it is not straightforward and easy to do because you see a mix of query types in different languages, patterns, and many edge cases. There is only one real way to solve this problem. By building a custom machine learning model and training it on thousands of queries. I did this and built a free tool around it so anyone can use it. - Supports 100,000 queries per run. (Free) - Upload your GSC generative AI report and get your pages mapped against these fragments and prompts. - Export the data and start analysing the output, segment, and build your actions based on this. - If you have more than 100k queries, contact me directly for a batch run. (Use the form) Find the article and tool link below. 👇 The guide, with all 4 methods credited: suganthan.com/blog/how-to-tr… The classifier tool: suganthan.com/free-seo-tools… The tool is still in beta so keep that in mind when using. Thank you. P.S. Please play nice and don't hammer the server. I'm running this for free and it costs me $ to process everything, so I'd appreciate it if you take it a bit easy. Thanks in advance.
8
36
3
152
16,898
Dave Ojeda retweeted
Man, I'm so excited to share this. If you're a marketer and can't keep track of everything that's happening across your industry, that's a lot easier now. Us marketers finally have one place that updates every 15 minutes with all of the top news, posts, and episodes across: - AI Search Visibility - SEO - Social Media & Influencer Marketing - Content Marketing - Paid Search & Shopping Advertising - Link Building - PR & Reputation Management - Email & Lifecycle Marketing - Local SEO & Marketing This aggregates from over 100k news sources, and over 4 million feeds and podcasts every day. The average for the past week is over 200k new articles added to the search index each day. News is updated every 15 minutes. Feeds/podcasts are updated up to every 3 hours, depending on how frequently they release new content. Articles are scraped, then a whole lot of behind-the-scenes magic is done to to find the top content for each of those marketing disciplines and re-rank them every 15 minutes. I've been keeping this open on a separate monitor for the last few days and have actually forgotten to check Hacker News...it's working that well to keep me informed. You can view the top stories from the last 24 hours, 3 days, and 7 days. Seriously...I can't tell you for how long I've wanted this. And the best part of it? If you're looking for large scale monitoring like this for your AI Search Optimization efforts/clients, I've got something 100x better for you next week. Check it out and be sure to share and spread it around. news.oppalerts.com/
2
2
1
8
542
Dave Ojeda retweeted
Built some cool sh*t the last seven days (on code foundations I’ve spent years on) for both AI search and monitoring/opportunity finding. Looking forward to showing you next week.
1
1
3
140
Dave Ojeda retweeted
I do NOT expect ChatGPT to leave this open. It disclosed far more about its internal search process and ranking than I ever expected. These close routinely, without an announcement. I am publishing this a week early, unfinished, so you can use it ASAP. I would rather people had a couple weeks with it than a tidier document later. I found it by accident. Yesterday, I asked ChatGPT about fanout queries. It mentioned that some "result cards" had been screened out before their URLs were kept. I had never heard the term, so I asked. Eleven turns later I had the request format it sends its search tools, the text that comes back, a catalogue of 16 result types, the criteria it uses to pick which pages to open, and the pipeline it runs for commercial recommendations. -- "Result Cards" and the Internal Search Process A "result card" is one internal search result as the model receives it from an internal search tool. A title, a URL, a publisher, an extract capped by a marker like [wordlim: 200], a reference ID, etc. This is what the model knows about your page before it decides whether to look closer. The model sees that a result came back third, then judges the source on provenance, methodology and freshness, because that is what it has. Your structured markup gets consumed upstream. The search provider uses it to build the title, the date and the extract, and the finished card is what arrives, so schema work still does its job and you still cannot audit it from where the model sits. Then I stopped asking it to describe the process, logging the calls and thinking along the way. It ran 20 and showed me (almost) everything. Requests go out as JSON. Responses come back as plain text in custom formats depending on the internal tool. But it's not perfect. One finance result printed -17.66000 (-0.03272%) when the actual change was -3.272%, so something put a percent sign on a decimal fraction. Structured values get flattened into prose before the model reads them, and precision goes missing on the way. There's a whole lot more here, but you can read the blog post on OppAlerts, which walks through it in more detail. Or head straight to the new guide I'm working on. That link is in the first comment below. In the guide, I include 5 example commercial prompts, with the full, verbatim responses where ChatGPT details every step of its internal tool use and reasoning. -- How To Do Your Own Reflection Prompts The last thing in the guide is what I'm calling a "Reflection Prompt". Reflection is a programming term for the ability of a running program to inspect itself and report what it contains. Paste this one as the first message in a new chat, put your own question at the bottom, and it walks the same process for your category. Run it while it still answers. Every ChatGPT response is published verbatim, with code blocks showing if it came from a real call or not. What is a Result Card? oppalerts.com/How-AI-Search-… Template for writing your own Reflection Prompt: oppalerts.com/How-AI-Search-…
3
10
31
3,437
Dave Ojeda retweeted
I removed paywall for the AI Search Visibility & Ranking Factors Reports. That's 651,114 charts you can access, across 1,100 market segments. Go nuts with it. It's only been live for an hour and the bots are way ahead of you. Share/repost to get the word out. ALSO, if you want this kind of large scale analysis for your business/agency, message me to discuss your project. There's not much I won't be able to do to help, especially when it comes to large-scale data collection and analysis for AI Search/SEO. Other stats you might be interested in for this data: * 100 Industries * 1,100 Buyer Personas/Market Segments * 403k LLM Prompts * 150k+ Organic Searches * 282B+ Links Analyzed * 15B+ Web Pages Crawled * 3B+ Reddit Submissions * 26B+ Reddit Comments * 25M+ Wikipedia Articles * 120M+ Wikidata Entities * 3.6M+ Organic Pages Analyzed If you find this useful, be sure to repost it for others. oppalerts.com/AI-Search-Visi…
5
6
1
13
924
Can confirm that this book is amazing! Been loving your tweets and knew it was time to take the dive and buy it.
Just hit 11k followers, so figured it’s high time I introduce myself again🕵️ I’m Mercure. That’s not my real name. I’m a Copywriter. I spent 5 years working in-house at one of the largest direct response companies in Europe, before moving on to focus on my own freelancing career. My account is anonymous and will likely stay that way. Because who I actually am doesn't really matter. What matters is the Big idea behind all of this. See, I share what I know about Copywriting, but probably not in a way you’ve seen before. Most people associate Copywriting will loud, catchy, headlines. And while that's a popular expression of Copy, I’m more interested in what’s underneath. The psychology, the philosophy, the linguistics. See, I have written a lot of Copy in regulated markets. Markets where you can't just show up shouting big claims. To still write winners, I had to find new ways of writing claim-less Copy. That's where I found storytelling, world building, and how to install ideas in your readers without ever saying them. I call this Quiet Persuasion. And I've written a book about it, which has already been qualified as a marketing classic by its readers. Now the Quiet approach isn’t for everyone. It usually takes more work. It requires more research, to know your audience better than they know themselves. If you can't outclaim your competition, you've got to out-think them. You have to be patient when the internet rewards immediate impact. But here’s what it gives you. You learn to see what most people overlook. You understand human psychology at a level that influences your whole life. It’s a master key that opens doors you didn’t know existed. And if you're curious about what Quiet Copy looks like... ...I built my entire funnel as an immersive detective investigation, where the goal is to find ME. I disappeared, and I've left behind me scattered pages of the manuscript of Quiet Persuasion, that might lead you to me. If you’re curious, start here: mercurecopy.com/case-file-25… See you around. Merc
1
4
382
Dave Ojeda retweeted
I just released some New Claude + Fanout + Brave Search research: 1,100 Claude Sonnet 5 responses, 2,290 searches, and full downloads of all 34,491 result pages. First, the new AI Search Visibility & Ranking Factors Report is coming on Monday, in 6 days. It's not only 10x more data (2.5 petabytes of 15 billion web pages, and the entire history of Reddit analyzed, etc), but also 10x more analysis and actionable research for all parts of AI Search Visibility campaigns. Follow and stay tuned for that. ---- 95.8% of the results Claude's search tool delivered appear in Brave's web top 20 for the identical query, with byte-identical titles 99.3% of the time. Claude's web search is Brave. What happens after Brave answers: 1. Claude's queries follow one template. 68.7% start with "best" or "top", 21% end with a year. Plain keywords, about 9 words, no operators. 2. Only Brave's organic web results matter. The FAQ, discussion, and video sections contributed 5 exclusive URLs out of 21,203 delivered. Videos: zero. 3. A filter inside the search tool keeps about 9 of Brave's 20, tracking Brave's ranking (89% survive at rank 1, 46% at rank 10, 4% at rank 20). Pages older than 24 months lose 10-12 points at equal rank. 4. Claude reads fetched page content (~4 KB per result), not snippets. 55.7% of the text spans it cites appear nowhere in Brave's own text. 5. Claude never follows links. All 2,290 tool calls in the corpus are searches. 54% of the brands it recommends never appear anywhere in the Brave data. 6. Two signals predict citation. Pages returned by 2+ of the response's searches get cited 80.5% vs 48.9%. Pages on domains Claude ends up recommending: 73.9% vs 42.3%. 7. Most recommendations rest on third-party coverage. 59.8% of citations are listicles, reviews, and comparison pages. Only 37.4% of recommended brands had even one of their own pages enter the pipeline. 8. The downloads close the loop. 93% of everything Claude recommends is linked or named in the delivered pages' text. Named beats linked, 84% vs 42%. Pure model memory: 1.5% of recommendations. ---- So...If you want Claude to cite you: - Treat Brave as a first-class search engine. Its top 10 for "best/top + category + year" queries is the only gate that matters. - Keep pages dated and current. The freshness penalty is real and measurable. - Rank across the whole query family, not one query. Corroboration is worth 31 points. - Get named in the roundups that already rank. Body text carries you; links are never followed. List items 1-10 convert at 3x the rate of 11+. Full study and methodology: oppalerts.com/how-claude-tur…
1
2
4
209
Dave Ojeda retweeted
I just saw that someone went at @dejanseo for using the term "Ranking Factors" a couple weeks ago. With my LLM Ranking Factors analysis, several others also took issue with that phrase. Man...you can disagree with me all you want. But going after someone like him, who is bringing legitimate engineering respect to an industry that's seen by many to be on par with that of the stereotypical used car salesman, is just stupid and disrespectful. There are a number of very valid reasons to call them "Ranking Factors." But it seems like there's a small slice of people that scores high on disagreeableness, intersecting with the Dunning-Kruger effect, and thinks that because they can find one reason to invalidate the term, no one should ever use the term again and they're going to be the ones to annouce that to the world. These are the same folks who will also say that they do "AI SEO" when we have nothing close to "artificial intelligence." Or SEO, AEO, or GEO, when there are no "engines" involved...and when "engine" was a term adopted from mechanical engineering and brought to software of a certain complexity. This is how language works. We choose, and stick with, the terms that best represent what's happening and how _other_people_ will understand the concept. We don't speak for ourselves; we speak to other people's listening. Do ranking factors/rankings exist in the same way as in a search engine? No. The concept of a URL doesn't exist in an LLM, so there's no way it can "rank" in the same way. However... "Ranking Factors" in LLMs are what's known as an "emergent property." Emergent properties are patterns of side effects arising from systems of sufficient complexity. Do you ask your LLM to check your spelling and grammar? It has no specific understanding of language. But its ability to correct spelling and grammar, and also to translate from one language to another, is an emergent property of the complexity of the transformer architecture. Similarly, domains and URLs can consistently emerge in specific orders in certain prompt responses. This demonstrates that a "ranking" is an emergent property of an LLM. And when you run that prompt, and similar ones, enough times, a _ranked_ list of results emerges from that dataset. I'm not even going to get into the re-ranking conversation here, how other search results come into play, and how the LLM's response actually *is* a ranking factor when agents get involved in the prompt response chain. So the ranking factor of the LLM, by proxy, becomes a final ranking factor. So, please, stop saying "ranking factors" don't exist with LLMs. It may sound to some people like you know what you're talking about. But once you start saying that to people who actually understand these things at a deeper level, we're just going to put that conversation into a box with other conversations to ignore, or we're going to take it as a clear demonstration of your limited understanding of LLMs and how people use them.
4
1
2
22
4,734
What so many of us have lost recently but what can be reclaimed again. What the bulk of my parenting is these days.
Understand. Don't memorize. Learn principles, not formulas.
2
38
Dave Ojeda retweeted
I’ve been getting great feedback from my agency friends on the AI training I put together.. So HAPPY SATURDAY IM GIVING AWAY 5 FOR FREE Like and comment “AI” and I’ll have my agent pick 5 winners at the end of the day This is it: Assassinsonly.com/ai-trainin…
53
4
1
39
39,414
Dave Ojeda retweeted
If you want to process data at a large scale (e.g., billions of "things"), here's the single best piece of advice I have: For every order-of-magnitude increase (10x) in the amount of data you process, expect at least one unexpected part of your system to fail. For example... Going from 100 to 1,000 URLs downloaded, you might figure out that you can't download serially anymore and need to explore various forms of parallelism. Going from 1,000 to 10,000 URLs, you might then find out that your parser is having a hard time with certain web pages...time to deal with that. From 10,000 to 100,000, you're now hitting the limits of your parser's performance. It's time to evaluate the best ones to figure out which is the most performant and meets your needs. From 100,000 to 1,000,000, you're now dealing with being significantly blocked by firewalls and need to start sorting that out. From 1,000,000 to 10,000,000, you're now hitting memory limitations and need to consider the trade-offs between the complexity of horizontally scaling and the eventual limits of vertically scaling your hardware. From 10,000,000 to 100,000,000, you're now finding that your database is starting to buckle under the load...you need to seriously consider refactoring your database design. Or do you need faster hardware? Or something else? From 100,000,000 to 1,000,000,000, the code you've been running simply can't keep up. It might actually be time to write your own downloader and parser and develop a completely new way of approaching your database...in a language very few would recommend using. Be prepared to lose no less than 3–6 months solving this kind of problem. If you want to do it right, plan for 12. From 1,000,000,000 to 10,000,000,000, you're now in an area where all common knowledge fails. You can't use the same database principles, hardware principles, or best practices to do the job. If you've worked through the problem each step of the way to get this far, you'll figure it out. But you can't expect much help here. From 10,000,000,000 to 100,000,000,000 URLs to download and process, you're now in a problem space that very few people have encountered. And the ones who have operated in that problem space had different requirements for solving the problem than you do. This is where you trust yourself enough to take action, yet remain cautious enough to back out of bad decisions in order to recalibrate. Failing to do so will paint you into a corner that you must expect your competition to take advantage of. --- I don't know where the line is for your industry or the problem space you're working in, but there's a threshold of complexity somewhere in there where friends, colleagues, and LLMs are just going to have a difficult time inventing the same future opportunities that are so obvious to you. And if you consistently execute very well, that's where you'll find job security and industry leadership extending much further into the future than whatever it is that AI/LLMs will do to the market.
1
3
3
425
Dave Ojeda retweeted
After answering a lot of questions over and over again for new hires / junior team members for my GenAI video agency, I got smart and just built a training course. I mentioned to another agency friend and he asked for it.. and I realized that this is probably a pretty common need, so... Here it is: assassinsonly.com/ai-trainin…
2
10
1,055
Google has published official WebMCP documentation on developer.chrome.com and confirmed an origin trial in Chrome 149. This is Google getting serious about shipping it. You can either live in denial or start learning this stuff quickly. The choice is of course yours. Here is my guide: suganthan.com/blog/webmcp-im…
The WebMCP API will enter origin trial starting in Chrome 149 → goo.gle/4u57Wlf It's a proposed web standard that lets you expose structured tools, like JS functions and HTML forms, to browser-based agents, enabling them to know exactly how and where to interact with your site. #GoogleIO
4
22
1
189
56,405
AI news of the year!
Personal update: I've joined Anthropic. I think the next few years at the frontier of LLMs will be especially formative. I am very excited to join the team here and get back to R&D. I remain deeply passionate about education and plan to resume my work on it in time.
40
Dave Ojeda retweeted
There's been a lot of talk about commodity content since that latest Google presentation. No, they're not analyzing your prose when they talk about content quality. It's all statistics and NLP. So, I built this prototype to explain it. It's based on research papers I've read. seodataviz.com/commodity/
2
4
32
3,719