Pre-registration
CTP 2026-03: a voter-file text-to-web survey of Oklahoma, as pre-registered
Posted Saturday, Oct. 24, 2026, before the first text message was sent. Every analytic choice below is fixed in advance so that none can be made, or appear to be made, in response to what the data show. This page is reproduced unchanged with the results; any deviation is added to the log at the bottom with a timestamp, never edited into the text.
- Mode
- Text invitation, web survey
- Frame
- L2 Oklahoma voter file
- Statewide sample
- 40,000 invited
- Target
- 800 completes (cap 1,200)
- Field dates
- Oct. 24–29, 2026
We texted 40,000 randomly selected Oklahoma registered voters a link to a 5-minute survey. Because every name came from the state voter file, we know the party, age, gender and county of everyone we texted, not just of those who answer, so we can correct for who responds. The questions, the dates, the rules for who counts and how the results are weighted were all fixed on this page before the first text went out. We do not look at results until texting ends, and we publish everything, including what went wrong. After the election we grade every number here against the certified count.
What this poll is
CTP 2026-03 is a text-to-web survey of a random sample of Oklahoma registered voters drawn from the L2 voter file. It is our first probability-sample poll: every person invited was selected at random from a defined list, so we know the party registration, age, gender, county and turnout history of everyone we invite, not just of those who answer, and we can measure and correct non-response directly. It covers eight ballot items, four “why” questions, two short split-sample modules, two questions on the proposed Inola smelter and one open-ended question, in about 25 taps and 5 to 6 minutes.
CTP 2026-01 and 2026-02 were small opt-in panel surveys. The governor, Stitt-approval and Trump-approval questions keep identical wording so the three can be shown as a trend, with the change in method labeled on the chart.
Population, frame and sample
- Population
- Adults registered to vote in Oklahoma with a status of Active in the L2 voter file (file delivered Oct. 23–24, 2026).
- Sample frame
- Active Oklahoma registrants in the L2 file with a cell phone number at L2's highest match confidence (code 1), one voter per household. Voters without a matched cell cannot be reached by this survey. L2 drew the sample; we requested that no voting-frequency or modeled filter be applied, and the delivered file has no such filter (turnout scores run the full range from 0 to 8). An earlier file delivered Oct. 23 did carry a frequent-voter filter; we rejected it and did not text anyone from it.
- What the frame looks like
- Of the 40,000 statewide records: party registration Republican 59.7%, Democrat 26.8%, no party 12.9%, Libertarian 0.6%; women 51.7%, men 46.7%, not recorded 1.5%; age 18–34 7.1%, 35–49 24.8%, 50–64 29.9%, 65 and older 38.1%; Oklahoma City metro 38.4%, Tulsa metro 28.1%, rest of state 33.5%; 5th Congressional District 23.0%. 36.3% are recorded as voting in the Aug. 25, 2026 runoff. 253 records (0.6%) have no vote in the 2020, 2022 or 2024 general election, including 140 who registered in 2025 or 2026. The frame is older than Oklahoma's registered electorate (7% under 35), so age is weighted to an outside benchmark, not to the frame; see Weighting.
- Samples
- Three simple random samples drawn by L2. Statewide: 40,000 records, split at random into four batches of 10,000 texted on consecutive days. 5th District supplement: about 10,000 records in CD-5 excluding anyone in the statewide sample, requested Oct. 24 and texted after the statewide batches if it arrives before the window closes; if it does not, CD-5 results come from the statewide respondents who live in the district (9,218 invited) and we say so. Runoff reserve: about 10,000 records of voters recorded as voting in the Aug. 25 Republican runoff, excluding the other two samples, held in reserve and texted only if, at the close of the second full day of fielding, fewer than 150 respondents in the main samples report voting for Gentner Drummond in that runoff. That decision rule is fixed here. CD-5 and runoff-voter results pool every sample, each record weighted by its own selection probability.
- Who is not covered
- Voters with no cell phone in the file, inactive registrants, second and later voters in a household, and—because the file was drawn in late October—anyone who registers after the file date. This is normal for voter-file polling and we state it in the limitations.
Field window and contact
- Opens
- With the first statewide batch, planned for Saturday, Oct. 24 or Sunday, Oct. 25, 2026, after a test send to two staff numbers. One batch of 10,000 is sent each day thereafter (the vendor's daily limit), so the fourth batch goes out three days after the first.
- Closes
- 11:59 p.m. Central on the day after the fourth statewide batch is sent (Wednesday, Oct. 28 if the first batch goes Saturday; Thursday, Oct. 29 if Sunday), or when 1,200 statewide completes are reached, whichever comes first. If the CD-5 supplement is texted, it gets the same 24 hours after its send and the window extends to cover it, by at most one day. If fewer than 500 statewide completes are obtained, we publish anyway and say so. No question, target or rule changes once the first text is sent.
- Contact
- One text per sampled voter, sent through RumbleUp from a registered 10-digit number between 10 a.m. and 8 p.m. Central. One reminder to voters who have not opened their link, 48 hours after the invitation, if the vendor's daily limit allows it without displacing a first invitation. STOP opt-outs are honored automatically. No incentive is offered, and no candidate, party or issue is named in the text.
- Invitation text
Cross Timbers Poll, a nonpartisan Oklahoma survey: 5 min, anonymous, results public. [unique link] Paid for by Cross Timbers Poll.
followed by the carrier-required opt-out line.- Reminder text
Cross Timbers Poll here. The Oklahoma election survey closes [day]. About 5 minutes, anonymous: [unique link] Paid for by Cross Timbers Poll.- Replies
- A voter who replies with a question gets a one-line answer pointing to this site and contact@crosstimberspoll.org. No one is argued with or re-invited.
Instrument
- Hosting
- The survey runs at survey.crosstimberspoll.org, on our own account, not the texting vendor's. The vendor sees who clicked, never what anyone answered.
- Links
- Every text carries a unique link whose token is a signed random code tied to the sampled record. There is no public link. A token accepts one set of answers; a second visit resumes or shows the thank-you page. The token carries no name, phone number or voter ID; the table that connects tokens to voters is kept offline and deleted at the close of fielding, before analysis.
- Flow
- One question per screen with a progress bar. Each screen saves when tapped, so a voter who stops partway counts for everything they answered. Ballot questions come first, before any issue question can prime them. Candidate order is randomized per respondent on every ballot question with “Undecided” always last; answer scales are not randomized. Half of respondents see Module A (schools) and half Module B (cost of living), assigned by a random draw when the link was created, before any text was sent. Voters who say they have already voted see past-tense ballot wording.
- Not asked
- Party registration, age, gender, county and district are not asked because they come from the voter file. Education and race are asked because they do not.
Monitoring during fielding
During the field period we watch operational counts live: texts delivered, links opened, starts, completes, screen-outs, drop-off by question, and time per survey. Those numbers decide nothing except whether the system is working.
Unweighted counts for the governor question, the direction-of-state question and the two approval questions are recorded on a fixed six-hour clock (midnight, 6 a.m., noon and 6 p.m. Central) and that log is published with the results. No weighted estimate, crosstab or conclusion is computed before the window closes, and nothing seen during fielding can change the stopping rules above: the survey closes on the clock or at the 1,200 cap, whichever comes first, and for no other reason.
Who counts, and quality rules
- Included
- A respondent is included if they answer Q1 “Yes” (registered in Oklahoma) and answer at least the governor question (Q3). Partial respondents count for every question they answered; the number answering is shown on every question. Completion status (full, partial, screened out) is reported with the counts removed for each reason below.
- Removed
- Q1 not “Yes”; a second set of answers on the same token (the first is kept); a full completion in under 90 seconds; identical answers on all five approval and support scales (Q13, Q14, the two module questions and Q18) combined with a total time under 3 minutes; and test tokens used by staff and the vendor, which are flagged in the database and never counted. Open-ended text is not used for inclusion decisions.
- Response rate
- Reported as AAPOR RR3: completes plus partials over texts delivered, with undeliverable numbers removed; plus the open rate and the completion rate among those who opened the link.
Weighting
- Method
- Raking of the statewide sample to five targets, weights trimmed at 5.0; the design effect is published.
- Party registration
- Republican, Democrat, independent (no party), Libertarian, to the Oklahoma State Election Board's most recent published registration statistics as of the close of fielding.
- Age, gender, region
- Age in four bands (18–34, 35–49, 50–64, 65+), gender, and region (Oklahoma City metro: Oklahoma, Cleveland, Canadian, Logan, McClain, Grady and Lincoln counties; Tulsa metro: Tulsa, Rogers, Wagoner, Creek, Osage, Okmulgee and Pawnee; rest of state), each as recorded in the voter file for the respondent. Targets are the distribution of all active Oklahoma registrants in the L2 file, which we have asked L2 (through our vendor) to supply as summary counts. If those counts are not received before the window closes, the fallback, fixed here, is the Census Bureau's 2024 Current Population Survey voting-and-registration estimates for Oklahoma registered citizens for age and gender, and the Election Board's county registration totals for region. We do not weight to the frame's own distribution, because the frame under-represents voters under 35.
- Recalled 2024 vote
- Trump 42.5%, Harris 20.5%, other 1.2%, did not vote 35.8% among current registrants, from certified results as used in CTP 2026-02; “not sure” and “prefer not to say” keep their sample share. A second weight without this target is computed and published beside the primary so readers can see what the choice does.
- Not weighted
- Education and race are not targets; their distributions are published against the 2024 American Community Survey for Oklahoma. Interest in politics is not asked and nothing attitudinal is weighted.
- CD-5
- Raked separately to the same variables within the district, with the district's own party, age, gender and county targets from the same sources.
Likely voters
A registered voter is a likely voter if (a) they say they have already voted, or (b) they say they will definitely or probably vote and the file records a vote in the 2022 or 2024 general election, or (c) they say they will definitely vote and registered after November 2024 per the file. Both registered-voter and likely-voter results are published; the likely-voter figure is the headline for ballot questions.
Error
Each estimate carries a 95% margin of sampling error adjusted for the design effect of the weights. The margin covers sampling only; non-response and coverage are described above and in the limitations, and the responders-versus-frame table is the reader's check on them.
What is reported
- Every question's topline among registered and likely voters, with the number answering.
- Crosstabs by party registration, gender, age, region, education, 2024 vote, August runoff vote and governor vote, for every group with at least 100 respondents, each with its own margin.
- The governor vote among self-reported Drummond runoff voters, with its own margin whatever its size, because it is the question of most public interest; the file's runoff-turnout flag is published beside the self-report as a check on recall.
- Module A and Module B on their own bases; the Inola questions on the base of those who reached that page; the open-ended answers as de-identified quotes and a word count by party.
- Response rate, open rate, drop-off curve, time distribution, counts removed under each quality rule, the six-hour unweighted log, and the responders-versus-frame comparison.
- Both weights (with and without recalled 2024 vote), the design effect, and the governor, Stitt and Trump trend across all three polls with the method change labeled.
- A respondent-level file with answers, weights, region and the likely-voter flag, and no name, phone, voter ID, county or timestamp, available to journalists and researchers on request.
- No result is withheld because of what it shows.
Release and accountability
Results are released over three days after the window closes: the governor and the rest of the ballot first; then direction of the state, issues, approval and the two modules; then Inola and voters in their own words. The full data file and this page are public from the first day. After Nov. 3 we publish each ballot estimate against the certified result, with the signed error, and keep that page up.
Questionnaire
Exact wording and options, in the order shown. Ballot questions are shown in past tense to voters who say they have already voted; candidate order is randomized per respondent with Undecided last.
Screen
- Yes
- No
- Not sure
No or Not sure ends the survey with thanks.
- I have already voted
- Definitely will vote
- Probably will vote
- 50-50
- Probably will not
- Definitely will not
Ballot
- Mike Mazzei (Republican)
- Cyndi Munson (Democrat)
- Orlando Lynn Bush (Independent)
- Robert E. Brooks Sr. (Independent)
- Jerry Griffin (Independent)
- Undecided
Same wording as CTP 2026-01 and 2026-02.
- Mazzei
- Munson
- One of the independents
- Still undecided
Shown only to Undecided on Q3.
- Kevin Hern (Republican)
- N’Kiyla “Jasmine” Thomas (Democrat)
- Sevier White (Libertarian)
- Ron Meinhardt (Independent)
- Curtis Stinnett (Independent)
- Undecided
- Jon Echols (Republican)
- Nick Coffey (Democrat)
- Undecided
- Robert Franklin (Republican)
- Jennettie Marshall (Democrat)
- Undecided
- Brad Boles (Republican)
- Rhonda Eastman (Democrat)
- Undecided
- Yes
- No
- Undecided
The official ballot title is shown as a tappable note. No arguments for or against.
- Yes
- No
- Undecided
The official ballot title is shown as a tappable note.
- Stephanie Bice (Republican)
- Jena Nelson (Democrat)
- Robert Henri (Independent)
- Austin Nieves (Independent)
- Undecided
5th District voters only, by voter-file district.
Why
- Right direction
- Wrong track
- Not sure
- Cost of living
- Property taxes
- Public schools
- Health care
- Immigration
- Jobs and the economy
- Crime and public safety
- Abortion
- Corruption in government
- Something else
One choice; order randomized except “Something else” last.
- The candidate’s record and experience
- The candidate’s party
- A specific issue
- Opposition to the other candidate
- Haven’t decided
Shown to everyone who picked a candidate or lean.
- Strongly approve
- Somewhat approve
- Somewhat disapprove
- Strongly disapprove
- Not sure
- Same scale
Split-sample module (random half each)
- Same approval scale
- Strongly support
- Somewhat support
- Somewhat oppose
- Strongly oppose
- Not sure
- Better
- About the same
- Worse
- Not sure
- Groceries
- Housing or rent
- Electricity and utilities
- Property taxes
- Health care
- Gas
- None of these
About you
- Donald Trump
- Kamala Harris
- Someone else
- I did not vote
- Prefer not to say
- Gentner Drummond
- Mike Mazzei
- Did not vote in the runoff
- Not sure
Asked after the ballot so it cannot prime the governor vote.
- High school or less
- Some college or associate degree
- Bachelor’s degree
- Graduate or professional degree
- White
- Black or African American
- Hispanic or Latino
- American Indian or Alaska Native
- Asian
- Other
Inola
- Strongly support
- Somewhat support
- Somewhat oppose
- Strongly oppose
- Haven’t heard enough to say
- Jobs and the economy
- U.S. aluminum supply
- Foreign ownership
- Pollution
- Electric rates
- Tax breaks for the company
- Something else
Shown to everyone who gave a view on Q18; order randomized except last.
In your words
Open text, optional, 200 characters.
Funding and independence
Cross Timbers Poll LLC is registered in Oklahoma and is funded by members who are private citizens with no campaign, party or committee role. It accepts no money from candidates, campaigns, parties, political committees or outside donors, and no one outside the project has any role in choosing questions, conducting surveys, or deciding what is published. Our texting vendor (RumbleUp) and data vendor (L2) are paid suppliers with no role in the questions or the analysis, and neither sees any answers. No one is shown results before they are public. We meet every disclosure element of the AAPOR Transparency Initiative.
Log
Additions only, with timestamps. Nothing above is edited after posting.
- Oct. 24, 2026, 4:00 p.m. Central — Posted. First statewide batch of 10,000 loaded to the vendor; not yet sent.
- Oct. 24, 2026, 5:15 p.m. Central — Plain-language summary added at the top and two explanatory sentences shortened; no rule, date or target changed. Still before the first text.
- Oct. 27, 2026, 9:38 p.m. Central — Added analysis (not pre-registered). Logged during fielding, before close and before any weighted results. The headline statewide results are unchanged: statewide sample only, as pre-registered. Beside them we will also publish a statewide estimate pooling all three samples, each record weighted by its selection probability, then raked to the same targets with the same trim, with its own margin of error. If L2 cannot supply the universe counts this requires, it will not be published and we will say so.
- Oct. 28, 2026, 12:18 a.m. Central — Change to the data-file release. The text above says the full data file is public from the first day. Instead, the file is published in parts, alongside the results it supports: Day 1 (Thu., Oct. 29) posts the ballot questions (Q1–Q9), demographics (Q15–Q17), file variables and weights; Day 2 (Fri., Oct. 30) adds Q10–Q14 and Modules A and B; Day 3 (Mon., Nov. 2) adds Q18–Q20 and completes the file. Every published number can be checked against the file on the day it is published, and the complete file is public before Election Day. This entry was posted before the field window closed and before any weighted estimate was computed. No question, target, weight or analysis rule is changed.
- Oct. 28, 2026, 11:35 p.m. Central — Reminders. The pre-registration allows one reminder to non-openers 48 hours after the invitation, if the vendor's daily limit allows it without displacing a first invitation. Vendor throughput and carrier limits did not. Reminders were sent to about half of batch 1 on Oct. 26 and to all of batch 3 on Oct. 28; batch 2, the rest of batch 1, batch 4 and the two supplements received no reminder. All first invitations were sent, with undelivered ones re-sent by hand. No other rule is changed.
- Oct. 29, 2026, 12:35 a.m. Central — Close. Field window closed 11:59 p.m. Oct. 28 as scheduled. One survey started after close is excluded. 1,019 respondents included after the pre-registered exclusions (596 statewide, 172 5th District supplement, 251 runoff reserve); all matched the voter file.
- Oct. 29, 2026, 9:50 a.m. Central — Weighting: two targets as written could not be met. Age. Respondents 18–34 are 3% of the statewide sample against a 23.6% target; the cell cannot be raked within the 5.0 trim. For raking, 18–34 and 35–49 are combined (target 46.8%). The four-band distribution is published unweighted. Recalled 2024 vote. The pre-registered target counted 2024 non-voters at 35.8% of registrants. The frame was drawn with a vote-history filter, so non-voters are 2% of respondents, and raking to that target does not converge. The target is instead applied as the certified 2024 result among voters (Trump 66.2, Harris 31.9, other 1.9) to respondents whose voter-file record shows a 2024 vote, with file non-voters kept at sample share. This converges (design effect 1.95). It is the estimate, as the pre-registration intended. The second weight the pre-registration required, without recalled vote, is published in full beside it, with both weights’ party and recalled-vote distributions. Party targets use the Election Board’s Sept. 30 report; age, gender and region targets are L2’s counts received Oct. 28, before close.
- Oct. 29, 2026, 9:50 a.m. Central — Straightlining rule, applied as registered. The rule removed 65 respondents (39 statewide: 19 D, 14 R, 6 I), most of whom gave strongly negative answers on every scale. Because the removals were not balanced, we also publish the governor result with the 39 restored: on the registered-voter base the margin moves about four points toward Munson under the second weight and about five under the estimate.
- Oct. 29, 2026, 9:50 a.m. Central — Pooled tables: base weights corrected. An independent reviewer of the de-identified file found the selection-probability weights gave a voter drawn in the statewide sample about twice the weight of an identical voter drawn in a supplement. Corrected to the reciprocal of each record’s probability of inclusion in any sample. Pooled and 5th District estimates move by less than one point.
- Oct. 29, 2026, 1:30 p.m. Central — Correction. The 9:50 a.m. entry said the frame was drawn with a vote-history filter. It was not; that filter applied only to an earlier pull that was replaced before fielding. The frame is active registrants with a mobile number, one per household, across all levels of vote frequency; 91% voted in 2024. The pre-registered non-voter target (35.8%) describes all registrants, including inactive ones, which is why it cannot be met. No weight, target or result changes.
- Oct. 29, 2026, 3:48 p.m. Central — 5th District results. The pre-registration placed the full ballot, including the 5th District House race, in the first release. The district table was held from the morning release to verify its 2024 presidential target against certified results by district (Trump 57.98, Harris 39.75) and is now published. One deviation: the pre-registration said the district would be raked to its own party, age, gender and county targets. No district-level age or gender counts were available, so it is raked to party registration and county (Election Board, Jan. 15, 2026), with recalled 2024 vote among file-confirmed 2024 voters for the estimate, as statewide. The district weight in the data file is updated to that weight; the earlier file applied the recall target to all respondents who reported a vote, which moves the House margin by less than half a point.
- Oct. 30, 2026, 11:01 a.m. Central — Day 2. Q10–Q12, Modules A and B, crosstabs for every question, the methods appendix and data file part 2 are published. Part 2 also carries education and race (Q16–Q17), which the Oct. 28 entry placed in part 1. Corrections and departures: (1) Drummond-voter table. Day 1’s table of self-reported Drummond runoff voters included 61 registered Democrats and independents, who could not vote in the closed Republican runoff. Among registered Republicans only, the estimate shows Mazzei 52, Munson 33, and the alternative Munson 54, Mazzei 36; Day 1’s statement that Drummond voters break to Munson holds under the alternative only. The file’s runoff flag counts either party’s runoff; among the 204 Republicans the file shows voting on Aug. 25, 193 report a runoff vote, 8 say they did not and 3 are not sure. (2) Day 1’s alternative governor figure, Munson 55%, is 54.46% unrounded and should read 54%. (3) The response rate is 1.9% on the pre-registered basis (2.0% on invitations delivered); 59,999 invitation links were created and 59,684 sent; the 9:50 a.m. entry’s “2%” of 2024 non-voters is the self-reported share (5% by the file). (4) The six-hour log was not kept live as pre-registered; it is reconstructed after close from completion times. (5) The straightlining rule counted identical answers on every scale a respondent saw, five for Module A and three for Module B, so 43 of the 65 removals were in Module B. The 9:50 a.m. entry’s sensitivity (“about five” points under the estimate) did not apply the recalled-vote correction to the restored respondents; with it, the margin moves less than one point under the estimate and about three under the alternative. (6) The 100-respondent rule is applied to the respondents answering each question. (7) Q13–Q14 were published on Day 1, not Day 2 as the Oct. 28 entry said. (8) Independents are reported as a pooled table of all three samples (131 likely voters), using the pooled base weights from the Oct. 27 entry raked to the statewide targets with and without recalled vote; the second pooled weight is added to data file part 2. No target changes, and no weight used for a published Day 1 figure changes.
Questions: contact@crosstimberspoll.org. Poll identifier: CTP 2026-03.