XY Planning Network Scraper — Fee-Only CFP® Advisor Leads
Pricing
$4.00 / 1,000 per advisor returneds
XY Planning Network Scraper — Fee-Only CFP® Advisor Leads
Export XYPN's Find an Advisor directory: fee-only CFP® advisor name, firm, city/state, client niches, full fee schedule (flat/hourly/monthly/quarterly/AUM), states served, website, LinkedIn and SEC IAPD links with CRD numbers. Filter by state, niche or name. No login. Export JSON/CSV.
Pricing
$4.00 / 1,000 per advisor returneds
Rating
0.0
(0)
Developer
Scrapers Delight
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
3 hours ago
Last modified
Categories
Share
Export the XY Planning Network public Find an Advisor directory as a clean lead list. One row = one fee-only advisor, carrying name, firmName, city, state, postalCode, designations, statesServed, nichePrimary/Secondary/Tertiary, nicheGeneration, feeFlat, feeHourly, feeMonthly, feeQuarterly, feeAum, websiteUrl, linkedinUrl, bookingUrl and the SEC IAPD links with the CRD numbers extracted for both the advisor and the firm.
1,233 advisors live on 2026-08-15 — and every single one holds the CFP® marks (1,233 of 1,233, measured). XYPN is the network for young, fee-for-service financial planners: no commissions, no wirehouses, heavy on virtual practices and startup RIAs. It is the highest-signal small list in the advisor world — the whole directory, enumerable to the last row, costs $4.93.
$0.004 per advisor — $4 per 1,000. No login. No API key. No CAPTCHA solving.
{ "maxItems": 100 }
Click Try for free and hit Start — that is the input this Actor ships with: 100 advisors for $0.40.
Quick start
- Click Try for free (an Apify account is free; no card for the free tier).
- Leave every field alone, or pick states and client niches from the drop-downs — each option shows its live advisor count, so you can size the run before you spend.
- Press Start, open the Dataset tab when the run turns green, export CSV / Excel / JSON.
Every filter is a drop-down read from XYPN's own live directory, so there is nothing to spell correctly.
From the API
// npm i apify-clientimport { ApifyClient } from 'apify-client';const client = new ApifyClient({ token: '<YOUR_APIFY_TOKEN>' });const run = await client.actor('scrapersdelight/xy-planning-advisor-scraper').call({states: ['CA'],niches: ['Business Owners'],maxItems: 200,});const { items } = await client.dataset(run.defaultDatasetId).listItems();console.log(items[0].name, items[0].firmName, items[0].feeAum, items[0].secIndividualCrd);
# pip install apify-clientfrom apify_client import ApifyClientclient = ApifyClient("<YOUR_APIFY_TOKEN>")run = client.actor("scrapersdelight/xy-planning-advisor-scraper").call(run_input={"niches": ["Equity Recipients (RS/RSU SOP ESPP)"],"requireWebsite": True,"maxItems": 0,})for row in client.dataset(run["defaultDatasetId"]).iterate_items():print(row["name"], row["firmName"], row["websiteUrl"])
The wedge: the published fee schedule, and a 100% fee-only universe
Every advisor directory sells names and cities. Two things make this row worth more:
-
The fee schedule, as the advisor published it. 91.6% of advisors publish at least one structured fee:
feeAumon 67.1% of rows (e.g.".75%"),feeFlaton 48.0% (e.g."$6,000+"),feeHourly38.6%,feeMonthly38.6%,feeQuarterly26.8%, plus afeeModels[]array telling you which models each advisor runs. 303 advisors (24.6%) publish fees with no AUM model at all — the flat-fee / advice-only segment that every AUM-based custodian and every subscription-planning vendor wants to find, and that no other public directory labels. NAPFA doesn't publish fees. CFP Board suppresses compensation entirely. XYPN prints the price list. -
A pre-qualified universe. XYPN membership requires the CFP® marks and a fee-for-service model — so the segmentation work is already done: 100% CFP®, 100% fee-only, skewed young and virtual (448 advisors — 36.3% — list more than one state served). And 77.4% of rows carry the advisor's individual SEC CRD (98.1% carry the firm CRD), extracted into
secIndividualCrd/secFirmCrdwith canonical IAPD links — the join key into BrokerCheck, Form ADV, AUM and disciplinary history without any name matching.
Read this before you buy rows
- There are no email addresses and no phone numbers — no such columns exist. XYPN publishes neither, on 0 of 1,233 rows. The handle you enrich from is
websiteUrl(83.7%) orlinkedinUrl(83.9%). See Honest limits for the exact play. - No years-of-experience or certification-year field. XYPN does not publish tenure. If you need it, join
secIndividualCrd(77.4%) into IAPD/BrokerCheck, or use the CFP Board sibling Actor, which carriescertificationYearon 100% of its rows. - The state filter means "serves that state", not "lives there". XYPN advisors are heavily virtual; the server matches home state OR the advisor's published states-served list. California returns 379 advisors — only 167 are headquartered there. Segment territory on
state(home) orstatesServed[]after export if you need the distinction. - The niche filter is OR, not AND. Picking
CryptocurrencyandAttorneysreturns advisors matching either (5 + 18 = 23, measured live). Multiple niches widen the result. searchover-matches on common words. It is XYPN's own fuzzy search and it walks bios:"Livadary"returns exactly 1 advisor, but"Mana"returns 803 of 1,233. Use it for names; use the drop-downs for segments.
What you get
One row per advisor. All timestamps ISO-8601 UTC.
Identity & firm
| Field | Notes |
|---|---|
slug | XYPN's stable profile id — the dedupe key |
profileUrl | Canonical public profile page |
name / firstName / lastName | As published |
firmName | 100% fill |
designations[] / designationsStr | CFP® on 100%; MBA on 200 rows, EA 148, CFA 132, CPA 110… |
isCfp | true on every row today; kept so a policy change is visible |
headshotUrl | Advisor photo (S3) |
Location & reach
| Field | Notes |
|---|---|
city / state / postalCode / address | Home office, parsed from XYPN's structured schema block |
statesServed[] / statesServedCount | Home state + the advisor's published additional states; 36.3% list more than one |
Practice & fees
| Field | Notes |
|---|---|
nichePrimary / nicheSecondary / nicheTertiary | Client niches from XYPN's 128-value vocabulary |
nicheGeneration | Generation focus (Gen X / Millennials / Boomers / Gen Z) |
niches[] | The four above, deduplicated |
feeModels[] | Which of Flat Rate / Hourly / Monthly / Quarterly / AUM this advisor publishes |
feeFlat / feeHourly / feeMonthly / feeQuarterly / feeAum | The published amounts, verbatim (e.g. "$6,000+", ".75%") |
feeAdditional | Free-text fee notes |
bioShort / bioLong | Both 100% fill |
Web presence
| Field | Notes |
|---|---|
websiteUrl | 83.7% — the enrichment handle |
linkedinUrl | 83.9% |
bookingUrl | 59.9% — a direct scheduling link (Calendly-class) |
blogUrl / podcastUrl / introVideoUrl / facebookUrl / instagramUrl / twitterUrl / youtubeUrl | See fill table |
mentions[] / publisherMentions[] | Press mentions with links (19.0% / 19.6%) |
Regulatory
| Field | Notes |
|---|---|
secIndividualCrd / secIndividualUrl | Advisor's own CRD + canonical IAPD link, 77.4% |
secFirmCrd / secFirmUrl | Firm CRD + IAPD link, 98.1% |
formAdvUrl | The firm's Form ADV / fee brochure where published, 59.9% |
Provenance: sourceUrl, profileUpdatedAt, scrapedAt.
Field fill — measured on the full directory, not a sample
One run of this Actor with no filters through the Apify datacenter proxy on 2026-08-15: all 42 pages, 1,233 rows, 1,233 unique. Sorted by fill; the sparse fields are bolded so they cannot mislead you.
| Field | Fill |
|---|---|
slug, profileUrl, name, firstName, lastName, firmName | 100% |
designations[], isCfp (all true), city, state, postalCode, address | 100% |
statesServed[], bioShort, bioLong, headshotUrl, profileUpdatedAt | 100% |
niches[] | 98.5% |
nichePrimary · secFirmCrd + secFirmUrl | 98.1% |
nicheSecondary | 95.5% |
feeModels[] (≥1 structured fee) | 91.6% |
nicheTertiary | 90.3% |
linkedinUrl | 83.9% |
websiteUrl | 83.7% |
secIndividualCrd + secIndividualUrl | 77.4% |
nicheGeneration | 75.2% |
feeAum | 67.1% |
bookingUrl · formAdvUrl | 59.9% |
facebookUrl | 48.3% |
feeFlat | 48.0% |
blogUrl | 43.1% |
feeHourly · feeMonthly | 38.6% |
feeAdditional | 32.8% |
feeQuarterly | 26.8% |
instagramUrl | 25.5% |
youtubeUrl | 25.1% |
twitterUrl | 23.0% |
publisherMentions[] | 19.6% |
mentions[] | 19.0% |
introVideoUrl | 9.0% |
podcastUrl | 5.6% |
email | 0.0% — no such column exists |
phone | 0.0% — no such column exists |
The headline that could mislead you: this is not a contact-scrape. It is a practice-model and credential product — fee schedules, niches, states served, and a CRD join key — with a website/LinkedIn handle on ~84% of rows to enrich contact from. If you need a direct email today, the NAPFA sibling publishes one on ~65% of its rows.
Sample row
A real row from the full run on 2026-08-15, unedited (bios truncated for display only):
{"slug": "cristina-livadary-11070","profileUrl": "https://connect.xyplanningnetwork.com/find-an-advisor/cristina-livadary-11070","name": "Cristina Livadary","firstName": "Cristina","lastName": "Livadary","firmName": "Mana Financial Life Design, LLC","designations": ["CFP®", "RLP®"],"designationsStr": "CFP®, RLP®","isCfp": true,"city": "South Pasadena","state": "CA","postalCode": "91030","address": "South Pasadena, CA, 91030","statesServed": ["CA"],"statesServedCount": 1,"nichePrimary": "Equity Recipients (RS/RSU SOP ESPP)","nicheSecondary": "Sandwich Generation","nicheTertiary": "Business Executives","nicheGeneration": "Gen X","niches": ["Equity Recipients (RS/RSU SOP ESPP)", "Sandwich Generation", "Business Executives", "Gen X"],"feeModels": ["Flat Rate", "AUM"],"feeFlat": "$6,000+","feeHourly": null,"feeMonthly": null,"feeQuarterly": null,"feeAum": ".75%","feeAdditional": "Financial Life Design consists of an annual planning fee, starting at $6,000 - this is calculated based on the complexity and unique needs of each client.","bioShort": "Life continually throws us curveballs, and we know that these changes and new responsibilities can feel overwhelming. …","bioLong": "Mana FLD offers professional financial advice that empowers you to protect and celebrate your hard earned money. …","websiteUrl": null,"linkedinUrl": "https://www.linkedin.com/company/manafld/","facebookUrl": "https://www.facebook.com/ManaFinancialLifeDesign/","instagramUrl": "https://www.instagram.com/manafld","secIndividualCrd": "5179231","secIndividualUrl": "https://adviserinfo.sec.gov/individual/summary/5179231","secFirmCrd": "298277","secFirmUrl": "https://adviserinfo.sec.gov/firm/summary/298277","headshotUrl": "https://portal-prod-assets.s3.us-west-2.amazonaws.com/cristina-livadary-11070/advisor-profile-headshot?t=2024-08-27T03%3A01%3A23.532205Z","profileUpdatedAt": "2024-08-27T03:01:23.532205Z","sourceUrl": "https://connect.xyplanningnetwork.com/find-an-advisor/cristina-livadary-11070","scrapedAt": "2026-08-15T04:20:38.406Z"}
Fields people misread:
feeAum: ".75%"is the advisor's published AUM rate, verbatim — kept as a string on purpose (source values include ranges and footnote-style text). Parse it yourself if you need a number.stateis the home office;statesServed[]is the advisor's reach. Filtering by state in the input uses the reach.isCfpis derived fromdesignations[]and istrueon every row today because XYPN requires the CFP® marks. It exists so that a membership-policy change shows up as data instead of silently.
How to run it
Recipe 1 — the default: a cheap first look
{ "maxItems": 100 }
100 advisors, 4 requests, $0.40. This is what ships prefilled.
Recipe 2 — the whole directory
{ "maxItems": 0 }
All 1,233 advisors, 42 requests, $4.93. Schedule it monthly from the Schedules tab and diff on slug to track new members.
Recipe 3 — everyone serving one state
{ "states": ["CA"], "maxItems": 0 }
379 advisors serve California (167 headquartered there) = $1.52. The filter runs server-side — you never pay for out-of-scope rows.
Recipe 4 — a client niche
{ "niches": ["Equity Recipients (RS/RSU SOP ESPP)"], "maxItems": 0 }
142 advisors specialise in equity-compensation clients = $0.57. Niches are OR — add more to widen: ["Cryptocurrency", "FIRE (Financial Independence Retire Early)"].
Recipe 5 — the flat-fee segment for an email-finder chain
{ "requireWebsite": true, "maxItems": 0 }
Then filter the export to rows where feeModels lacks "AUM" (303 advisors publish fees with no AUM model), and feed websiteUrl to an email-finder Actor. Rows without a website are dropped before billing.
Recipe 6 — look up one advisor
{ "search": "Livadary", "maxItems": 5 }
Returns exactly the one matching advisor — a $0.004 verification that someone is (still) an XYPN member, with their current fee schedule.
Input
Every field ships with a default, so a zero-edit run works.
| Field | Type | Default | What it does |
|---|---|---|---|
states | multi-select | [] | "Serves-state" filter, applied server-side; 51 options (50 states + DC), each labelled with its live advisor count measured 2026-08-15. Empty = whole directory. Multi-state runs dedupe on slug and never bill an advisor twice. |
niches | multi-select | [] | XYPN's live 128-niche vocabulary in 10 groups, each with its advisor count. OR semantics. Re-validated against the live metadata endpoint at run start — an unknown label throws with the current list printed, before anything is billed. |
search | text | "" | XYPN's fuzzy search. Best for names; broad words over-match (see Read this before you buy). |
requireWebsite | checkbox | false | Drop advisors with no website (16.3%). Dropped rows are not billed. |
maxItems | number | 100 | Hard cost cap. 0 = everything in scope. Duplicates never count against it. |
proxyConfiguration | proxy | Apify datacenter | Measured 100% on sustained load. You should not need to change this. |
Pricing
$0.004 per advisor returned — $4 per 1,000, charged on the advisor-scraped event. No run-start fee, no monthly fee from this Actor.
| Run | Advisors | Cost |
|---|---|---|
| The default first click | 100 | $0.40 |
| Everyone serving California | 379 | $1.52 |
| Equity-compensation specialists | 142 | $0.57 |
| Every advisor serving Texas | 319 | $1.28 |
| The entire directory | 1,233 | $4.93 |
What you are never charged for: duplicates (dropped on slug before delivery), rows removed by requireWebsite, retries, or the niche-vocabulary validation request. Rows are charged as they are pushed (Actor.pushData(items, 'advisor-scraped')) — if you hit a platform spend cap mid-run you get whole rows and a clean stop, never a half-billed dataset.
Store context, checked 2026-08-15: per-advisor directory rows on Apify run $0.001–$0.012, and several rivals add a $0.03–$0.10 charge just to start a run. This Actor has no run fee and sits at the price of its own CFP Board sibling.
Honest limits
1. No email, no phone. Nothing here can produce one. XYPN publishes neither anywhere in its directory payload — measured 0 of 1,233 rows. Any XYPN product advertising emails is joining another source. The play instead: websiteUrl (83.7%) → an email-finder Actor (Decision-Maker Email Finder, Local Business Contact Enricher), or use the NAPFA sibling, which carries a direct email on ~65% of rows.
2. No tenure fields. No years of experience, no certification year, no start date — XYPN simply does not publish them. Join secIndividualCrd into IAPD/BrokerCheck for employment history, or use the CFP Board sibling (certificationYear on 100% of rows).
3. No explicit virtual/in-person flag. The directory's own signal is statesServed[] — the site renders it as "States Served", and 36.3% of advisors list more than one. XYPN's model is virtual-first; treat a multi-state list as the virtual-practice tell. This Actor will not invent a boolean the source does not publish.
4. Fee fields are verbatim strings, 26.8–67.1% each. Advisors publish the models they run, in their own words ("$200-$400", ".75%", "$6,000+"). 91.6% publish at least one; 8.4% publish none. The strings are cleaned of whitespace cruft but deliberately not parsed into numbers — a range flattened to a float is a lie.
5. The SEC links needed repair, and 22.6% of advisors have no individual one. Live source values include a doubled URL (…/individual/https://adviserinfo.sec.gov/individual/summary/5366139) and free-text like …/firm/N/A - In Progress or …/firm/Don't have one yet. This Actor extracts the CRD digits and rebuilds canonical IAPD URLs; garbage becomes null rather than a broken link. Newer advisors genuinely lack an individual CRD entry.
6. One advisor is Canadian. The directory contains exactly one Ontario-based advisor (Mississauga, ON) whose row carries state: "ON". The state drop-down covers the 50 US states + DC; the Canadian row is only returned by unfiltered or search runs.
7. The directory drifts. 1,233 on 2026-08-15. XYPN adds and removes members continuously — treat every count on this page as a measurement with a date, not a constant.
8. Small directory, priced accordingly. This is a 1,233-row universe, not a 72,000-row one. You are buying pre-qualification (100% fee-only CFP®s) and fields nobody else publishes (fee schedules), not bulk.
How it works, and the transport ladder
XYPN's directory is a plain JSON API — no key, no login, no CAPTCHA:
GET https://app.xyplanningnetwork.com/api/v1/find-an-advisor?page=<n>&perPage=30[&q=…][&state=CA][&niches=…]
The shuffle trap this Actor works around (it silently corrupts a naive scraper): the API returns a random permutation per session. Page 1 fetched twice with no cookie shares only 7/30 rows. The permutation is pinned by a session cookie — but the server rotates the cookie value on every response, and only the freshest value keeps the walk consistent. Measured on the full 42-page directory:
| Cookie handling | Result |
|---|---|
| No cookie | 7/30 overlap on a page-1 repeat — heavy silent dupes and misses |
| First cookie value, reused | 794 unique + 439 duplicates (35.6%) |
| Cookie rotated per response (this Actor) | 1,233 unique, 0 duplicates — totalItems exactly |
Each scope therefore walks sequentially, carrying the latest Set-Cookie forward. Two more contract details handled: perPage is server-clamped to 30 (asking for 100 echoes 30 back — honest, but asserted anyway), and items is null, not [], on a zero-match search.
Transport, measured through the Apify proxy rather than assumed (2026-08-15):
| Rung | Result |
|---|---|
| Direct, no proxy (residential home line) | 42/42 full walk — reported, then ignored: no Apify container has a home IP |
| Apify datacenter, rotating IPs (default) | 19/20 sustained (95%) — the one miss was a proxy-side TLS disconnect, retried clean on a fresh IP; the pinning cookie survives IP rotation (0 dupes) |
| Apify datacenter, pinned session | 20/20 (100%), 600/600 unique |
| Apify RESIDENTIAL | 20/20 (100%) — no better, costs more |
| Production proof: the full directory through the datacenter proxy | 42/42 pages, 1,233/1,233 rows, 0 duplicates, one proxy-side abort auto-retried |
robots.txt, fetched 2026-08-15: the API host app.xyplanningnetwork.com/robots.txt returns 404 (no rules published); the directory host connect.xyplanningnetwork.com/robots.txt opens with User-agent: * / Allow: / and disallows only HubSpot preview/preference paths, none of which this Actor touches. Pages are walked sequentially with a courtesy delay.
Uniqueness and deduplication
The dedupe key is slug — XYPN's stable profile id, the same one the profile URL is built from. Dedup happens before anything is pushed, so the dataset and your bill never hold the same advisor twice — including across multi-state runs, where an advisor serving two chosen states appears in both scopes and is billed once.
Measured: full unfiltered walk 2026-08-15 — 1,233 rows, 1,233 unique, 0 duplicates, an exact match to the API's own totalItems. Across separate runs, dedup is per-run: diff on slug after export.
When a run fails
Built to fail loudly rather than finish green on an empty dataset.
- Zero rows throws, with pages fetched, rows dropped by your filters, and the filters themselves — there is no legitimate empty run.
- An unrecognised niche throws before anything is billed, printing XYPN's live 128-value vocabulary (the Console drop-down makes this unreachable; it protects API callers).
- A changed page contract throws (more rows than the clamped page size = a corrupted walk, stopped).
- A mid-walk index shift warns with both numbers (walked vs reported) instead of silently under-delivering.
Who buys this
- Wealthtech vendors — planning, portfolio, tax and CRM software. XYPN advisors are startup RIAs actively assembling a stack;
feeModels[]tells you who runs subscription billing (476 monthly-fee practices) vs AUM. - Custodians and RIA platforms — the fee-only, virtual-first segment is exactly the book Altruist-class custodians compete for;
statesServed[]maps reach,secFirmCrdjoins to Form ADV for AUM. - Advisor recruiters and M&A — 1,233 independent fee-only CFP®s with firm names and IAPD join keys.
- Email-enrichment pipelines —
websiteUrlon 83.7% +bookingUrlon 59.9% of rows; chain into an email-finder for outreach. - Consumer lead-gen marketplaces — the niche taxonomy (128 values: equity comp, FIRE, physicians, veterans…) is a ready-made matching layer.
Sibling Actors — which advisor dataset do you actually want
| Actor | Universe | Record | Size | Email? | The field only it has |
|---|---|---|---|---|---|
| XY Planning Scraper (this one) | XYPN members: young, fee-only, virtual-first | CFP® individual + firm | 1,233 | No | Published fee schedules + niches |
| NAPFA Advisor Scraper | NAPFA, the fee-only association | Individual + firm | ~4,000 | Yes ~65% | Direct email |
| CFP Board Scraper | Everyone holding the CFP® marks, any firm | Certified individual | 72,207 | No | CRD on 97.6% + certification year |
| SEC Investment Adviser Scraper | Every SEC/state-registered adviser firm | Firm (Form ADV) | ~45,500 | Firm-level | AUM, employees, disciplinary flags |
Put plainly: CFP Board is the census, SEC IAPD is the regulator's firm register, NAPFA is the fee-only association with emails, and XYPN is the curated young fee-only segment with price lists. The four join on the CRD: this Actor emits secIndividualCrd and secFirmCrd precisely so you can hop between them without name-matching. Prospecting the next generation of independent RIAs? Start here — it is the smallest, cheapest, highest-signal list of the four.
FAQ
Does this need an account, login or API key? No. The XYPN directory API is public JSON. Nothing is collected from behind any authentication.
How many advisors can I get? All of them — 1,233 on 2026-08-15, a full enumeration verified against the API's own total, not a capped sample.
Can I get emails or phone numbers?
No, and no XYPN export can — the source publishes neither. Use websiteUrl (83.7%) with an email-finder Actor, or the NAPFA sibling for direct emails.
Are these really all fee-only fiduciaries?
XYPN membership requires a fee-for-service model, the fiduciary oath and the CFP® marks; every row measured carries CFP® in designations[]. The published fee schedule on 91.6% of rows is the receipt.
Why did my California run include a Denver advisor?
Because the state filter means serves California (XYPN is virtual-first). Their home office is in state/city; their reach is statesServed[]. Filter the export on state === "CA" if you want headquarters only — that is 167 of the 379.
Two runs — will I get duplicates?
Within a run, never (0 measured on the full walk, deduped on slug before billing). Across runs, yes — dedup on slug after export.
Will a run ever succeed with zero rows? No. Zero rows throws with the filters in play. There is no legitimate empty result.
Can I schedule it?
Yes — the Schedules tab. The whole directory is $4.93, so a monthly full run + slug diff is the cheapest new-member tracker in the segment.
Changelog
| Version | Date | Change |
|---|---|---|
| 0.1 | 2026-08-15 | First release. Full 1,233-row enumeration verified (0 dupes); shuffle-pinning cookie walk; state (51) and niche (128) drop-downs read from the live directory with measured counts; SEC CRD extraction incl. malformed-URL repair; field fill measured on the whole directory. |
Last verified against the live source: 2026-08-15 — 1,233 advisors, full walk clean, vocabularies re-read, zero-edit run green.
Legal and fair use
This Actor exports public professional-directory information that XY Planning Network publishes so consumers can find and vet an advisor. It reads a public JSON endpoint; it does not log in, does not solve CAPTCHAs, and collects nothing behind authentication. Rows describe identifiable professionals in their business capacity. You are responsible for complying with XYPN's Terms of Use and with CAN-SPAM, TCPA, GDPR/CCPA and applicable privacy law when you contact them or store their data. CFP® and CERTIFIED FINANCIAL PLANNER™ are certification marks of CFP Board. This Actor is not affiliated with or endorsed by XY Planning Network.
Support
Found a missing field or want a new filter? Open an issue on the Issues tab — requests against fields XYPN already publishes are usually quick. If this Actor saved you time, a rating helps other buyers find it.
Keywords: XY Planning Network scraper · XYPN advisor directory · fee-only financial advisor list · flat fee financial advisor leads · advice-only planner list · virtual financial advisor directory · CFP advisor leads · financial planner fee comparison data · RIA lead list · wealthtech sales leads · advisor recruiting data · RIA M&A targets · financial advisor niches · equity compensation advisor · FIRE financial planner · SEC IAPD CRD lookup · fee-only fiduciary directory export · financial advisor database · subscription financial planning firms · XYPN member list